Вы когда-нибудь встречались с таким термином, как
punycode ? Знаете, что это такое? Если нет, но хотите узнать, то милости просим! В данной статье мы как раз об этом и будем говорить. И начнем с самого главного, с определения:
punycode – это преобразование знаков в кодировке Unicode в такую форму, которая будет «понятна» DNS. С последовательностью действий такого рода реорганизацией можно ознакомиться в специально отведенном для этого случая стандарте RFC 3492.
Сама мысль о внедрении в наименования доменов знаков национальных алфавитов, весьма важная ступень в развитии всемирной паутины, возникла в далеких 1970-х годах, когда Интернет еще находился в стадии разработки. Но, к сожалению, данная технология не была разработана, и именно поэтому знаки, разрешенные для регистрации доменных имен в DNS, были ограничены знаками в кодировке ASCII, которыми являются буквы латинского алфавита, цифры и такой знак как дефис.
Ведь в наше время становится все больше и больше людей, языки которых основаны на отличных от латинского алфавита. И из этого можно сделать вывод, что гораздо больше юзеров сегодня натыкаются на проблемы, которые связаны с аутентификацией и вводом символов ASCII. К тому же, у наименований доменов, скомпонованных из знаков национальных алфавитов, есть явные достоинства при выходе компаний на локальные рынки или ориентации на тех пользователей Интернета, которые не являются англоязычными, а также для осуществления рекламных акций и кампаний по сети Интернет. Как пример: такая ассоциация как ICANN тратит огромную кучу времени на формирование доменов, содержащих знаки национальных алфавитов или, как они еще называются -
IDN-доменов .
В 2003 году для решения этой проблемы были назначены специальные стандарты, трактующиеся как IDNA, что при расшифровке с английского означает – Internationalizing Domain Names in Applications, а если перевести на русский, то звучит как Интернационализованные доменные имена для приложений. Этими стандартами дефинициируется технология применения в наименованиях доменов знаков, не включенных в таблицу ASCII. В одном из стандартов мы с Вами можем почерпнуть полноценную информацию о том, как можно конвертировать символы в кодировке Unicode в набор знаков, который будет распознаваем нынешней DNS. И называется все это как раз - Punycode.
Для поддержки IDN-доменов Вам необходимо всего лишь, чтобы Ваша программа-обозреватель имела функцию Punycode-конвертирование. На сегодняшний день последние версии всех наиболее часто используемых обозревателей имеют поддержку Punycode. Но бывают и исключения из правил. Если Вы попали в такую ситуацию, что программа-обозреватель все-таки не имеет поддержки Punycode, и еще в том случае, если нужно узнать наименование домена в таком виде, в котором оно будет реальным, то у Вас всегда будет возможность использовать специфические web-сервисы, которые занимаются Punycode-конвертированием введенных Вами наименований доменов.