IDN


IDN (англ. Internationalized Domain Names — интернационализованные доменные имена) — это доменные имена, которые содержат символы национальных алфавитов, например, президент.рф[1].

К IDN относятся как адреса с нелатинскими буквами на традиционных доменах верхнего уровня, так и нелатинские домены — домены верхнего уровня, составленные из букв нелатинских алфавитов планеты: кириллица, арабский алфавит и др. («Полные IDN» см. ниже). Однако IDN не ограничивается поддержкой нелатинских письменностей. Следует также учитывать, что латинизированный Интернет опирается на базовую версию латиницы, которая сильно отличается от богатых диакритиками и дополнительными буквами других латинизированных языков мира (среди них, к примеру, выделяется и самый распространённый в качестве родного язык, использующий латиницу — испанский, имеющий особые символы «Ñ»).

IDN домены также существуют в крупных международных доменных зонах, например, .COM, .NET, .TEL, .NAME, .ORG.

Чтобы можно было не менять инфраструктуру DNS, было предложено преобразовывать имена, содержащие символы национальных алфавитов, в слова, состоящие только из допустимых ранее символов ASCII, причём делать это в клиентских приложениях. Таким образом, для поддержки IDN достаточно, чтобы их понимал браузер пользователя. Он должен уметь переводить их в символьную кодировку Punycode, позволяющую представить любые символы Unicode с помощью разрешённого ранее набора символов ASCII. Чтобы в таком представлении IDN нельзя было спутать с обычными доменными именами, они начинаются со специального префикса «xn--», например, «xn--abc.com» — IDN в Punycode-представлении, а «abc.com» — обычное доменное имя. Фактически интернационализированные доменные имена являются псевдонимами для имён начинающихся с «xn--».

Строка «xn--e1afmkfd.xn--80akhbyknj4f» демонстрирует Punycode-представление для реально существующего IDN «пример.испытание»: http://пример.испытание/ Архивировано 5 декабря 2012 года.. В базах DNS-серверов хранится только Punycode-представление, а в браузере можно вводить как то, так и другое. В браузерах, не поддерживающих IDN, удастся использовать только Punycode-представления IDN.

Набор доменных имён на разных языках может производиться с помощью экранной (виртуальной) клавиатуры (операционной системы или интернет-сервиса) или вводом пуникода (можно получить с помощью punycode конвертера).