Блог
Русский

Конвертер Punycode онлайн — домен .рф в xn-- и обратно

Конвертер между доменами в Юникоде и их формой Punycode xn--

Работает в браузере · файлы никуда не загружаются

Полные URL тоже подходят — преобразуется только хост. Замените примеры своими доменами.

Направление

Юникод → xn-- использует встроенный в браузер парсер URL (обработка IDNA по UTS #46), поэтому результат — адрес, к которому браузер действительно подключается: заглавные и полноширинные буквы приводятся, а разложенные символы соединяются. xn-- → Юникод декодирует Punycode по RFC 3492 и проверяет, что обратное преобразование дает то же имя. Все выполняется в вашем браузере.

Что это за инструмент

Конвертер Punycode переводит интернационализированные доменные имена в форму xn–, которую использует DNS, и превращает имена xn– обратно в читаемый текст. Браузер показывает в адресной строке пример.рф или bücher.example, но на самом деле подключается к xn–e1afmkfd.xn–p1ai или xn–bcher-kva.example. Используйте инструмент, когда в конфиге сервера, DNS-записи или форме заказа сертификата нужна ASCII-версия, или когда нужно прочитать имя xn– из лога.

Как пользоваться

  1. Введите домены по одному на строку. Можно вставлять полные URL — преобразуется только хост.
  2. Выберите направление или оставьте «Авто», чтобы оно определялось для каждой строки.
  3. Посмотрите результат или причину ошибки для каждой строки.
  4. Скопируйте все успешные результаты, по одному на строку.

Как это работает

  • Юникод → xn– использует встроенный в браузер парсер URL, поэтому результат — ровно тот адрес, к которому подключается браузер. Применяется UTS #46 (обработка IDNA в режиме совместимости): приведение регистра и ширины, нормализация, а затем Punycode по RFC 3492 для каждой метки с символами вне ASCII.
  • xn– → Юникод декодирует каждую метку xn– по RFC 3492 и проверяет, что повторное кодирование результата дает то же имя; иначе строка отмечается как некорректная.
  • Пути, порты, данные пользователя и точка в конце сначала удаляются. Полное доменное имя может быть длиной до 253 символов.

Примеры

Ввод Результат
пример.рф xn–e1afmkfd.xn–p1ai
xn–e1afmkfd.xn–p1ai пример.рф
bücher.example xn–bcher-kva.example
https://bücher.example/path xn–bcher-kva.example
EXAMPLE.com example.com
a b.com Ошибка: пробелы недопустимы

Зарегистрировав домен в .рф или другой домен на национальном алфавите, указывайте форму xn– в server_name веб-сервера и в заявках на сертификат, а читаемую форму оставьте для визиток и рекламы. Вставьте целый список, чтобы преобразовать много доменов за раз, и скопируйте все результаты одним нажатием.

Частые вопросы

Что такое Punycode?

DNS работает только с латинскими буквами, цифрами и дефисами, поэтому домен с символами вроде я, ü или 日 кодируется в Punycode (RFC 3492) и получает префикс xn--. пример.рф превращается в xn--e1afmkfd.xn--p1ai, а bücher.example — в xn--bcher-kva.example.

Когда нужна форма xn--?

В DNS-записях, конфигурации веб-сервера, заявках на TLS-сертификаты и настройках почты, где обычно ожидается ASCII-форма. Обратное преобразование помогает, когда имя xn-- встречается в логах или заголовках.

Что с заглавными и полноширинными символами?

Перед кодированием они приводятся так же, как это делают браузеры (UTS #46), а разложенные символы соединяются. Пробелы и символы, недопустимые в доменных именах, вызывают ошибку.

Как работает автоматический выбор направления?

Каждая строка проверяется отдельно. Строка только из ASCII с меткой xn-- декодируется, все остальное кодируется. Чтобы задать одно направление для всех строк, выберите его вручную.

Домены куда-то отправляются или проверяются?

Нет. Преобразование выполняется в браузере, и к доменам никаких обращений нет.

Не нашли нужный инструмент?