国際化ドメイン名

読み:こくさいかどめいんめい / 英語表記:Internationalized Domain Name

漢字やアラビア文字など、従来の英数字中心の表記以外も使えるドメイン名。対応するアプリケーションで名前の各部分をASCII文字列へ変換し、既存のDNSの仕組みで扱えるようにする。

イマシルちゃんの解説

いろいろな国の文字で書かれた名前を、共通の受付で扱いたいとするよ。
受付が読める文字だけで書いた控えを用意すれば、元の名前と対応させられるよね。

人には読みやすい名前を見せて、受付には決められた形で伝える。
名前を変えて別人にするのではなく、同じ名前の表し方を切り替えるんだ。

より深い解説

人が読む表記とDNSで使う表記

ドメイン名は、ドットで区切られたラベルから構成される。国際化ドメイン名では、この単位で文字の検査や変換を行う。URL全体を一括して変換する仕組みではない。

用語役割
IDNAアプリケーションで国際化ドメイン名を扱うための規則
PunycodeUnicodeの文字列を限定された文字集合で表す符号化方式
U-label規則の条件を満たすUnicodeによる名前の単位
A-label対応するASCII形式の名前の単位

このASCII形式は、xn--という接頭辞を付けた形になる。この符号化は暗号化ではないため、名前を秘密にする機能はない。

入力から名前解決まで

  1. ブラウザなどが利用者の入力を受け取る。
  2. 適用する規則に従って文字の変換や妥当性検査を行う。
  3. 必要なラベルをASCII形式にする。
  4. DNSへ問い合わせ、得たアドレスへ通信する。

ドメイン名の表示はアプリケーションの方針に依存する。人に読みやすい文字で表示する場合も、混同を避けるために符号化後の表記を表示する場合もある。

文字の正規化と版の違い

IDNA2003ではNameprepで文字の扱いを整え、全角英数字を対応する形へ変換する。このため、見た目や文字コードが異なる入力が、同じドメイン名として扱われることがある。

IDNA2008と、ブラウザなどが用いるUnicode UTS #46の互換処理は、役割や規則が同一ではない。幅の違いや大文字・小文字などの処理を、Punycodeだけの機能と考えないことが大切である。利用できる文字には、登録を管理する事業者側の制限もある。

ドメインの分類とは別の観点

分類着目しているもの
国際化ドメイン名名前に使う文字とその表現
gTLD.comなど、一般分野別のトップレベルドメイン
ccTLD.jpなど、国や地域に対応するトップレベルドメイン

国際化は「どの国から取得できるか」という登録資格の意味ではない。トップレベルだけでなく、その下のラベルにも使われる。

見た目が似た文字への注意

異なる文字体系に、形がよく似た文字がある。見た目だけで正規のサイトと判断すると、別のドメインへ誘導されるおそれがある。保存済みのブックマークや管理されたリンクからアクセスし、証明書やドメインの確認も組み合わせる。

実際の試験ではここに出る!

↑