💻 開発者ツール

Punycode変換(日本語ドメイン)

日本語などの国際化ドメイン名(IDN)とPunycode(xn--)表記を相互に変換します。URLを貼ればホスト名だけを変換して元の形に戻します。RFC 3492のアルゴリズムをブラウザ内で実行し、外部には何も送信しません。

変換方向

使い方

ドメイン名を入力すると、自動判定モードでは「xn--」を含む入力はUnicode表記へデコード、日本語など非ASCII文字を含む入力はPunycodeへエンコードします。変換はラベル(「.」区切り)ごとに行い、ASCIIだけのラベルはそのまま残します。「://」を含むURLを貼るとホスト名部分だけを変換し、パスやクエリは保持します。結果の下には逆変換した文字列も表示されるので、往復して一致することを確認できます。

具体例

  • 日本語.jpxn--wgv71a119e.jp
  • xn--eckwd4c7cu47r2wf.jpドメイン名例.jp
  • bücher.examplexn--bcher-kva.example(ドイツ語などのIDNもOK)
  • https://日本語.jp/path?q=1https://xn--wgv71a119e.jp/path?q=1(ホスト名だけ変換)
  • example.comexample.com(ASCIIのみは素通し)

よくある質問

入力データはサーバーに送信されますか?
いいえ。変換はすべてブラウザ内で完結し、外部に送信・保存されません。DNSへの問い合わせも行いません。
Punycode(xn--)とは何ですか?
日本語などUnicodeの文字を含む国際化ドメイン名(IDN)を、DNSで扱える英数字とハイフンだけの表記に変換する方式(RFC 3492)です。変換後のラベルには「xn--」という接頭辞が付きます。
URLを貼り付けるとどうなりますか?
「://」を含む入力はURLとして扱い、ホスト名の部分だけを変換して、パス・クエリ・ポート番号・ユーザー情報はそのまま残します。
大文字や全角の句点はどう扱われますか?
非ASCII文字を含むラベルはNFKC正規化(ABC・123のような全角英数字は半角に畳みます)と小文字化をしてからエンコードします。ラベルの区切りは半角ピリオドのほか、全角の「。」「.」「。」もピリオドとして扱います。
デコードに失敗するのはどんなときですか?
「xn--」で始まるのに中身が正しいPunycodeになっていないラベルはデコードできず、エラーを表示します。入力を修正すると結果が再び表示されます。