日本語ドメイン名運用試験(フェーズ2)環境でのDNS設定手順 2001年6月19日版 ここでは、JPNICが配布している多言語ドメイン名ツールキット(以下、 mDNkit)を使用する場合を例に、日本語ドメイン名運用試験のフェーズ2(以下、 フェーズ2)環境でのDNS設定手順をご説明します。 mDNkit についての詳細は、以下の Web ページをご参照ください。 http://www.nic.ad.jp/ja/idn/index.html フェーズ2についての詳細は、以下の Web ページをご参照ください。 http://www.nic.ad.jp/ja/idn/phase2/index.html ■DNS設定手順の概要 1. 対象 本手順書は、以下の知識、もしくは経験を持たれている方を対象としています。 あらかじめご了承下さい。 ・ DNSについての知識がある方 ・ BINDの運用経験がある方 2. DNSへの設定の準備 本手順書は、既に運用が行われているネームサーバ(BIND 8以降を想定)に対 し、日本語ドメイン名を設定する場合の手順をご説明します。 現在の IETFでの多言語ドメイン名(国際化ドメイン名)の標準化は、多言語 ドメイン名の表現を、既存の DNS と下位互換性があるアスキー互換表現(ASCII Compatible Encoding、以下ACE表現)で行う方式の採用が有力です。 この方式の特徴は、既存のネームサーバソフトウェアの入れ替えを行なう必要 が無いことです。現在使用中のネームサーバをそのまま使うことができます。 フェーズ2で JP ゾーンに設定する日本語ドメイン名の ACE表現は、RACE (Row-based ACE、draft-ietf-idn-race-03.txt)を採用しています。 したがって、日本語ドメイン名をネームサーバに設定する場合は、当該日本語 ドメイン名をACE表現に変換し、設定ファイルおよびゾーンファイルに記述する 必要があります。 ACE表現への変換には、mDNkit に含まれるコマンド mdnconv をお使いいただ くと便利です。 ここでは mDNkit-2.1 の使用を前提にご説明します。 JPNICのWebページから mDNkit をダウンロード、インストールを行ってください。 詳細は、以下の Web ページをご参照ください。 mDNkitバージョン2.1リリース配布開始のご案内 http://www.nic.ad.jp/ja/idn/mdnkit/mdnkit-2.1.html mDNkit ユーザガイド http://www.nic.ad.jp/ja/idn/mdnkit/download/documents/mdnkit-2.1-doc/ja/guide/guide.html mDNkit インストールガイド http://www.nic.ad.jp/ja/idn/mdnkit/download/documents/mdnkit-2.1-doc/ja/guide/install.html mDNkit を利用するに当たっては、あらかじめ設定ファイルを作成しておく必 要があります。設定ファイルのパス名は、mDNkit のインストール時に明示的に 変更しなければ /usr/local/etc/mdn.conf となります。 以下にフェーズ2で用いられる設定に合わせた設定ファイルの内容を示します。 この設定では ACE として RACE を使用し、ACE に変換する前の正規化として NAMEPREP (draft-ietf-idn-nameprep-03.txt) を使用するようになっています。 mDNkit のインストール後、上記の設定ファイルを作成し、下記の内容を記述し てください。 idn-encoding RACE nameprep nameprep-03 alternate-encoding RACE 設定ファイルには他の項目も設定できます。各項目の説明に関しては以下の Web ページをご参照ください。 mDNkit 設定ガイド http://www.nic.ad.jp/ja/idn/mdnkit/download/documents/mdnkit-2.1-doc/ja/guide/resolvconfig.html 3. mdnconv の利用 コマンド mdnconv は、ネームサーバの設定ファイル named.conf および、ゾー ンファイルを対象とした、エンコーディング変換ツールです。 まずは mDNkit のインストールが正しく行なわれたかどうかを確認するために、 コマンド mdnconv を使って、日本語ドメイン名が ACE表現として正しく変換さ れることを確かめてみましょう。 コマンド mdnconv には、入力となる日本語ドメイン名の記述のエンコーディ ングを指示しなければなりません。ここではこれをローカルエンコーディングと 呼びます。 一般に日本語の扱えるシステムでは、日本語EUC や シフトJIS などの、いく つかのエンコーディングが取り扱えます。ローカルエンコーディングとして指定 できるエンコーディングの名前は、mDNkit が利用する iconv の実装 (もともと システムに付属している場合もありますし、外部ライブラリとして用意されてい る場合もあります) に依存します。例えば、ある環境では EUC-JP や SHIFT_JIS という名前が使え、別の環境では eucJP や SJIS, SHIFT-JIS といった名前が使 えるかもしれません。使用できるエンコーディングの名前については iconv の ドキュメントをご参照ください。 ここでは、ローカルエンコーディングとして日本語EUC を使用し、そのエンコー ディングの名前が EUC-JP であるものとします。 ローカルエンコーディングを指定するには、環境変数 MDN_LOCAL_CODESETを設 定する方法などがありますが、本手順書ではコマンド mdnconv に引数 -in で明 示的に指定することにします。 実際にコマンド mdnconv を使って「日本語ドメイン名例」という名前を、 RACEによるACE表現として変換すると、以下のようになります。 % cat SAMPLE 日本語ドメイン名例.JP % mdnconv -in EUC-JP <SAMPLE bq--3bs6kzzmrkpdbsjq4eykimhtkqgu7cy.JP mdnconv にはこの他にもいろいろなオプションがあります。mdnconv の仕様に ついては以下の Web ページをご参照ください。 mdnconv 仕様 http://www.nic.ad.jp/ja/idn/mdnkit/download/documents/mdnkit-2.1-doc/ja/spec/mdnconv.html 4. named.conf、ゾーンファイルの作成 日本語ドメイン名を記述する設定ファイルやゾーンファイルの管理は、ネーム サーバ管理者が容易に理解できるローカルエンコーディングで行い、ネームサー バに読み込ませる際にACE表現に変換すると便利です。 例えば、日本語ドメイン名をローカルエンコーディングで記述した設定ファイ ルを named.conf.euc、実際にネームサーバに読み込ませるファイルを named.conf とすると、named.conf.euc からnamed.conf への変換は、以下のよ うになります。 % mdnconv -in EUC-JP named.conf.euc >named.conf 例題として、ここでは、「日本語ドメイン名例.JP」という日本語ドメイン名 のゾーンを、10.20.30/24のネットワークに設定する場合の例を示します。 ○ named.conf.euc へのゾーン設定の挿入部分 (ローカルエンコーディング表記) // zone for "日本語ドメイン名例.JP" // // zone "日本語ドメイン名例.JP" { type master; file "jdn-sample.jp.zone"; }; ○ ゾーンファイル jdn-sample.jp.zone.euc の日本語ドメイン名部分 (ローカルエンコーディング表記) ; ; A sample jdnsample IN A 10.20.30.41 ; ; CNAME sample ; for 閲覧試験.日本語ドメイン名例.JP 閲覧試験 IN CNAME jdnsample ; 日本語ドメイン名をローカルエンコーディングで記述した named.conf と ゾーンファイルをコマンド mdnconv で ACE表記での記述に変換します。 % mdnconv -in EUC-JP named.conf.euc >named.conf % mdnconv -in EUC-JP jdn-sample.jp.zone.euc > jdn-sample.jp.zone ○ named.conf ACE表記への変換結果 // zone for "bq--3bs6kzzmrkpdbsjq4eykimhtkqgu7cy.JP" // // zone "bq--3bs6kzzmrkpdbsjq4eykimhtkqgu7cy.JP" { type master; file "jdn-sample.jp.zone"; }; ○ ゾーンファイル jdn-sample.jp.zone への ACE表記への変換結果 ; ; A sample jdnsample IN A 10.20.30.41 ; ; CNAME sample ; for bq--3ck3fcnhrjtjuey.bq--3bs6kzzmrkpdbsjq4eykimhtkqgu7cy.JP bq--3ck3fcnhrjtjuey IN CNAME jdnsample ; make コマンドを利用することで、以上の変換を自動的に行うことも可能です。 この方法については以下の Web ページをご参照ください。 named.conf、ゾーンマスタファイルの作成ガイド http://www.nic.ad.jp/ja/idn/mdnkit/download/documents/mdnkit-2.1-doc/ja/guide/bindconfig.html#file 5. 日本語ドメイン名設定の確認 日本語ドメイン名がネームサーバに正しく設定されたことを確認するためには、 コマンド nslookup に日本語ドメイン名の ACE表現を指定して、名前解決を試み ます。 以下のように実行してみて、名前解決が行なわれることをご確認ください。 % cat SAMPLE 日本語ドメイン名例.JP % mdnconv -in EUC-JP < SAMPLE bq--3bs6kzzmrkpdbsjq4eykimhtkqgu7cy.JP % nslookup bq--3bs6kzzmrkpdbsjq4eykimhtkqgu7cy.JP あるいは、 % nslookup `mdnconv -in EUC-JP < SAMPLE` 以下のような結果が得られれば成功です。 Server: xxxxxx.yyy.zz.jp Address: 10.20.30.3 Name: bq--3bs6kzzmrkpdbsjq4eykimhtkqgu7cy.JP Address: 10.20.30.41 上記の手順で、ネームサーバへの日本語ドメイン名の設定が正しく行われてい ることを確認できます。 設定された日本語ドメイン名を、ACE表現ではなく日本語の文字として参照す るためには、多言語ドメイン名に対応したツールやアプリケーションが必要にな ります。 ■フェーズ2環境へのアクセス手順 フェーズ2環境へのアクセス手順については、以下の Web ページをご参照く ださい。 http://www.nic.ad.jp/ja/idn/phase2/index.html ■問い合わせ先 本件に関するお問い合わせは、以下までメールでお願いします。 お問い合わせ先メールアドレス: idn-cmt@nic.ad.jp