TargetAddress
Zu dieser Seite ist Schattenpostfachmigration thematisch verwandt.
TargetAddress mit MailboxUser
Früher war das Feld offiziell nur für MailContacts und Mailuser nutzbar.
Sie können das Feld aber auch auf MailboxUser setzen und tatsächlich
leitet Exchange dann jede Mail an das Postfach an die Target Address
weiter.
Seit Exchange 2010 kann man nun aber sagen, dass die auch offiziell
erlaubt ist, da Microsoft selbst für die Migration in die Cloud diesen
Trick nutzt, um Mails an ein anderes Postfach zu leiten, während Inhalte
noch synchronisiert werden.
Das Feld TargetAddress gehört schon sehr lange zum Exchange Schema und kann theoretisch auf jedem Empfänger gesetzt werden. Allerdings sollten Sie wissen, wie sich ein Inhalt in diesem Feld auswirkt, ehe sie es außerhalb der normalen Verwendung einsetzen. Dann aber kann TargetAddress ihnen sehr gut helfen. Das erste mal habe ich diese besondere Verwendung vor vielen Jahren bei einer Migration mit den Quest Tools kennen gelernt und seit dem mehrfach bei Migrationen eingesetzt.
Der Normalgebrauch
Normalerweise sind im Active Directory alle Empfänger vorhanden, die Exchange als gültige Empfänger auch in der globalen Adressliste anzeigt. Die meisten Exchange Installationen pflegen im Active Directory nur die internen Empfänger wie:
- Aktive Postfächer
- Ressourcen Postfächer
- Verbundene Postfächer
- Verteiler und Abfragebasierte Verteiler
- Öffentliche Ordner
All diesen Empfängern ist gemeinsam, dass die Empfänger letztlich intern liegen und die Mail auf einem Server innerhalb ihres Active Directory landet. Aber das Active Directory und Exchange können noch mehr.

Neben den aktiven Empfängern kann das Active Directory und Exchange auch externe Ziele verwalten. Dazu zählen:
- Mailaktiviert Kontakte
- Mailaktivierte Benutzer
Diese Empfänger tauchen mit im Adressbuch von Outlook auf (GAL) aber die Postfächer selbst liegen außerhalb ihrer Exchange Organisation. Sie können so z.B. externe Empfänger, deren Postfach in einer anderen Firma oder einem Provider liegen, in ihre Adressbuch mit aufnehmen. Allerdings sollten sie abwägen, ob wirklich ALLE Nutzer in ihrer Exchange Organisation auch ihre privaten Kontakte sehen und nutzen sollen. Hier sind persönliche Kontakte im Postfach oder einem öffentlichen Ordner vielleicht besser.
Bei diesen beiden Objekte steht aber im Feld "TargetAddress" die externe Mailadresse, an die Exchange die Mails weitergibt.

Solche Kontakte sind auch erforderlich, wenn Sie z.B.: bei einem der anderen Empfänger eine Weiterleitung einrichten wollen. Klassischer Fall: Sie haben zwei Exchange Organisationen, die sie miteinander verbinden wollen. (Siehe auch MSXFAQ.DE - Verbinden von Organisationen und Verzeichnisabgleich)
Die klassische Weiterleitung an andere existierende Exchange Empfänger
Oft werden Kontakte aber auch zur Weiterleitung genutzt. Jedes Postfach hat unter den Zustelloptionen die Einstellung einer Weiterleitung auf dem Server.

Hier kann man natürlich eine Weiterleitung an einen anderen Empfänger in der gleichen Exchange Organisation aber auch auf einen Kontakt eintragen. Allerdings kann man hier keine Freitextadresse eintragen. Das Ziel muss im Active Directory existieren.
Weiterleiten mit TargetAddress und Postfächern
Sie können sich nun natürlich denken, was nun kommt:
Wie verhält sich Exchange, wenn Postfächer eine "TargetAddress" bekommen ?
Ich habe mir dazu die gängigen Empfängerobjekte vorgenommen und mit ADSIEDIT einfach das Feld TargetAddress" mit einer externen SMTP-Adresse gefüllt und geschaut was passiert.
Achtung:
Natürlich ist das alles nur bedingt durch die Exchange Commandlets und
Anleitungen abgedeckt und ich kann nicht garantieren, dass das Verhalten
nach dem nächsten Servicepack oder in der nächten Version weiterhin so
vorhanden ist.
Achtung:
Die TargetAddress muss zwingend ein Postfach außerhalb der Exchange
Organisation sein, da Exchange die Ziele nicht mehr intern gegen das
Adressbuch prüft, sondern immer extern versendet.
Achtung:
Wenn Sie ein Postfach mit "TargetAddress" von einer Speichergruppe in
eine andere Speichergruppe verschieben, dann entfernt Move-Mailbox die
Targetadress ohne Rückfrage oder Warnung. Da die Platzhalterpostfächer
aber keinen Inhalte haben, ist ein Verschieben eher im Bereich der
Migration ein Thema und dann dieses Verhalten sogar als Vorteil gewertet
werden.
"WINMAIL.DAT"
Bei Kontakten können Sie das Format der Mails per GUI einstellen. bei
Postfächern allerdings nicht. Hier kann es ratsam sein, das Feld
MapiRecipient auf False zu setzen, damit auch Weiterleitungen per
Postfach ohne WINMAIL.DAT im alten Zielsystem ankommen.
Wir bewegen und schon ein Stück abseits der ausgetretenen Pfade bisheriger Administrator. Das erkennen sie schon daran, dass es keine GUI gibt, um eben das Feld "TargetAddress" an solchen fremden Objekten zu pflegen oder anzuzeigen.
| Empfängerobjekt | Exchange Version | Normalzustand | Sichtbar in der GUI | sinnvoll möglich |
|---|---|---|---|---|
| User Mailbox | 4.0 und höher | leer, nicht genutzt | Nein | Möglich |
| LinkedMailbox | 5.5 und höher | leer, nicht genutzt | Nein | Möglich |
| Ressourcen Mailbox | 2007 und höher | leer, nicht genutzt | Nein | Möglich |
| Verteiler | 4.0 und höher | leer, nicht genutzt | Nein | Nein Da Exchange die Mail an die Mitglieder auffächert |
| Abfragebasierter Verteiler | 2003 und höher | leer, nicht genutzt | Nein | Nein Da Exchange die Mail an die Mitglieder auffächert. |
| Öffentlicher Ordner | 4.0 und höher | expf:<OrdnerGUID> | Nein | NEIN (2007) NDR wird erzeugt |
| Mailuser (AD-Benutzer mit Mailadresse) | 2000 und höher | Externe Adresse | Ja | Erforderlich, damit das Objekt korrekt konfiguriert ist. |
| Mailkontakt | 4.0 und höher | Externe Adresse | Ja | Erforderlich, damit das Objekt korrekt konfiguriert ist. |
Interessant sind also die drei Einträge bei den verschiedenen Postfächern, die tatsächlich möglich sind. Doch wozu können diese genutzt werden ?
Exchange 2007 und TargetAddress
Im Bezug auf Exchange 2007 hat die TargetAddress als "ExternalEmailAddress" niedergeschlagen. Auch hier kann man die Adresse bei Postfächern setzen. Aber man muss einige Aktionen beachten:
- Enable-Maibox
Hierbei löscht Exchange ohne Rückfrage oder Warnung eine bereits eingetragene TargetAddress. Allerdings macht eine TargetAddress bei einem Objekt, welches nicht Exchange Enabled ist, keinen Sinn. Allenfalls für Skriptentwickler, die vorher das Feld setzen würden.

RUS ist nicht immer aktiv
Wenn man mit "Enable-Mailbox" den Parameter "-PrimarySmtpAddress"
verwendet, dann bewirkt das, dass auch, dass "-EmailAddressPolicyEnabled"
nicht mehr aktiv ist. Ein nachfolgender Set-Mailbox -EmailAddressPolicyEnabled
$true" biegt das dann wieder hin.
- Set-Mailbox
Trägt man bei einer bestehenden Mailbox eine targetAddress ein, dann passt SET-MAILBOX dieses Postfach beim Aufruf an:

Die TargetAddress bleibt im System aber zusätzlich wird die Windows Mail-Adresse geändert UND die ProxyAdresse um die externe Adresse erweitert.
Hier passiert nicht. Allerdings warnt Exchange, wenn die TargetAddress nicht gültig ist.

- Move-Mailbox
Verschiebt man eine Mailbox, dann wird Targetaddress komplett gelöscht !!. Wenn man die Änderungen vorher wenigstens mit Set-Mailbox übernommen hat, dann bleibt die Adresse zumindest in den ProxyAddresses erhalten.
Verschiebt man eine Mailbox, dann wird die
TargetAddress komplett gelöscht !!.
eine Ideale Migrationsstrategie, wenn man mehrere Datenbanken hat, die
Platzhalterpostfächer in einer eigenen Datenbank hält und bei der
Migration dann die Postfächer verschiebt.
- Remove-Mailbox
Hierbei wird natürlich wieder alles entfernt. Auch die TargetAddress ist danach verschwunden.
Man kann also sagen, das Exchange 2007 durchaus die Umleitung mit "TargetAddress" unterstützt, aber bei der Verschiebung die Einstellungen verloren gehen. Auch gibt es keine Möglichkeit, die TargetAddress per GUI oder Exchange Commandlet zu setzen. man muss also per LDAP direkt die Änderungen durchführen. Schade eigentlich.
Details zur TargetAddress
Nun ist klar, dass wir in dem Feld "TargetAddress" auch bei Postfächern andere Adressen eintragen können. Aber ein paar Dinge gibt es dabei noch zu beachten:
- E-Mail-Typ
Das Feld TargetAddress muss eine für Exchange gültige und routingfähige Adresse beinhalten. Das muss keine SMTP-Adresse sein. Auch eine FAX-Adresse oder andere Formate sind möglich, solange Exchange einen Leitweg dazu kennt. Wichtig ist die Angabe der Adresstyps als Präfix vor der eigentlichen Mailadressen. Eine Internet Mailadresse muss also mit "SMTP:" eingeleitet werden - Eindeutigkeit
Ich habe immer wieder Warnungen oder Fehler bekommen, wenn ich mehreren Objekten die gleiche "TargetAddress" vergeben wollte. Das liegt aber weniger an der TargetAddress, sondern eher an der Überprüfung auf doppelt ProxyAddresses, die die Exchange Management Tools machen. Vermeiden Sie daher besser, dass mehrere Objekte identische Adressen erhalten - Extern und Intern
Dann bleibt noch die Frage, wie sich Exchange verhält, wenn die angegeben Zieldresse schon intern vergeben ist oder Extern ist. Exchange kennt anhand seiner Empfängerrichtlinien (2003) bzw. "Accepted Domains" (2007) die SMTP-Domänen, für die Exchange zuständig ist. Nutzen wir aber das Feld "targetAddress", dann wird die Mail IMMER nach extern versendet, selbst wenn es intern einen Empfänger mit der Zieladresse als ProxyAdresse gibt.!
Gerade der letzte Punkt kann natürlich Exchange Administratoren zum Wahnsinn treiben, wenn die Mail an einen Empfänger über eine Targetadresse weitergeleitet werden soll, aber die Mail immer über die Connectoren "nach außen" geht, statt Sie lokal zuzustellen. Das ist aber für eine andere Konfiguration von Vorteil: Wenn zwei Exchange Organisationen den gleichen Adressraum nutzen, ist diese Funktion wichtig, damit Mails auch die eigene Exchange Organisation verlassen können, auch wenn die Zieladresse eigentlich in meiner autoritativen Domain liegen. Allerdings sollten Sie über einen entsprechenden SMTP-Connector den Mails den Weg zur anderen Organisation weisen, nicht dass die Mails per DNS Richtung Internet direkt wieder bei ihnen zurückkommen.
Im Active Directory Schema können Sie gut die Definition des Felds auslesen.

Der Inhalt ist per Default im globalen Katalog und wird sogar indexiert. Das sind erforderliche Voraussetzungen, dass alle Exchange Server in der Organisation die Daten schnell erhalten.
Migration und Koexistenz
Die Option, die Daten eines Postfachs an eine andere "externe" Adresse weiterzuleiten ist eine sehr interessante Funktion speziell für die Migration von Postfächern zwischen Firmen. Wenn Sie zwei Exchange Organisationen betreiben, dann können Sie diese über Connectoren und einen Verzeichnisabgleich (Siehe Verbinden von Organisationen und Verzeichnisabgleich) natürlich verbinden. Die Postfächer auf der einen Seite tauchen in der anderen Organisation als Kontakte auf. Aber wenn nun im zweiten Schritt eine Migration ansteht, dann müssen sie erst wieder die Kontakte und Benutzer mit Postfächern konvertieren. Das ist nicht wirklich sinnvoll.
Wenn Sie daher planen, dass aus einer Koexistenz eine Migration werden soll, dann können Sie anstelle von Kontakten gleich deaktiviere AD-Benutzer mit einer Mailadresse erstellen oder sogar gleich ein Postfach mit einer Weiterleitung über Targetadressen.

Der Vorteil besteht darin, dass bei der Migration nicht erst der Zielkontakt gelöscht und durch ein Postfach ersetzt werden muss, welches dann erst die Daten aufnehmen kann und dann in der Quelle das Postfach durch einen Kontakt ersetzt werden muss. Das ist sehr viel "Unruhe" bei der Migration. Existieren jedoch auf beiden Seiten schon die Postfächer, dann kann man sogar schon vorher z.B. alle Mails älter als 6 Monate in das Ziel kopieren und bei der Umschaltung dann mit viel weniger Datenmengen hantieren.
Allerdings muss man natürlich aufpassen, dass bei einer Teilweisen Migration die Benutzer auf der einen Seite nicht mit dem alten Postfach über Stellvertreterfunktionen weiter arbeiten. Ein guter Projektplan ist zwingend erforderlich.
Unterstützung durch
Net at
Work:
Ich kann ihnen hier nur anbieten, dass wie sie bei solchen "Cross-Organisation"
Migrationen unterstützen, damit die Ausfallzeiten minimal sind. Übrigens
eignet sich dieses Verfahren mit Postfächer auch für die Migration von
anderen Mailsystemen.
Target Address und Autodiscover
Passend zur Migration und Weiterleitung wirken die Einträge im Feld "TargetAddress" sich auch bei Autodiscover aus. Wenn eine Mail nicht in das Postfach zugestellt wird, dann macht es auch keinen Sinn, wenn sich Outlook mit diesem Postfach verbindet. Ein Client, der einen Exchange Server in dieser Organisation per Autodiscover fragt, bekommt einen Redirect auf die Targetadresse und versucht sich dann mit einem Autodiscoverdienst dieser Domäne der Targetadresse zu verbinden.
So ist es einfach möglich, ein Postfach von einer Exchange Organisation in eine andere Organisation zu verschieben und zumindest Outlook 2007/2010 automatisch umzuleiten.
- Autodiscover Client Querying for Autodiscover
Servers
http://msdn.microsoft.com/en-us/library/ee160402(v=exchg.80).aspx - How to Configure the Autodiscover Service for Cross
Forest Moves
http://technet.microsoft.com/en-us/library/bb201665(EXCHG.80).aspx - Configuration tips and common troubleshooting steps
for multiple forest deployment of Autodiscover service
http://blogs.technet.com/b/exchange/archive/2008/02/13/3404883.aspx - Autodiscover using Targetaddress
http://blogs.technet.com/b/mhass/archive/2010/06/16/autodiscover-using-targetaddress.aspx
Target Address und "Autoritative Domains
Eine Besonderheit gibt es zu beachten, wenn ihre Exchange Organisation z.B.für "domain.tld" autoritativ zuständig ist und die Mailadresse in "TargetAddress" auch die Forma "username@domain.tld" hat. Je nach Exchange Version wird die Mail dann über den nächsten SMTP-Connector nach aussen transportiert oder nicht
- E2K & E2K3 Mail wird weiter geleitet
d.h. die Mail ist nicht unzustellbar sondern verlässt die Exchange Organisation. Sie sollten hier also sicherstellen, dass ein geeigneter Connector die Mails auch wirklic ans Ziel bringt und nicht per MX-Record eine Schleife passiert - Ex5.5, E2K7, & E2K10 Mail wird nicht weiter geleitet
Hier landet die Mail in einem NDR.
Insofern sollten Sie bei TargetAddress auf der sicheren Seite sein und eindeutige Routingdomains verwenden.
Anlage: Testergebnisse
Folgender Abschnitt fasst die Ergebnisse meiner Tests mit dem Feld "TargetAddress" zusammen. Teilweise ist hier gut zu erkennen, dass eine Änderung von Feldern an den Exchange Verwaltungstools vorbei durchaus auch unerwünschte Effekte haben kann
- Öffentliche Ordner (2007 SP1)
Der Versuch eine Mail an einen "mailaktivierten" öffentlichen Ordner über einen manuellen Eintrag in "TargetAddress" umzuleiten hat Exchange 2007 mit einer Unzustellbarkeit quittiert:

- Abfragebasierte Verteiler (2003)
Losgelöst von der Aussage, dass eine targetAddress bei einem Verteiler nicht sinnvoll ist, da die Mitglieder schon früher aufgefächert werden, habe ich mit Exchange 2003 ein seltsames Verhalten gesehen. Die manuell per ADSIEDIT addierte targetAddress ist nach einigen Minuten in den ProxyAddresses aufgetaucht. Allerdings hat der RUS dabei anscheinend die Adressen als Primär addiert.

Es ist also durchaus ein Restrisiko vorhanden, wenn Sie mit ADSIEDIT oder anderen Skripten direkt für Exchange relevante Felder verändern.
ForwardingSmtpAddress bzw. msexchgenericforwardingaddress
Seit Exchange 2010 gibt es aber noch ein weiteres Feld, welches in der Hilfe nur mit "The ForwardingSmtpAddress parameter specifies a forwarding SMTP address." beschrieben wird. Sie können es mit "Set-Mailbox" einfach setzen und wieder entfernen.
[PS] C:\>Set-Mailbox mailboxuser -ForwardingSmtpAddress test@msxfaq.test [PS] C:\>Get-Mailbox mailboxuser | fl *forw*,name DeliverToMailboxAndForward : False ForwardingAddress : ForwardingSmtpAddress : smtp:test@msxfaq.test Name : mailboxuser [PS] C:\>Set-Mailbox mailboxuser -ForwardingSmtpAddress $null
Wenn ich mit meinen Diagnosetool die Änderungen protokollieren lasse, dann sehe ich auch, dass das Commandlet genau ein Feld bei dem Objekt ändert.
path : LDAP://CN=mailboxuser,OU=msxfaq,DC=E2010,DC=local
adspath : {LDAP://CN=mailboxuser,OU=msxfaq,DC=E2010,DC=local}
distinguishedname : {CN=mailboxuser,OU=msxfaq,DC=E2010,DC=local}
action : Modify
field : msexchgenericforwardingaddress
value : {smtp:test@test.de}
Bislang habe ich aber noch nicht ermittelt, welche weiteren Auswirkungen dieses Feld hat. Im Schema ist es natürlich definiert.

Interessanterweise wird es auch "kopiert", wenn ein Benutzer kopiert wird. Es ist erstmals mit dem Schemaupdate von Exchange 2010 SP1 mit gekommen. Ich gespannt, für welchen Sonderfall dieses neue Feld vorgesehen ist.
Weitere Links
- MiniSync
- RUSMon
- CheckExObjects
- Exchange RUS
- LDAP 5.5
- Verbinden von Organisationen
- Verzeichnisabgleich
- Weiterleitungen
- RTFMAIL und WINMAIL.DAT
- Fun with changing E-Mail Addresses
http://blogs.technet.com/b/exchange/archive/2005/01/10/350132.aspx - ms-Exch-Target-Address Attribute
http://msdn.microsoft.com/en-us/library/ms983863(EXCHG.65).aspx
http://msdn.microsoft.com/en-us/library/aa581320(EXCHG.80).aspx - MSDN TargetAddress Property
http://msdn.microsoft.com/en-us/library/Aa487600 - How to forward mails using “TargetAddress” attribute with
Creating Simple Contact In Exchange
http://smtp25.blogspot.com/2007/06/how-to-forward-mails-using.html - TargetAddress Property
http://msdn.microsoft.com/en-us/library/aa487600(EXCHG.65).aspx - Autodiscover using TargetAddress
http://blogs.technet.com/b/mhass/archive/2010/06/16/autodiscover-using-targetaddress.aspx
Info, dass auch eine Mailbox eine "TargetAddress" haben darf - QuestKB: SOL21995 After an unswitched target mailbox was moved,
mail redirection stops working
https://support.quest.com/Search/SolutionDetail.aspx?id=SOL21995&category=Solutions&SKB=1
Details, welche Properties ein Exchange Move entfernt - SOL14915 - How does the Mailbox redirection work in Quest
Migration Manager for Exchange?
https://support.quest.com/SUPPORT/index?page=solution&id=SOL14915










