Exchange Offline Adressbuch anlegen

Diese Seite beschreibt die Hintergründe und den Prozess der Erzeugung des Offline Adressbuchs. Eine wichtige Information für mobile Anwender und Outlook im Cached Mode.

So generiert Exchange 2007 die Offline Adressbücher: E2K7:OABGen

Exchange 2016
Die Generierung ist wie bei Exchange 2007/20010/2013 aber wird durch einen anderen Prozess durchgeführt und entsprechend auch woanders konfiguriert. Hier ein Beispiel
New-SettingOverride `
   -Name ChangeOABGeneration `
   -Component MailboxAssistants `
   -Section OABGeneratorAssistant `
   -Parameters @("WorkCycle=04:00:00") `
   -Reason “Generate OAb Generation every 2 hours”

Eine der häufigsten Probleme ist das Offline Adressbuch von Exchange in Verbindung mit Outlook. Betreiben Sie Outlook auch unterwegs im Offline-Modus, dann möchten Sie auch unterwegs ihre Firmenadressbuch nutzen. Dazu muss der Exchange Server regelmäßig die gewünschten Adressbücher generieren und in einem Systemordner ablegen.

Adressbücher und Offlineadressbücher einrichten

Im Exchange System Manager können sie neben der "Globalen Standardadressliste" weitere Adresslisten anlegen. Diese können von den Anwendern zusätzlich genutzt werden. Damit diese auch offline zur Verfügung stehen, müssen diese aber eingerichtet werden. Exchange generiert automatisch eine Offline Adressbuch der "Globalen Standardadressliste". Den Zeitpunkt können Sie in den Eigenschaften dieser Adressliste konfigurieren.

Aber selbst wenn dies alles korrekt aussieht, kann es sein, dass das Offline Adressbuch nicht für die Anwender nutzbar ist. Damit stellt sich die Frage, wie Sie diesen Prozess besser analysieren können. Dies funktioniert z.B. mit der Analyse der Bildung selbst.

Diagnoseprotokoll aktivieren

Exchange ist sehr gesprächig, was Diagnoseausgaben betrifft, solange dies auch von Exchange gefordert wird. Daher ist der erste Schritt die entsprechenden Diagnosefunktionen in Exchange zu aktivieren. Im Exchange System Manager kann dabei auf den Eigenschaften des Servers das Diagnoseprotokoll aktiviert werden.

Durch die Einstellung auf "Maximum" werden später die einzelnen Schritte genau im Eventlog dokumentiert. Vergessen Sie aber nicht, diese Einstellung später wieder rückgängig zu machen.

OAB jetzt erstellen

Der nächste Schritt stößt Exchange an, ein Adressbuch zu erstellen. Dazu wird im Exchange System Manager die Erstellung angefordert:

Der Fortschritt der Adressbuchgenerierung ist im Eventlog sichtbar. Sie sollten folgende Logs sehen:

Wenn Sie die Beschreibung der Eventlogs nacheinander anzeigen, sehen Sie genau den Ablauf der Offline Adressbuch Generierung:

ID Beschreibung

9106

Offline Address List generation has been started.

9117

OALGen successfully opened a connection to the DS which will supply the current Address Lists.

9121

OALGen successfully loaded the hierarchy table für /. (\Global Address List)

9131

OALGen is attempting to open the Public Folder which stores Offline Address Lists.

9132

OALGen has successfully opened the Public Folder which stores the Offline Address Lists.

9133

OALGen is attempting to create or open the sub folder 'OAB Version 2' in the OAL Public Folder.

9134

OALGen successfully created or opened the sub folder 'OAB Version 2' in the OAL Public Folder.

9122

OALGen successfully removed any OAL-related public folders which are no longer needed. This normally occurs because an OAL is no longer being generated. No actual cleanup may have occurred, if all former OALs are still being generated.

9108

Offline Address List is being generated für \Global Address List.

9123

OALGen successfully generated templates files. (\Global Address List)

9118

OALGen successfully read all 7502 objects in the DS and wrote them to files on disk.

9119

OALGen successfully computed and wrote to disk the index für file ANRdex.oab. (\Global Address List)

9119

OALGen successfully computed and wrote to disk the index für file RDNdex.oab. (\Global Address List)

9120

OALGen successfully wrote file browse.oab to disk. (\Global Address List)

9131

OALGen is attempting to open the Public Folder which stores Offline Address Lists.

9132

OALGen has successfully opened the Public Folder which stores the Offline Address Lists.

9134

OALGen successfully created or opened the sub folder 'OAB Version 2' in the OAL Public Folder.

9135

OALGen successfully opened the public folder containing the previous version of this OAL. (\Global Address List)

9136

OALGen successfully opened the message containing the previous version of this OAL. (\Global Address List)

9137

OALGen successfully set the property view of the previous version of this OAL. (\Global Address List)

9138

OALGen successfully found the message containing the previous version of this OAL. (\Global Address List)

9111

OALGen is calling into emsabp32.dll to download the previous version of this OAL. (\Global Address List)

9112

OALGen has downloaded the previous version of this OAL successfully. Differences between the previous and the current version will be computed. (\Global Address List)

9139

OALGen will write the previous version of this OAL to temporary files in C:\WINNT\TEMP\.

9113

OALGen is comparing the previous and new version of the OAL to determine what changed since OALGen was last run. (\Global Address List)

9114

OALGen successfully compared the previous and new version of the OAL. OALGen will now generate the changes.oab file that clients will download für a differential download. (\Global Address List)

9115

OALGen successfully generated the changes.oab file that clients will download für a differential download. (\Global Address List)

9131

OALGen is attempting to open the Public Folder which stores Offline Address Lists.

9132

OALGen has successfully opened the Public Folder which stores the Offline Address Lists.

9133

OALGen is attempting to create or open the sub folder 'OAB Version 2' in the OAL Public Folder.

9134

OALGen successfully created or opened the sub folder 'OAB Version 2' in the OAL Public Folder.

9125

OALGen successfully generated and posted to a public folder the OAL für clients newer than Exchange 5.0. (\Global Address List)

9107

Offline Address List generation has finished.

Anhand des Eventlog können Sie genau nachvollziehen, wie ein erfolgreicher Durchlauf funktioniert. Und Sie können auch erkennen, wenn etwas nicht funktioniert.

Die einzelnen Dateien, die OAB anlegt, sind:

  • Browse.oab
    Diese Datei enthält den Typ (Postfach, Kontakt, Ordner etc.), den Anzeigename (display name) und einen Verweis auf die weiteren Informationen in der Details.oab.
  • Details.oab
    Enthält alle Details der Objekte mit Ausnahme des "Display Name"
  • Rdndex.oab
    Index für die Aufläsung der Relative Distinguished Names
  • Anrdex.oab
    Index für die Auflösung der Ambiguous Names.
  • Tmplts.oab
    Texte für Dialogboxen und andere pro OAB statische Informationen. Keine Informationen zu einzelnen Einträgen. Diese Datei wächst nicht.

Diese Dateien finden Sie später im öffentlichen Ordner als Teil einer Nachricht.

Kontrolle im ESM

Wie aus dem Eventlog hervor geht, wurden die generierten Adressbücher in einem öffentlichen Ordner abgelegt. Da liegt es nahe, über den Exchange System Manager einfach diesen Ordner zu analysieren. Wenn Sie sich die "öffentlichen Ordner" anschauen, sollten Sie in dem Ordner ein oder mehr Elemente mit einer Größe sehen.

Bei jeder neuen Erstellung der Offline Adressbücher kommen hier weitere Elemente hinzu. Dies liegt daran, dass Exchange nicht immer die komplette Adressliste erstellt, sondern die Änderungen seit dem letzten Update als eigenes Element ablegt. Lassen Sie einfach erneut das Adressbuch erstellen, dann wird die Anzahl der Objekte zunehmen. Dies ist ein klares Indiz dafür, dass die Adressbücher "wirklich" erstellt werden.

Sollten Sie aber weiterhin Fehler haben, dann könnte eine Neuerstellung der Systemordner der letzte Weg sein:

  • Q822444 HOW TO: Reset a Site Folder in Exchange Server 2003
  • Q275171 XADM: How to Reset System Folders on an Exchange 2000 Server
  • Q152960 XADM: Rebuilding the Site Folders in a Site

Kontrolle des Inhalts

Da stellt sich natürlich gleich die Frage, wie dieser Inhalt zu kontrollieren ist. Fakt ist, dass auch diese "Systemordner" nichts anderes als öffentliche Ordner sind, aber nicht in Outlook gesehen werden. Aber neben Outlook gibt es zwei weitere Wege, den Inhalt zu kontrollieren.

  • OWA
    Sie können mit Exchange 2000/2003 einfach durch den Zugriff mit einem Browser auf http://servername/public/NON_IPM_SUBTREE/ zugreifen und dann in der Struktur auf die Ordner zugreifen.
  • MDBVU32.EXE
    Mit diesem Hilfsprogramm können Sie mittels MAPI auf die Strukturen zugreifen und auch über diesen Weg die Inhalte betrachten. Siehe Tools: MDBVU32.

Die Ordner selbst sind als Systemordner zu sehen. Hier sehen Sie die Exchange 2000/2003-Struktur, bei der es eine Adressliste gibt. Die unterordner "OAB Version 2" enthält die eigentliche Adressliste im ANSI Format und wird von Outlook 97 bis Outlook XP genutzt. "OAB Version 3a" gibt es erst seit Exchange 2003 und enthält das Offline Addressbuch als UNICODE-Version. Diese wird von Outlook 2003 bevorzugt, wenn Sie vorhanden ist. Darunter sehen Sie einen Ordner, wie er für Exchange 4.x bis 5.5 in Gebrauch war und zur Kompatibilität weiter mitgeführt wird.

Wenn Sie weitere Offline Adresslisten anlegen, dann wird es natürlich weitere öffentliche Ordner geben. Damit ist aber noch nicht sicher, dass die Clients auch wirklich diesen Ordner nutzen.

Clientzugriff steuern

Auf den Eigenschaften des Postfachspeichers muss nämlich auch eingestellt sein, welches Offline Adressbuch die Anwender benutzen.

Normalerweise stimmt dieser Eintrag, aber gerade wenn Sie Probleme mit Adressbüchern haben, ist ein Kontrollblick angebracht. Da auch der Exchange Server manchmal "Client" ist und der OAB-Dienst ebenfalls, kann bei einem fehlenden Eintrag an dieser Stelle auch die OAB-Generierung fehlt schlagen.

Der zweite Aspekt betrifft die Replikation der öffentlichen Ordner. Auch das Offline Adressbuch sollte immer auf einem Server liegen, auf den der Client schnell zugreifen kann. Im Exchange System Manager sollten Sie die Eigenschaften des Ordners überprüfen und gegebenenfalls ein Replikat auf einen Server vor Ort legen.

Zudem sollten Sie in Outlook das Profil und die Einstellungen prüfen. In Outlook 2003 können Sie in den Übermittlungsoptionen ebenfalls vorgeben, welches Adressbuch Sie offline zur Verfügung haben möchten.


Klicken zum Maximieren

Wenn dies alles bei dem Client noch nicht zu einer Besserung führt, dann sollten Sie das MAPI-Profil auf dem Client  neu erstellen. Oftmals sind falsche Einträge auf dem Client die Ursache. Dieser Verdacht liegt besonders dann nahe, wenn nur wenige PCs betroffen sind.

Outlook Client Zugriff kontrollieren

Welches Offline Address Buch der Client wirklich nutzt, können Sie auch einfach in Outlook nachsehen. Sie müssen in Outlook einfach nur das Adressbuch anzeigen lassen und mit der rechten Maustaste im DropDown Feld klicken. Hinter den Eigenschaften verbergen Sich dann der DC oder Exchange Server.

Allerdings ist dies auch nur eine vereinfachte Ansicht. Sie können so erkennen, ob Outlook seine Daten korrekt aus dem Exchange Server oder Active Directory ausgelesen hat.

OAB mit Exchange 5.5

Exchange 2000/2003 legt das Offline Adressbuch genau wie Exchange 5.5 in einem öffentlichen Ordner ab. Allerdings hat sich seit Exchange 2000/2003 die Benennung der Ordner geändert. Bei Exchange 5.5 wurde der Name noch nach folgendem Schema gebildet:

EX:/o=orgname/ou=Sitename

Mit Exchange 5.5 gab es auch pro Site genau ein Offline Adressbuch. Seit Exchange 2000/2003 können Sie aber mehrere Offline Adressbücher anlegen, die dann auch in einem eigenen Ordner mit einer neuen Namenskonvention abgelegt werden. Der Name passt dann in etwas zum LDAP-Pfad, an dem die Adressliste definiert ist.

/o=orgname/cn/addrslist/cn=oabs/cn=Name des OAB

Sie können die beiden unterschiedlichen Namen auch im Exchange System Manager sehen.

Lassen Sie sich aber nicht dazu hinreißen, nun den anscheinend "alten Exchange 5.5"-Ordner zu löschen.

Achtung:
Die Ordner "EX:/o..." dürfen Sie nicht löschen. Normalerweise sind diese Ordner ein Relikt der Exchange 5.5 Zeit. Hier lagen früher die Offline Adressbücher. Aber auch mit Exchange 2000/2003 sind diese Ordner erforderlich, auch wenn es nirgends explizit steht. Exchange legt diese Ordner für jede neue Administrative Gruppe ebenfalls mit an.

Ich habe zwar noch keine weitergehenden Informationen, aber anscheinend darf der Ordner nicht gelöst werden, weil er vielleicht noch von älteren Outlook Versionen angesprochen wird. Das Bild zeigt eine Exchange 2003 Native Mode Umgebung. In einer Umgebung mit Exchange 5.5 Servern werden Sie unter dem Ordner "EX:/o=orgname/ou=Sitename" sogar noch unterordner mit Inhalten finden. Diese kann man meiner Erfahrung nach aber in einer native Mode Umgebung gefahrlos löschen.

OAB4

Mit Exchange 2003 SP2 kommt ein neues Offline Adressbuch, welches eine deutliche Performancesteigerung verspricht. Allerdings ist dazu auch der Einsatz von Outlook 2003 SP2 erforderlich, damit das neue OAB4 genutzt wird. Die Vorteile in Kürze:

  • Geringere Größe des OAB
    Genaueres ist mir nicht bekannt. Komprimiert war vorher auch schon, aber vermutlich wurde das Format verbessert. Anscheinend ist auch der Index nicht mehr im Downloadpaket enthalten.
  • DifferenzUpdates nutzen BinPatch
    Die Deltas enthalten anscheinend nicht mehr alle neuen und geänderten Objekte, sondern sind ein "binärer Patch", d.h. es werden nur noch Bytes getauscht. Wird bei einem Benutzer daher z.B. nur die Durchwahl geändert, wird auch nur noch die betroffenen Bytes geändert und nicht mehr der komplette Benutzer übertragen.
  • Anpassbare Eigenschaften und Indizes
  • Indexierung durch den Client basierend auf lokalen Einstellungen
    d.h. der Index wird nicht mehr mit herunter geladen. Das spart Platz aber viel mehr ist der Client damit nicht mehr von der Ländereinstellung des Servers abhängig
  • Bessere Diagnosefunktion
    Diese ganze Seite beschäftigt sich ja mit den Probleme und deren Behebung bei der Offline Adressbuch Erstellung. Scheinbar gibt es auch "Probleme" bei vielen Firmen, so dass hier eine bessere Möglichkeit der Fehlersuche angeraten ist

Probleme mit OABs

Aber weil das noch nicht alles ist, gibt es auch noch andere Punkte, die Sie bei der Nutzung von Offline Adressbüchern wissen sollten. Sie wissen bereits, dass der Server die Adressbücher jede Nacht errechnet und sowohl ein komplettes Adressbuch als auch bis zu 30 Differenzdateien ablegt. Normalerweise würde man nun erwarten, dass ein Client immer einfach die kleinere Differenzdatei herunter lädt. Aber es gibt Fälle, wo dies nicht passiert. Hier ein paar Besonderheiten rund um OAB:

  • Löschen einer Site/Anlegen einer Site
    Immer wenn Sie in ihrer Exchange Organisation eine Site löschen oder hinzufügen, dann wird das Offline Adressbuch umfangreich geändert. Neben den ganzen Postfächern, Kontakten und Ordnern verschwinden auch einige andere versteckte Empfänger (z.B.: der Informationsspeicher, die Systemaufsicht etc.). Leider hat das zur Folge dass alle Outlooks das Adressbuch komplett herunter laden.
  • Korrupte PTTABLE
    Outlook verwaltet intern die Adressbücher über einen Index. Nun kann es passieren, dass der Index nicht mehr gültig ist, z.B. wenn der mehrere Einträge am Ende im Adressbuch gelöscht werden und der Index nicht aktualisiert wird. Auch dann macht Outlook einen "Full Download".
  • Exchange 2003 DoS Schutz
    Zuletzt schützt sich Exchange 2003 gegen all zu viele gleichzeitige Adressbuchdownloads. Exchange 2003 lässt nur eine bestimmte Anzahl von Downloads gleichzeitig zu und blockiert die anderen. Natürlich werden die betroffenen Outlookbenutzer den Download einfach später noch mal versuchen aber die Fehlermeldung über den fehlgeschlagenen Download ist nicht zu vermeiden
  • Outlook Cached Mode( siehe auch Outlook 2003 Cached Mode)
    Wenn Sie Outlook 2003 mit Cache Mode verwenden, dann wird immer das Offline Adressbuch verwendet.

Sie sehen also, dass es manchmal gar nicht ihr Fehler ist, wenn Outlook Probleme mit dem Download des Offline Adressbuchs hat.

OABINTEG.EXE

ähnlich wie ISINTEG und andere Testprogramme gibt es auch ein Programm OABINTEG, welches sich anscheinend vom globalen Katalog die Liste der Empfänger holt, daraus ein Adressbuch erstellt und vergleicht, ob dieses auch auf dem lokalen PC übereinstimmt. Leider ist dieses Programm nicht weiter dokumentiert und nicht öffentliche zugänglich. Eventuell finden wir dieses Werkzeug zur Fehlersuche in einem der nächsten Support Tools oder Exchange Tools wieder.

Bis dahin müssen Sie einen Support Call bei PSS mit OAB-Problemen offen haben, damit ihnen dieses Programm zugesendet wird. Allerdings benötigen Sie es auch nur dann, wenn das Offline Adressbuch nicht generiert werden kann.

OAB und Outlook

Outlook nutzt im Outlook 2003 Cached Mode oder Offline Mode (Siehe auch unterwegs mit Outlook: Offline und Replikation) das Offline Adressbuch und muss es dazu natürlich herunterladen. Die folgenden Links enthalten weitergehende Informationen über die Steuerung und Verteilung der OABs auf dem Client

Weitere Links

Weitere Artikel finden Sie in der TechNet und Knowledgebase bei der Suche nach "OAB".