ネットワークスペシャリスト 2014年 午前2 問15
問題文
インターネットの国際化ドメイン名(IDN:Internationalized Domain Name)の説明として、適切なものはどれか。
選択肢
ア:IDNでは、全角英数字を含むドメイン名(例:EXAMPLE1.jp)と半角英数字によるドメイン名(例:EXAMPLE1.jp)は異なるドメイン名として扱われる。
イ:IDNでは、通信する際に、漢字やアラビア文字などのドメイン名を、ASCII文字だけから成る文字列のドメイン名に一定の規則で変換する。(正解)
ウ:IDNとは、“.com”や“.net”などの、どの国からも取得できるトップレベルドメイン名のことである。
エ:IDNとは、“jp”や“.uk”などの、国別トップレベルドメインを使ったドメイン名のことである。
インターネットの国際化ドメイン名(IDN:Internationalized Domain Name)の説明【午前2 解説】
正解の理由
選択肢イは、IDNの本質を正確に述べています。DNSはASCII文字列しか扱えないため、ユーザが入力・表示する漢字やアラビア文字などのUnicode文字列を、PunycodeなどのASCII互換エンコーディング(ACE: ASCII Compatible Encoding)に変換して通信・名前解決を行います。よって「通信する際に一定の規則でASCII文字列に変換する」という記述が適切です。
解法ステップ
- 問題文で求められているのは「IDNの説明として適切か」を判断することを確認する。
- DNSの特性(元来ASCIIのみ)を思い出す。
- IDNの役割を確認:ユーザ向け表示はUnicode、DNS処理はASCII互換表現に変換して利用する。
- 各選択肢を、IDNの定義と照合して正誤を判定する。
選択肢別の誤答解説
- ア: 「全角英数字と半角英数字を異なるドメイン名として扱う」
→ 誤り。IDNは全角・半角の区別だけを説明するものではなく、Unicode文字をDNSで扱うためにエンコードする仕組みが主題です。多くのレジストリやブラウザは正規化ルールで見た目の違いを調整します。 - イ: IDNでは、通信する際に、漢字やアラビア文字などのドメイン名を、ASCII文字だけから成る文字列のドメイン名に一定の規則で変換する。
→ 正解。Punycode等のACEに変換してDNSで名前解決を行うというIDNの定義に合致します。 - ウ: 「IDNとは“.com”や“.net”など汎用TLDのこと」
→ 誤り。これはgTLD(generic TLD)に関する説明で、IDNの定義とは無関係です。 - エ: 「IDNとは“jp”や“.uk”などの国別TLDを使ったドメイン名のこと」
→ 誤り。これはccTLD(country-code TLD)に関する説明で、IDNの概念とは異なります。
よくある誤解
- 誤解1: 「IDNは単に全角英数字を使う機能」
→ 実際はUnicode全般(漢字、仮名、アラビア文字、キリル文字等)を扱うため、全角英数字だけの説明は不十分です。 - 誤解2: 「IDNは特定のトップレベルドメイン(.comや.jpなど)を指す」
→ IDNはドメイン名に用いる文字集合とその扱いを指す概念で、TLDの種類とは別です。 - 誤解3: 「表示される文字列とDNSで送信される文字列が同じ」
→ 表示はUnicodeで行い、DNS送信はACE(Punycode)のASCII表現で行います。両者は異なります。
補足コラム
- 実装面:IDNはユーザ側では「Unicode」で表示され、内部的には「xn--」で始まるPunycode(ACE)形式に変換されます。例:「日本語.example」→「xn--wgv71a.example」のように変換されます。
- セキュリティ:類似文字(homograph)攻撃に注意が必要です。例えば、ラテン小文字の“a”とキリル文字の“а”(似ているが別のコードポイント)を悪用したフィッシングが知られています。対策としてブラウザやレジストリ側で混在スクリプトの制限や警告を行う場合があります。
- 規格:IDNA(Internationalized Domain Names in Applications)が関連仕様で、IDNA2008が現行の主な仕様です。
FAQ
Q1: Punycodeって何ですか?
A1: PunycodeはUnicode文字列をASCIIのみで表現するエンコーディング方式の一つで、DNSで扱えるようにするために用いられます。ACE表現は通常「xn--」で始まります。
A1: PunycodeはUnicode文字列をASCIIのみで表現するエンコーディング方式の一つで、DNSで扱えるようにするために用いられます。ACE表現は通常「xn--」で始まります。
Q2: 全角英数字だけのドメインはIDNですか?
A2: 全角英数字もUnicode文字の一種で技術的にはIDNに含まれ得ますが、実用上は見た目の違いや正規化ルールの扱いも関係するため単純に「全角=IDN」とするのは誤りです。
A2: 全角英数字もUnicode文字の一種で技術的にはIDNに含まれ得ますが、実用上は見た目の違いや正規化ルールの扱いも関係するため単純に「全角=IDN」とするのは誤りです。
Q3: どのブラウザでも同じように表示されますか?
A3: ブラウザやOSによってIDNの表示ポリシー(警告表示やACE表示へのフォールバックなど)が異なる場合があります。
A3: ブラウザやOSによってIDNの表示ポリシー(警告表示やACE表示へのフォールバックなど)が異なる場合があります。
関連キーワード: IDN、Punycode、ACE、IDNA、国際化ドメイン、Punycode攻撃、DNS、ユニコード、homograph、ドメイン正規化

\ せっかくなら /
ネットワークスペシャリストを
クイズ形式で学習しませんか?
クイズ画面へ遷移する→
すぐに利用可能!

