dnsphpadmin icon indicating copy to clipboard operation
dnsphpadmin copied to clipboard

Support for UTF-8 renderig of internationalized domain names (IDN)

Open hno opened this issue 3 years ago • 0 comments

DNS supports domain labels using characters outside of US-ASCII. But being a legacy protocol any non-ASCII characters are recoded using US-ASCII symbols to be compatible with older software, using IDNA encoding (RFC3490)

This encoding may be suitable for computers, but for a human it's nearly impossible to read and even less write IDNA encoded labels correctly.

Example domain name to illustrate: xn--henriknordstrm-7pb.se (henriknordström.se)

The same kind of IDN encoding applies to any labels, not just domain names.

Would be preferable if dnsphpadmin could present and accept these in UTF-8 encoding.

PHP has support for this via the IDN functions: https://www.php.net/manual/en/ref.intl.idn.php

Other "Pure PHP" implementations also exists but should not be needed to go that path today as the above have been around for quite some time now.

Note: Display of international domain names do work if given an UTF-8 encoded domain name. But editing do not work. This because dig has built-in IDN support enabled by default, while nsupdate do not.

hno avatar Dec 28 '22 19:12 hno