IDNs (International Domain Names) have been around for a long time. And Microsoft had an Office 2007 Language Pack available for Hindi more than a year back. Considering that Exchange Server 2007 is running post sp1, one would assume that something as simple as getting an email to an IDN email address would be straightforward. Fail.
Something as simple and harmless looking as this is what I was attempting to accomplish:
Of course, before sending the mail I ensured (to add) the puny code for the domain in question to the accepted domains list. However, even after an hour when I didn’t see the mail, I tried adding the domain itself to the accepted domain list. And thus started the “oh no you didn’t …” nonsense.
This is always my preferred method of doing things with exchange:
Step 1: Add the new accepted domain (in IDN form) via the PowerShell; FAIL:
Wha??? Power Shell isn’t unicode aware? Alright, that’s something to bitch about for later…
Step 2: Try adding the new accepted domain via the UI; FAIL
Doh! Okay, this needs some serious troubleshooting…
Step 3: Add all languages via Regional Settings Control Panel and reboot:
Step 4: Try adding via Power Shell again; FAIL. Try adding via UI again; FAIL
Oh wait, at least it accepts the IDN in characters. Let’s try sending that test mail again.
Step 5: Received the mail but what the …..
The punycode to IDN conversion does not happen. The recipient address is not even interpreted. And all this on a machine that has the Hindi Language pack and the additional languages installed. Even Internet explorer properly converts from puny-code to IDNs on this machine!
One last check though .. let’s see how Outlook Web Access behaves … just to be sure whether the problem is with Outlook or Exchange server itself.
Well yeah, Exchange 2007 doesn’t completely support receiving mails to IDN domains. You can of course receive the mail but you won’t know to whom it was sent. Grrr… Let’s redir the email to this domain to /dev/null
Who’s gonna send email to an IDN address anyway!
Bad.