Seit dem 1. März 2004 unterstützt die Denic für .de Domains auch verschiedene Sonderzeichen, sogenannte IDN-Domains. Für ein Softwareprojekt habe ich mir nun die tolle Domain şøñđëřżēıċħęŋđőmæîņĭśŧşũþėŗ.de registriert – dahinter steckt sowohl ein Webserver als auch ein Mailforwarding.
Gemäss des IDN-Standards sollte die Domain perfekt funktionieren, von überall erreichbar sein, und “hinter den Kulissen” zur Domain
Theoretisch. So ziemlich alles verschluckt sich an diesen Domains, es war schon grösserer Spass die Domain überhaupt registriert zu kriegen, und von “invalid domain” bis hin zu beliebig obskuren Fehlermeldungen kriegt man normalerweise alles zu sehen, wenn man diese Domain nutzt. Thunderbird, z.B. ist bis heute wohl nicht in der Lage, mit IDN-Domains umzugehen, und wirft einfach alle unbekannten Zeichen weg, und liefert dann nach fh@m.de aus. Safari kriegts beim Ausliefern hin, beim Empfang zerschiesst dafür dann Postfix Teile der Mail. Verschiedene Web-App-Fehler sammle ich hier – selbst Institutionen wie das w3c oder heise, bei denen ich deutlich mehr Kompetenz vermutet hätte, kriegen Probleme.
Mal sehen, was sich hier noch in den kommenden Tagen für Fehler finden, und wann endlich IDN-Domains sauber funktionieren. Von Komfortproblemen mal abgesehen: Wenn ein unbedarfter User z.B. autohaus-müller.de registriert, und dann Thunderbird alle Mails an bestellung@autohaus-müller in Wirklichkeit an bestellung@autohaus-mller schickt, die der Konkurrenz gehört – schick ist anders. Mag im konkreten Fall etwas konstruiert wirken, das Beispiel, aber ich bin mir sicher, dass sich bei der IDN-Problematik auch noch kapitale Bugs, sowohl technisch als auch sozial, verstecken.
Wer seine eigenen Apps testen mag: Die Mailadresse trash@şøñđëřżēıċħęŋđőmæîņĭśŧşũþėŗ.de geht direkt nach /dev/null. Viel Spass. Und über spannende Fehlermeldungen in den Kommentaren freue ich mich, natürlich.
Ebenso interessant: Anregungen und Links zu den Problemen, die sich aus Entwicklersicht so ergeben. Mir ist z.B. im Moment noch nicht ganz klar, wie ich eine Emailadresse immer auf Validität prüfen kann, unter diesen Umständen, ohne eine Regex from Hell oder externe Libraries. Oder auch sowas wie “best practices”, macht es z.B. Sinn, Mailadressen lieber im “ACE-Format” oder im vom Benutzer eingegebenen originärem Format zu speichern? Oder jedes Mal hin- und herkonvertieren?
