Tools DumpConnector

Script zur Dokumentation der aktuell konfigurierten Connectoren mit den Adressräumen und Endpunkten

Alle Skripte sind Muster ohne jede Gewährleistung oder Funktionsgarantie. für Schäden bin ich nicht verantwortlich. Achten Sie auf Zeilenumbrüche bei der Übernahme.

Das Skript funktioniert nur korrekt, wenn das ausführende Benutzer zumindest alle Connectoren in allen administrativen Gruppen "lesen" darf. Werden administrative Gruppen durch Berechtigungen verborgen, dann sind die Ergebnisse nur bedingt aussagekräftig.

Exchange verbindet Standorte über Connectoren, z.B.: RG-Connector, SMTP-RG oder X.400. Zudem nutzt es Connectoren zu Fax aber auch SMS, cc:Mail, und Notes. Zudem sorgt der Internet Mail Connector für die Verbindung zum Internet. Ergo kann eine Exchange Konfiguration schon mal etwas "umfangreicher" werden. Nun wissen wir alle, dass der Exchange System Manager bei größeren Firmen auch administrative Gruppen und Routing Gruppen anzeigt und damit die Information über Connectoren sehr tief verschachtelt sind. Zudem sind die Einstellungen dann wieder in ein Eigenschaften auf verschiedenen Karteikarten hinterlegt. Schlechte Aussichten für einen schnellen Überblick oder gar eine Dokumentation eines Ist-Stands.

Genau dem hilf das Script "DumpConnector" ab, indem es die Konfiguration aus dem Active Directory ausliest und als XML-Datei abspeichert und z.B. mit dem Internet Explorer auch anzeigen kann. Folgende Punkte leistet DumpConnector.

  • Ausgabe aller Connectoren
    Ausgabe von Quell-RG, Ziel-RG, Adressraum und Kosten
  • Routinggruppen
    Ausgabe aller Routinggruppe und der Anzahl der von dort ausgehenden und ankommenden Connectoren.  Die Zahlen sollten in den meisten Fällen übereinstimmen
  • Missing RG-Connectoren
    Normalerweise sind Routinggruppen immer in beide Richtungen konfiguriert. Aber darauf muss der Administrator schon selbst achten und allzu oft ist dies unbemerkt nicht der Fall.

Weitere Auswertungen sind direkt mit der XML-Datei und z.B. Excel möglich.

Connectoren und das AD

Aber zuerst mal die Frage, was ich denn mit dem Script eigentlich auslesen kann. Die Konfiguration der Connectoren steht in der Konfigurationspartition des Active Directory und zum Auslesen benötigen Sie daher zumindest "READ"-Rechte auf die Exchange Organisation. Die Konfiguration der Connectoren befindet sich in der jeweiligen Routinggruppe:

Achten Sie daran, dass es nicht die Einträge in Grün direkt unter Organisation in Connections sind. Diese Einträge haben zwar auch etwas mit den Connectoren zu tun, aber interessieren hier nicht für die Ausgabe. Bei jedem Connector ist unter anderem der msExchConnectorType und die routingList gepflegt, die für die Ausgabe interessant sein können. In den Feldern msExchSourceBridgeheadServersDN und msExchTargetBridgeheadServersDN stehen z.B. die virtuellen SMTP-Server mit ihrem DN. Wenn msExchSourceBridgeheadServersDN fehlt, dann ist jeder Server der Routinggruppe möglicher Sender.

Das Script sucht nun einfach nach den Connectoren in ihrer Organisation und gibt die interessanten Daten als XML-Datei aus. Dabei suche ich natürlich auch die passende Routinggruppe bei verbundenen Standorten, um eine brauchbare Ausgabe zu erreichen. In der XML-Datei stehen sogar etwas mehr Informationen, also mit dem Stylesheet letztlich angezeigt werden. Sehen Sie selbst:

Download und Einsatz

Dieses Skript ist kein öffentlicher Download
Informationen, warum diese Skripte nicht öffentlich sind, finden Sie auf nicht public.

Der Aufruf des Scripts erfolgt am besten in einer DOS-Box, damit die Ausgaben einfacher lesbar sind.

cscript DumpConnector.1.5.vbs

Sie sollten den Aufruf über CSCRIPT starten, da sie ansonsten jede Ausgabe auf dem Bildschirm als Meldungsfenster bestätigen müssen. Das VBScript gibt in der DOS-Box eine kurze Info über die aktuell verarbeiteten Connectoren ab. DIese Daten landen auch in einer Protokolldatei.

Natürlich "findet" das Script auch die Einträge obern auf der Organisation, aber ignoriert diese. Die Ausgabe selbst ist eine XML-Datei, die natürlich auch gleich ein passendes XSL-Stylesheet zur Anzeige im Internet Explorer mitbringt.

In meiner TestUmgebung ist die Anzahl der Connectoren natürlich überschaubar:

Es gibt genau einen SMTP-Connector und in der einzigen Routinggruppe sind natürlich auch keine Routinggroup Connectoren. Daher sind diese Felder hier irrtümlich rot gefärbt. In einer produktiven Umgebung sollte es natürlich keine Routinggruppe ohne Connectoren geben. Entsprechend ist es in einer größeren Umgebung natürlich sehr viel interessanter, auf einen Blick die Connectoren mit den Adressräumen zu sehen. Aufgrund der Besonderheiten für öffentliche Ordner wird bei Routinggruppenconnectoren auch der Status für die Referrals mit ausgegeben. Auch die Anzahl der Target und Sourcebridgehead-Server ist für Analysen interessant, da deinstallierte Server zwar entfallen aber neu installierte Server in allen Connectoren zu dieser Routinggruppe manuell nachgetragen werden müssen.

Ausgabe interpretieren

Als ich das erste mal das Script eingesetzt habe, sind mir "komische" Adressräumen untergekommen. So standen bei einigen Adressräumen z.B.: "LOCAL:SMTP:*,,1" , wo doch in der Konfiguration einfach nur "SMTP:*  mit Kosten 1" stand.

Nach kurzer Zeit war aber klar, dass es sich dabei um den "Scope" handelt, d.h. ob dieser Adressraum für die gesamte Organisation oder nur für die Routinggruppe zur Verfügung stehen soll. Hier die beiden Connectoren im Vergleich.

Sie können gut neben den unterschiedlichen Adressräumen unten den "Connectorbereich" erkennen, der für den Connector "SMTP-Test" auf die Routinggruppe beschränkt ist.

Interessant ist, dass der Exchange System Manager diese Einstellung des Scope nur für alle im Adressraum angegebenen Adressen anwendet. Es gibt aber einige Connectoren (z.B.: MRS), die den Scope pro Adresszeile setzen können und damit z.B. SMS:*  für die Organisation und "FAX:*" nur für die Routinggruppe freigeben. Solche "Besonderheiten" finden sich mit dem Skript natürlich schnell.

Weiterentwicklung

Das ausgeben von Connectoren ist natürlich einfach. Aber besser wäre ja noch die grafische Ausgabe z.B. mit Visio oder das aufzeigen von "was wäre wenn". Denn den Weg einer Mail muss man anhand der Leitwege aber auch der Kosten, Empfangsbeschränkungen etc. aufzeigen. da bleibt viel zu tun. Einiges davon ist aber z.B. auch über Spotlight oder EXMAP möglich, so dass diese Wunschliste sicher nicht sehr bald realisiert wird

  • Grafische Ausgabe
    Wäre es nicht einfach z.B.: per Visio und VBScript ein Connectorplan zu malen ? Allerdings bin ich noch nicht in die Tiefen von Visio eingestiegen.
  • Empfangsbeschränkungen
    Aktuell gebe ich nur die Connectoren aus. Grenzen auf Connectoren bezüglich der Größe, Zeitplan etc. werden nicht ausgegeben.
  • Status und Queue
    Auch fehlen im Moment alle Informationen zum "Status" einer Verbindung, d.h. ob diese vielleicht gerade "down" ist oder ob dort viele Nachrichten anstehen. So etwas können Sie aber auch mit MOM2005 überwachen.

Weitere Links