International Domain Names in cPanel

International Domain Names (IDN) are domain names written in languages with non ASCII special characters such as those of non-roman character sets like Cyrillic or those with accented letters. IDN domains are written using unicode which is not supported by DNS and many systems. As a result the domain must first be converted to ASCII before it can be used. This converted text is referred to as Punycode. cPanel can support the Punycode version (IDNA encoded version) of an international domain name (IDN) but will give and error when trying to create an account using a unicode character or character from the extended ascii table such as ñ (Extended ASCII #164).

The IDN needs to first be converted using the IDNA (Internationalizing Domain Names in Applications) 'ToASCII' algorithm as defined in RFC 3492. This processes is referred to as IDNA encoding. For example if we had the domain Dó (English translation '') the domain would be converted to ASCI (normalized) using punycode as:

When thinking of the IDNA encoding processes and the end results its helpful to realize that each part of the domain is converted separately. So the domain.TLD would be encoded both as a domain and the tld separately. ICANN has approved a few IDN TLD's such as .рф (Russia). in the case of an IDN top level domain (TLD) you would see a second 'xn–' reference. A domain such as пример.рф (English translation example.rf) would be converted to ASCI (normalized) using punycode as:


there are a number of online punycode converters, one simple way is to just paste the Unicode version of the domain into the address bar of chrome, it will convert it for you as part of the lookup.