Punycode 変換

国際化ドメインを ASCII の Punycode にするか、xn-- を文字に戻します。

DNS のラベルは ASCII です

münchen や「中文」は、DNS では xn-- で始まる Punycode になります。このページが換えるのはそのラベルです。URL エンコードではありません。スラッシュ、クエリ、フラグメントはそのままです。できあがったアドレスを欄に分けるときは URL 解析 です。

操作

  1. ドメイン、完全なリンク、またはメールアドレスを貼ります。
  2. 向きは「Punycode(ASCII)へ」か「Unicode へ」です。例は https://münchen.example/ のあとに漢字のパスが続くリンクで、ASCII へ変換します。
  3. リンクではホストだけを変換します。メールでは @ より後ろのドメインだけです。パスの漢字はそのままです。
  4. 壊れた xn-- はエラーになり、名前の途中までは出しません。

何が変わるか

ドットで分かれたラベルを、一つずつ変換します。example のような ASCII だけはそのままです。münchen.de は xn--mnchen-3ya.de になります。中文.com は xn--fiq228c.com になります。スキーム、パス、クエリは Punycode にしません。逆の向きをもう一度かけると戻ります。これはホスト名の IDNA であり、文章の暗号ではありません。

使う場面

  • 証明書や DNS の書き出しにある xn-- が、どの名前かを見ます。
  • 漢字のドメインを、ASCII のホストしか受けない仕組みへ入れます。
  • 国際化ドメインを信じる前に、思っていた名前かどうか突き合わせます。

よくある質問

パスが漢字のままです

Punycode は DNS のラベル用です。パスには使いません。相手が符号化を求めるパスは、パーセント符号化です。

メールの @ より前が変わりません

そこはローカル部です。ホスト名になるのはドメインだけです。