Технические трудности
Технические трудности
Введение многоязычных доменов связано с целым рядом технических трудностей. Основная из них состоит в том, что система DNS может работать только с символами из набора ASCII.
Что такое ASCII? Это стандартный набор символов, включающий в том числе и буквы латинского алфавита, введенный еще до появления Интернета и DNS. Символы ASCII представлены в виде числовых кодов, а таблицы соответствия кодов и символов как раз и являются предметом этого стандарта.
На страницах этой книги я стараюсь избегать излишне техничных моментов, свойственных работе DNS, и опускаю многие подробности преобразования данных, которые осуществляются в Сети при обработке адресов. Однако в случае с многоязычными доменными именами нам придется взглянуть на эти преобразования чуть подробнее, чтобы понять основные свойства новых алфавитов DNS. Впрочем, ничего сложного в нужных для понимания алгоритмах нет.
Итак, когда создавалась DNS, использование ASCII представлялось очень логичным, ведь этот стандарт тогда лежал в основе компьютерной обработки символов, позволяя разным компьютерам и разному программному обеспечению одинаковым образом представлять символьную информацию. Надо заметить, что DNS использует далеко не все символы таблиц ASCII. Напротив, к использованию разрешены только 26 букв алфавита, 10 цифр и знак дефиса. То есть и так достаточно узкий набор ASCII, не включавший, например, букв кириллицы, сузили еще больше, выбрав небольшое подмножество символов.
Итак, стандартная современная система DNS использует «урезанный» набор ASCII-символов. Из чего состоит DNS? Из множества компьютеров-серверов, на которых работает специальное программное обеспечение, реализующее всю функциональность преобразования имен (преобразование, напомним, происходит между символьными строками и числовыми IP-адресами). Количество важных серверов DNS, работающих в Интернете, исчисляется десятками тысяч. А управляют этими серверами самые разные компании и администраторы, не имеющие «центрального начальства» и вообще находящиеся в разных странах мира.
Введение в таблицы преобразований новых символов и изменение алгоритмов преобразования – это самые радикальные изменения в программном обеспечении DNS, какие только можно представить. Понятно, что осуществить подобное на практике в глобальном масштабе просто невозможно. Дело в том, что любая попытка произвести «апгрейд» распределенной компьютерной системы мирового масштаба, включающей тысячи разных компьютеров и не оснащенной центральным управлением, имеет один наиболее вероятный исход – крах глобальной системы адресации Интернета.
Нужно уточнить, что сперва для реализации многоязычных доменов было предложено несколько разных технологий. Некоторые из них подразумевали использование «альтернативной» системы доменных имен или предлагали другие подобные решения сомнительной ценности. После изучения вариантов и возможностей их реализации ICANN рекомендовала применить технологию, которая позволит с минимальными рисками поэтапно ввести в употребление доменные имена, допускающие максимально широкий набор символов самых разных алфавитов.
Подобный результат вряд ли нужен пользователям Сети – им требуются лишь многоязычные домены разных уровней. Именно поэтому для введения многоязычия в систему адресации разработали технологию, позволяющую реализовать новую функциональность поверх действующей и отлаженной годами системы DNS.
Суть технологии доменного многоязычия, рекомендованной ICANN, заключается в дополнительном преобразовании имен (например, на компьютере пользователя) до отправки запроса в DNS. В результате доменное имя с символами национального алфавита «перекодируется» в формат, допустимый для обычной обработки в DNS. То есть имя оказывается состоящим только из символов ASCII, разрешенных в «классической» DNS (а именно из букв латиницы, цифр и дефисов).
Другими словами, в рамках технологии многоязычных доменов старая и проверенная глобальная DNS остается нетронутой – она как бы и не «видит» новых алфавитных символов. Это освобождает интернет-сообщество от крайне рискованных усилий по «апгрейду» DNS.
Как же работают многоязычные имена? Введенное пользователем доменное имя на национальном языке преобразуется браузером по стандартному алгоритму в последовательность допустимых к использованию в DNS ASCII-символов. Эта последовательность начинается со специального префикса, позволяющего программам отличать многоязычные адреса. При этом с точки зрения старых программ, работающих с доменными именами, и с точки зрения DNS, строка символов, полученная в результате преобразования, будет являться обычным именем домена. То есть старые программы, созданные до появления «технологий многоязычия», также сумеют обрабатывать новые адреса, правда, при этом они не смогут правильно отобразить представление имени в национальном алфавите.
Простой пример: русскоязычный адрес руцентр. рф будет преобразован в ASCII-строку xn-e1aqhcjdv.xn-p1ai, где xn- – префикс, обозначающий, в данном случае, «нелатинское» доменное имя, а e1aqhcjdv (вполне себе абракадабра) представляет собой закодированную особенным образом последовательность букв кириллицы руцентр, p1ai – .рф.
Итак, самое важное, что нужно понимать: технически многоязычные доменные имена вводятся на другом «уровне абстракции», поверх DNS. При этом необходимые преобразования символов осуществляются не в DNS, а на компьютере пользователя Интернета (или на сервере, не участвующем в DNS, если такое преобразование требуется серверу) специальным программным обеспечением, а DNS передается результат преобразования, состоящий только из ASCII-символов.
Префикс xn-, обозначающий многоязычные доменные имена, согласно предложению ICANN, администраторы доменов верхнего уровня могут зарезервировать, если они пока не хотят допускать регистрацию и использование многоязычных доменов в своих «зонах ответственности». Дело в том, что регистрация имени, начинающегося с префикса xn-, может оказаться технически эквивалентной регистрации того или иного доменного имени в многоязычном представлении.
Преобразование символов в описанной технологии, которая называется Punycode, происходит с использованием наиболее прогрессивной и универсальной современной кодировки символов – Unicode. Таблицы Unicode включают все мыслимые символы самых разнообразных алфавитов и используемых «при письме» знаковых систем, сколько-нибудь распространенных в мире.
Punycode для преобразования имен доменов полностью поддерживается современными браузерами. То есть пользователям этих браузеров (подавляющему большинству пользователей Сети) не нужно прибегать к помощи дополнительных плагинов, чтобы получить поддержку многоязычных доменных имен. А если вспомнить, что технология многоязычия устроена не требующим перенастройки DNS образом, то окажется, что у администраторов существующих доменов нет технических препятствий для введения многоязычных доменных имен.
Предположим, администратор домена test.ru решил ввести внутри своей «зоны ответственности» доменные имена на русском языке. Оказывается, что для добавления в DNS доменного имени привет. test.ru администратору достаточно внести в управляющие таблицы сервера имен домен xn-b1agh1afp.test. ru. Это доменное имя состоит только из допустимых в DNS символов и поэтому будет доступно и для современных, и для старых программных систем. Отличие лишь в том, что пользователи современных интернет-браузеров смогут обращаться к ресурсу под именем привет. test.ru. При этом администратору домена test. ru не придется получать разрешение на введение кириллических имен в своем домене у «вышестоящих» организаций.
Такая особенность управления доменным пространством вместе с появлением в 2010 году многоязычных доменов верхнего уровня дала неожиданный эффект в плане безопасности, позволяя фишерам (мошенникам, выманивающим различные пользовательские конфиденциальные и персональные данные) конструировать адреса, имитирующие многоязычные домены. Подробнее об этом – в разделе, посвященном безопасности DNS.
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКДанный текст является ознакомительным фрагментом.
Читайте также
27.2.4.1. Технические подробности
27.2.4.1. Технические подробности Прежде чем перейти к рассмотрению функций ICMP, разберемся, как же ICMP-пакеты принимаются операционной системой. Собственно, ICMP-пакет принимается операционной системой Linux так же, как и любой другой пакет. Драйвер сетевой платы (или другого
Трудности управления
Трудности управления Как рассказывалось выше, национальными доменами разных государств управляют самые разные общественные, коммерческие, некоммерческие и государственные организации, а иногда и фактически частные лица. Впрочем, в большинстве случаев администраторы
Трудности переходного возраста
Трудности переходного возраста Давайте уж будем совсем откровенны и согласимся с тем, что мы не молодеем. Ну не можем мы вернуть себе былую молодость, как бы ни старались, ни прихорашивались, сколько бы тонн румян и белил на себя ни накладывали и сколько бы пластических
Технические параметры баннера
Технические параметры баннера Формат файла, как правило, gif. Он содержит 2–3 кадра, имитирующих на баннере динамику.Размеры баннеров считаются в пикселях: первая цифра – горизонталь, вторая – вертикаль. То есть если вы видите в прайсе формат 240?400, то это значит 240 пикселей
Непредвиденные технические проблемы
Непредвиденные технические проблемы Неожиданно появившиеся технические проблемы могут перечеркнуть все ваши усилия по продвижению интернет-ресурсов. Так, автор неоднократно сталкивался с ситуациями, когда ежедневная посещаемость интернет-ресурсов в течение
Кажущиеся трудности
Кажущиеся трудности Итак, список создан и замечательно работает. Возможно, в некоторых случаях, Вам захочется реализовать и более сложные
Технические рекомендации и стандарты
Технические рекомендации и стандарты ? http://www.w3.org/TR/xsltXSL Transformations (XSLT). Version 1.0. Спецификация языка XSLT.? http://www.w3.org/TR/XPathXML Path Language (XPath). Version 1.0. Спецификация языка XPath.? http://www.w3.org/TR/REC-xmlExtensible Markup Language (XML) 1.0 (Second Edition). Спецификация языка XML.? http://www.w3.org/TR/1999/REC-xml-names-19990114Namespaces in XML.
5.4. Трудности с отсечением и отрицанием
5.4. Трудности с отсечением и отрицанием Используя отсечение, мы кое-что выиграли, но не совсем даром. Преимущества и недостатки применения отсечения были показаны на примерах из предыдущих разделов. Давайте подытожим сначала преимущества:(1) При помощи отсечения часто
Технические аспекты криптографии
Технические аспекты криптографии Веб-сайтыhttp://www.iacr.org — Международная Ассоциация Криптологических Исследований (IACR). IACR проводит конференции по проблемам криптографии и издаёт журналы.http://www.pgpi.org — международный неофициальный веб-сайт PGP, не поддерживаемый PGP Corporation.
Технические подробности
Технические подробности Эта глава представила подробное введение в концепции и терминологию криптографии. В главе 2, "Фил Циммерман о PGP", Филипп Циммерман, автор PGP, проведёт более глубокое рассмотрение проблем тайны связи, технических аспектов функционирования PGP,
ФМ-ВЕЩАНИЕ: Трудности перевода
ФМ-ВЕЩАНИЕ: Трудности перевода Только что вышел из двухнедельного цикла участия в конференциях и семинарах. На последнем из них, партнерском семинаре ABBYY, вустретилась забавная картина. Как обычно в турецких отелях по системе «все включено», мы питались за шведским
Трудности циклов
Трудности циклов Возможность повторять некоторые вычисления произвольное число раз, не поддаваясь усталости, без случайных потерь чего-либо важного, - в этом принципиальное отличие компьютерных вычислений от возможностей человека. Вот почему циклы так важны. Трудно
Трудности тайм-менеджмента
Трудности тайм-менеджмента Вот теперь можно начинать!Тайм-менеджмент труден для сисадминов в первую очередь потому, что нашу работу постоянно прерывают. Как довести дело до конца, если нам все время приходится бросать его, чтобы устранить проблему или ответить на вопрос,