Find mail dubletter i Exchange

1. september 2016 | Exchange

Alle e-mail adresser i en Exchange organisation skal være unikke. Men i særlige tilfælde kan det ske, at der i Active Directory pludselig er to objekter der har den samme e-mail adresse. Sker dette vil der ikke kunne leveres mail til den pågældende adresse og man risikerer at få indtil flere fejl, bl.a. en event 9514 i sin event log:

Event ID 9514 –  Two objects in Active Directory have the same proxy address

I nyere versioner af Outlook vil man samtidig også få denne besked hvis man prøver at sende til den adresse der er blevet dubleret:

dupemail-outlook

Ud fra beskeden i event loggen kan vi lure at det handler om, at der i attributten proxyaddresses i vores AD er en eller flere dubletter der skal tages hånd om. Den attribut indeholder hvert objekts mulige kontakt-adresser, herunder Unified Messaging og SIP men altså også primære og sekundere mail-adresser.

Find årsagen til fejlen i Exchange

Men hvordan finder så disse dubletter på en smart måde? Der er en del ældre artikler om emnet på TechNet og Microsofts egne support sider, men ingen af dem har en smart måde lige at få listet samtlige dubletter man måtte have i sin organisation. Men med lidt PowerShell kan man komme ganske langt – lad os kigge på det.

dupemail

Ud over at gøre nogle variable klar til værdierne skal vi først og fremmest også sikre os at vi forbinder til en server der har et overblik over alle adresser i vores AD/Exchange. Derfor vil vi gerne have fat i en Global Catalog server:

Nu forbinder vi til Global Catalog serveren og henter alle værdier i attributten proxyaddresses og gemmer dem i vores hash-tabel. Hvis der er flere med samme adresser hæver vi værdien for den pågældende adresse:

Nu hvor vi har den komplette liste vil vi gerne sortere dubletterne fra i en særskilt variabel:

Og til sidst så vis os lige de adresser der måtte være dublerede:

Nu hvor du har listen over adresser er det nemt at søge dem frem i AD og finde synderen der skal fjernes eller have tilrettet sin mail-adresse. Outputtet fra det samlede script ser således ud i PowerShell ISE:

dupemail-result

0 kommentarer

Indsend en kommentar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *

Share This