ク・ミニ実験室 0 図 6 dig プログラムで A レコードを取得 (perseus.north.example.com/ $ d 土 9 perseus . north. example . com ー亡 a 。ー A レコードの問・合せ くく > > DiG 9 . 3 . 1 くく > > perseus . north. example . com ーに a ( 1 server found) 910ba1 op に土 ons : printcmd GO し ->>HEADER< く一 opcode : QUERY, status : NOERROR, id: 34813 flags : qr aa rd ra; QUERY: 1 ′ ANSWER: 1 ′ AUTHOR 工 TY: 1 ー ADDIT 工 ONAL: ネットワー 0 QUEST 工 ON SECT 工 ON: ;perseus . nor セ h. example . com. ANSWER SECT 工 ON : perseus . north . example . com. 工 N 8 6 4 0 0 工 N AUTHOR 工 TY SECTION : north. example . com. Query time : 2 msec 8 6 4 0 0 IN NS pe 「 seus の旧アドレス DNS サーバーの情報 ns . north . example . com . 192 . 168 . 10 . 1 SERVER : 12 7 . 0 . 0 . 1 # 53 ( 12 7 . 0 . 0 . 1 ) WHEN : Sun こ uI 17 2 0 : 4 2 : 5 3 2 0 0 5 MSG S 工 ZE rcvd: 76 ->>HEADER<<- opcode: QUERY, status : NOERROR, id: 60166 GO セ : global op に土 ons : printcmd ( 1 server found) くく > > DiG 9 . 3 . 1 くく > > ns . north . example . com -t a $ d 土 9 ns . nor に h. example . com ーセ a ・一 A レコードの問・合せ 図 7 dig プログラムで A レコードを取得 (ns.north ・ example ・ com) flags: qr aa rd ra; QUESTION SECT 工 ON: ;ns . north . . com . ANSWER SECTION : ns . north. example . com. perseus . north . example AUTHORITY SECTION: north . example . com. Query time : 2 msec QUERY: 1 ′ ANSWER: 2 ′ AUTHOR 工 TY: 1 ′ ADD 工 T 工 ONAL: 0 8 6 4 0 0 工 N . com . 8 6 4 0 0 工 N 工 N 8 6 4 0 0 工 N CNAME NS SERVER : 12 7 . 0 . 0 . 1 # 5 3 ( 12 7 . 0 . 0 . 1 ) WHEN : Sun Ju1 17 2 0 : 4 3 : 13 2 0 0 5 MSG S 工 ZE rcvd: 90 host は、ホスト名から IP アドレスを取得するときに便 UNIX MAGAZ 工 NE host ん OS めれ 7 〃 e 利なプログラムです。たとえば、 2005 . 9 ns は perseus の別名 perSeUS . IIOrth . example . com . 192 . 16 8 . 10 . 1 perseus の旧アドレス ns . north. . com. を試してみてください。 57 できますが、もっとも一引殳的な使い方は、 host プログラム nslookup は DNS サーバーからさまざまな情報を取得
図 5 dig プログラムで NS レコードを等 $ d 土 9 north. example. com -t ns 。ー NS レコードの問合せ くく > > DiG 9 . 3 . 1 くく > > north. example . com -t ns ( 1 server found) 910ba1 options : printcmd GO し answer : status : NOERROR, id: 61387 ー >>HEADER< く一 opcode : QUERY, 0 flags : qr aa rd ra; QUERY: 1 ー ANSWER: 1 ′ AUTHOR 工 TY: 0 ′ ADD 工 T 工 ONAL: QUEST 工 ON SECTION: ー north . example . com. NS z 幵 z DNS サーバーのホスト名 NS レコード ANSWER SECT 工 ON : north . example . com . ns . north . example . com . NS 8 6 4 0 0 Query time : 2 msec SERVER : 12 7 . 0 . 0 . 1 # 53 ( 12 7 . 0 . O . 1 ) WHEN : Sun ユ ul 17 18 : 0 7 : 2 4 2 0 0 5 MSG SIZE rcvd: 52 した IP アドレスと一致しているので、 DNS サーバーは正 ソ。ーンファイル north.example.com/zone の言当内容 常に動作しています。 と矛盾していないので、 DNS サーバーカしい清報を返し 図 7 は、 ns.north.example.com を対象に dig プログ たと判断できます。 ラムを実行した結果です。今回は DNS サーバーの応答が ホストのアドレス情報の確認 2 行になっていますが ( 四角形で囲んだ箇所 ) 、 最後に、ゾーンファイルに定したホストの情報を取得 ・ ns.north.example.com は perseus. north. example. できるかを確認しましよう。 com の別名 (CNAME) ゾーンファイルには、 ・ IP アドレスは perseus.north.example.com と同じ ・ perseus.north.example.com 192.168.10.1 ・ ns. north. example. C0Ⅱ1 であることが読み取れます。この情報も、ゾーンファイル の 2 つのホストが定義されています。これらのホストに対 の言杢と一致しています。 して、 こでは、 2 つのホストの情報が設疋ファイルの当と dig hostname -t a 一致しているかを確認しました。ドメインで複数のホスト を実行し、正しい IP アドレスが得られるかを確認してく や IP アドレスの情報を公開している場合は、それらを 1 ださい。 つずっ問い合わせて設疋ファイルの内容と突き合わせるこ dig プログラムは -t オプションを指定しないとデフォ とで、 DNS サーバーの動作を確認できます。 ルトで、、 a " (A レコード ) について問し哈わせるので、 host と nslookup dig ん os 田 rne BIND には、 DNS サーバーの動作確認用のプログラム のように -t オプションを省略することも可能です。 があと 2 つ付属しています。 図 6 は、 perseus.north.example.com を対象に dig プログラムを実行した結果です。 ANSWER SECTION ・ host の下に表示された IP アドレスが、ゾーンファイルに設疋 ・ nslookup 56 UNIX MAGAZ 工 NE 2005.9
ネットワーク・ 図 4 dig プログラムで SOA レコードを取得 $ dig north. example . com ー亡 soa ・一口一カルホストに no h. examp 巨 com の情報を問い合わせる くく > > DiG 9 . 3 . 1 くく > > north . example . com ーに soa ミニ実験室 0 ( 1 server found) 910ba1 options : printcmd GOt : ー >>HEADER< く一 opcode : flags : qr aa rd ra; QUESTION SECTION: ;north . example . com. ANSWER SECT 工 ON: north . example . com . r00 し . ns . north . exam le AUTHOR 工 TY SECT 工 ON : north. example . com. Query time : 2 msec QUERY ′ QUERY : 8 6 4 0 0 status: NOERROR, id: 41673 1 ′ ANSWER : 1 ′ AUTHOR 工 TY : 1 ー ADD 工 T 工 ONAL : 0 問合せに関す る補足情報 DNS サーバー に問い合わせ た内容 工 N 工 N SOA SOA DNS サーバーが返した SOA レコードの内容 ns . north . example . com . 2 0 0 5 0 6 010 0 10 8 0 0 3 6 0 0 6 0 4 8 0 0 3 6 0 0 8 6 4 0 0 IN NS ns . north . example . COm. DNS サーバー た時間など 検索にかかっ からの応答 SERVER : 12 7 . 0 . 0 . 1 # 5 3 ( 12 7 . 0 . 0 . 1 ) WHEN : Sun Ju1 17 19 : 5 9 : 5 8 2 0 0 5 MSG S 工 ZE rcvd: 93 ( 誌面の都合上、で折り返しています。以下同様 ) ありそうなので返された応答 ・ AUTHORITY SECTION の NS レコードは関係が 応答 ・ ANSWER SECTION の SOA レコードは直接的な ます。図 4 では、 な応答以外にも、関係のありそうな情報を返すことがあり DNS サーバーは、問合せを受けた情報に対する直接的 います。 ドの内容と一致していれば、 DNS サーバーは正常に動いて ーンファイル north.example.com/zone の SOA レコー となっています。中央の四角形で囲んだ部分の内容が、ゾ 応答内容 ・セミコロンで始まっていない行は DNS サーバーからの 足情報 ・セミコロン ( ; ) で始まる行は dig コマンドが表示した補 おきましよう。 となっています。 には、返された応に関する権限をも AUTHORITY SECTION についてすこし補足して UNIX MAGAZINE 2005 . 9 っ DNS サーバーの情報が表示されます。たとえは図 4 の DNS サーバーの情報を得るには、次のコマンドを実行 ストの情報カられません。 ーバーにアクセスできず、ドメインやドメインに属するホ この情報カっていると、 DNS クライアントは DNS サ DNS サーバーの情報は NS レコードで提供されます。 確認します。 次は、ドメインを管理している DNS サーバーの情報を DNS サーバーの情報の確認 com." が権限をもっています。 ns. north. example. SOA レコードは、 DNS サーバー ・ TTL は 86 , 400 秒 ーバーは次の情報を返しています。 図 5 は、 NS レコードを問い合わせた結果で、 DNS サ dig north. example . com ¯t ns してください。 55 ・ DNS サーバーのホスト名は ns.north.example.com
図 2 named. conf ファイル op む土 ons { directory "/etc/namedb" ・ zone "north. example. com" { ・一 no h. examp 巵.com ソーンの情報 工 N NS 図 3 north.example.com ・ zone ファイル file . . COtn. zone" type master; $TTL 86400 SOA CNAME perseus ns . n0てにh. example 2 0 0 5 0 6 010 0 10 8 0 0 3 6 0 0 6 0 4 8 0 0 3 6 0 0 ns . nor し h . example 192 . 16 8 . 10 . 1 . com . . C om . r00 に . north. example . com. ( Seria1 Refresh after 3 hours Retry after 1 hour Expire after 1 week Minimum TTL Of 1 day IIS 工 N IN ゾーン全体に 関する設定 個別のホスト に関する設定 perseus 工 N ・ホストのアドレス情報 ( A レコード ) で@se 理 er ・を省略し、ローカルホストに問い合わせること は、 DNS クライアントの設疋ファイルがないという前提 に記述された DNS サーバーに問い合わせます。以下で る DNS クライアントの設疋ファイル (/etc/resolv. conf) @servet、を省略すると、ローカルホストまたは後述す 報を問い合わせ、応答を表示します。 dig は、 DNS サーバー server にドメイン dom れの情 dig [@servet、 ] dom れ [-t 切〃 e ] dig プログラムの実行形式は以下のとおりです。 dig プログラム 動作をするかを確認する必要があります。 を効にしている場合は、それぞれについて意図どおりの ーなどの特別な機能をもっことができます。これらの機能 外にも、アクセス権限の制御や認証、キャッシュ・サーバ DNS サーバーは、上記のような情報を提供する機能以 を DNS クライアントか取得できればよいことにしましよ 54 にします。 なお、 se にホスト名を指定するときには注意が必要 です。 DNS の設疋に問題があったりトラブルが起きてい ると、 servet 、に指定したホスト名が意図しない IP アドレ スに変換され、目的の DNS サーバーに問合せが届かない 可能性があります。よけいなトラブルに巻き込まれるのを 避け、 dig の問合せを指定した DNS サーバーへ確実に送 りたいのなら、 @se er ・は IP アドレスで才彳定するのが無 難です。 type は DNS で問い合わせる情報の種類で、 soa 、 ns 、 a のようにレコードを指定できます。また、 any ( すべての 情報 ) や axfr ( ゾーン輯幻などの特別な推定も可能です。 ドメイン窈辭長の確認 最初はドメイン情報を確認しましよう。 次のコマンドでは、 DNS サーバーに接続し、 north. example.com ゾーンの SOA レコードを表示します。 dig north . example . com ¯t soa 図 4 は、 DNS サーバー上で dig プログラムを実行し て、 north.example.com ドメインの情報を表示した様子 です。図では問合せに対する応答以外の情報も表示されて いて紛らわしいのですが、 UNIX MAGAZINE 2005.9
逆引きの場合は検索のキーを IP アドレスにするので、ゾ ーン名として IP アドレスを使用します。 今回のサンプルでは、 192.168.10 / 24 のネットワークが 1 つのゾーンとして管理されていると仮定します。すると、 ネットワーク・アドレス 192.168.10 の数字をドット (. ) を区切りとして遡頂にした、 10 . 168. 192 がゾーン名になります。さらに、謎したゾーンが、 ・ホスト名をキーとするゾーンか ( 正引き ) ・ IP アドレスをキーとするゾーンか ( 逆引き ) を区別できるように、 IP アドレスをキーとするゾーン名 の最後に、、 in-addr. arpa" を追加します。これは、、、 arpa という特別なドメインの下の、、ⅱト addr"(lnternet Ad- dress) ドメインに属するドメイン、という未になります。 arpa ドメインの下には、 IPv6 アドレスの逆引きのため の ip6 ドメイン (ip6. arpa) や、電話番号への変換に使わ れる e164 ドメイン (e164. arpa) もあります。 逆引きのゾーンを設定したファイルには任意のファイル 名を付けることができますが、この例ではゾーン名との対 応をとりやすいように、、 10.168.192. zone " にしました。 図 8 は、逆引きの設疋を追加した named. conf ファイ UNIX MAGAZINE 2005 . 9 /etc/namedb/l(). 168.192. zone アイルは narned. conf の言に従って、 次に、逆引きのゾーンファイルを用意します。 逆引きのゾーンファイル ルです。 図 8 逆引きの言綻おロした named. conf ファイル ゾーンフ zone "north . example . directory "/etc/namedb" ・ op し土 ons type file Z one " 10 type f 土 1 e master; "north . example . com. .168 .192 . 土 n - addr . arpa " " 10 . 16 8 . 19 2 . 2 one " master; 正引き用の ソーンの設定 逆引き用の ソーンの設定 ミニ実験室 0 このファ ・ TTL ( 生存時間 ) の設定 イルの内容のうち、 逆引き用のゾーンファイルを図 9 に示します。 とします。 ネットワーク・ 相違は、次の形式で PTR レコードカ当されている /north.example.com/zone と同オ兼です。 については、正引きのゾーンファイルである /etc/namedb ・ NS レコード (DNS サーバーの指定 ) ・ SOA レコード ( ゾーン全体の管理にかかわる情報 ) IN PTR ところです。 named プロセスに HUP シグナルを送ることで、変更後 動作中の DNS サーバーの設定に変更を加えたときは、 ァイル ) /etc/namedb/l(). 168.192. zone ( 逆引きのゾーンフ ゾーンファイル ) /etc/namedb/north.example.com/zone ( 正引きの /etc/named. conf ( 最初に読み込まれる設疋ファイル ) 設疋を読み込んで、逆引きができるようにしてみましよう。 ルは、以下の 3 つになりました。 DNS サーバーにこれらの これで、 north.example.com ドメイン用の設疋ファイ 言又疋ファイルの再読込み う未になります。 corn や perseus.north.example.com が返される、とい 192. in-addr. arpa を問い合わせると ns. north. example. たとえば、図 9 ではェの部分が、、 1 " なので、 1.10.168. を未します。 トに言当されたドメインの下のドメイン 終っていなければ named. conf の zone ステートメン 名前 ・ドットで終っていればルートドメインからの ( 完全な ) なお、ェ眦の部分は、 アドレスを問い合わせると、右側の″Ⅷが返されます。 PTR レコードカ第当されている場合、左側のェの IP kill -HUP narned のプロセス ID の誌定が反映されます。 59
図 9 10.168.192. zone ファイル引きのゾーンファイル ) root . ns . north . example . com. 工 N SOA ns . north. example . com. $TTL 86400 IN NS 2 0 0 5 0 7 0 8 0 0 3 6 0 0 6 04 8 0 0 3 6 0 0 10 8 0 0 Seria1 Refresh after 3 hours Retry after 1 hour Expire after 1 week Minimum TTL Of 1 day ゾーン全体に 関する設定 1 1 工 N IN PTR PTR ns . nor に h. example . com ←ネームサーノヾー ns . north. example . com. 逆引きの設定 perseus . north. example . com. 標準では /var/run/named. pid に named のプロセス ID が書き込まれるので (BIND9 の場合 ) 、次のコマンド で設疋ファイルを読み込ませてください。 ki11 —HUP ' cat /var/run/named. pid' 逆引きの乍の確認 それでは、 dig コマンドを使って逆引きを試してみまし 10.168.192. ⅱト addr. arpa ドメインの情報を取得する 0 dig 1 . 10.168.192. in-addr. arpa -t ptr 次のコマンドを実行します。 また、 192.168.10.1 の IP アドレスを逆引きするには、 dig 10.168.192. in-addr. arpa —t soa には、次のコマンドを実行しています。 60 0 定ファイルを検査する ・ named-checkconf や named-checkzone などで カ症しく反映されていません。そのようなときは、 定に失敗しているか、 DNS サーバーに設疋ファイルの内容 うに ANSWER SECTION が表示されない場合は、設 ゾーンファイルとは異なる表示になったり、図 12 のよ 述した内容が ANSWER SECTION に表示されます ( 図 設疋が正しくおこなわれていれば、ゾーンファイルに記 と指定することもできます。 dig ¯x 192 .168 . 10 . 1 IP アドレスを使い、 逆引きの場合は、 -x オプションと雹の順番で表記した ・設疋ファイルの再言囚みをもう一度試す ・ DNS サーバーを再起動する ・ DNS サーバーを -g オプションで起動し、画面に表示 されるメッセージを調べる などの方法で原因を探してください。 UNIX MAGAZINE 2005.9 グラムや DNS のクライアントの名前解決で使用されます。 lwres といった名前のライプラリとして提供され、 dig プロ おこなうプログラムのことです。 libresolv あるいは lib- リゾルバとは、 DNS サーバーに問い合わせて名前解決を リソルバ 正しく動作していると判断できます。 結果 ( 図 7 、図 11 ) カ弡されれば、ネットワーク越しでも DNS サーバーから dig コマンドを実行したときと同じ —t ptr dig @192 . 168.10.1 1 . 10 . 168 .192 . 1 Ⅱー addr. a て pa - dig 9192.168.10.1 ns . north. example . com 実行してください。 ます。 DNS サーバー以外のホストから、次のコマンドを 最初は dig プログラムを使って名前解決の動作を確認し DNS サーバーを指定して名前解決 外のホストから名前解決ができるかを確かめてみましよう。 している場合は、他のホストをつないで DNS サーバー以 たことになります。実験用の独立したネットワークを作成 正引きと逆引きの設定を終えたら、最低限の機能が揃っ DNS クライアントからの名前解決
図 14 DNS の問合せバケット をを ASTEC Eyes ー [ キャプチャデタ 00 奮 0 ⅳ 1 nc > ] 。 ファイル ( E ) 偏集旧表示 (Y) キャプチャ 0 モニタツール (1) 設定 0 ウインドウヘルプ旧 ) 実設ネットワーク フ ... マ発信元アドレスマ受信先アドレスマプロトコルマ長さマサマリ ロ住ー白 ! 圄 @ 住耋当観目↓む副 17.6 K パイトー■ー 80 引 i 印セ 引 132.168.10.1 Response Co Zero TC 日 s ldentification he Doma i n Name yst em 132.1 . 10 引 i ent DNS 6 0X0100 .000 0 132 R ID : 6 OPCODE:O RET:O NAME:ns. north. 0 Ⅲ叩間 OE : RETZO ME : 「ロ 0 日 . h. 問合せバケット Ræursi desi red Not レを Non - [ 日いい冊「 S い n 記 query Query ネットワー DNS のヘッダ ←応答バケット ←問合せバケット このバケットには問合せ情報が 1 つだけ含まれている Number of Quest i02 ロ t'hnber of Answer RRs 0 resource record(s) 如曲 e 「 of Aut hor ity RRs 0 resource 花 co 「 d ( 5 ) Number of Additional RRs 0 so ce record(s) Ouesti on Ouery Name Type Class ワークスペース 1 ns.north.example.com ホストの 旧アドレスを問い合わせた ns. h. ex p 尾.com 1 (): & host address 1 (the lnternet) 実験ネットワーり 図 15 DNS の応 / ヾケット 園住当圄 0 斗ロ ラー実ネットワーク 自ファイ丿い日編集 ( 印表示 OØキャプチャ 0 モこタ ・朝 ASTEC±yes. [ キャプチャデトタく「 0 奮 0 ⅳ 1 上れ c 〉 ] Number of Questi ons Number of Answer RRs Number of Authority 5 Number of Add 社 i on 引 RRs 鈊 es い on Ouery Name [ 1 / 2 ] ID•80 client ー > 192.1 コロ .1 DNS ツール設定 0 ウインドウヘルプ ( 印 権限情報 (Authority レコード ) が 1 つ 問合せに対する応答レコードが 2 つ、 このバケットには問合せ情報が 1 つ、 含まれている 問合せ情報 応答レコード 権限情報 Type C lass Type C lass Time To 凵冊 Resource Data Length Canonical N 毓 8 翫虐冊 r Type 刊冊 To Live R 0 リ「 Data Length Ho 虱 Address Name Type C ” T ime To 凵冊 Resource Data Lengt h Authoritative Name Servet ・ ns.north.example.com 192.168.10.1 e rseus. norf.h. examp ー e. ) 86400 1 (the lnternet) 1 (): a ト address) perseus ・ north. example. perseus. north. example. 00第 86400 1 the lnter 「 jet 5 (CNAME: ト旧 canonical name fo 「 an 引 ias) 2 86400 1 (the lnternet) 2 (NS: an を沚 ho 「は ati name server) north. examp . 2 代 so リ「 ce 00 「 d ( 3 ) 1 花「 ce 「託 0 「 d ( s ) 0 record S ns.north.example.com 1 (): & address) 1 (the lnternet) ns. north. 尾 . com ns.north.example.com は perseus. no h. examp 巨 com の別名として登 録されている perseus.north.example.com の旧アドレスは 192.168.10.1 に / 2 ] ID : 81 19216810.1 - > client DNS ワークスペース 1 UN 工 X MAGAZINE 2005 . 9 実験ネットワーク ク・ミニ実験室 0 63
図 10 192.168.10 のネットワークの情報を dig で表示 $ d 土 9 IO .168 .192 . 土 n ー addr. arpa ーし soa へ 192.168.10 のネットワークを指定 くく > > DiG 9 . 3 . 1 くく > > 10 .168 . 192 . 土 n ー addr. arpa -t soa ( 1 server found) 910ba1 options : printcmd GO む : ->>HEADER< く一 opcode: QUERY, status : NOERROR, id: 56987 flags : qr aa rd ra; QUERY: 1 ー ANSWER: 1 , AUTHORITY: 1 ー ADD 工 T 工 ONAL: ネットワ 0 QUESTION SECT 工 ON: ー 10 .168 .192 . 土 n ー add て . arpa ・ ANSWER SECTION : IN SOA 192.168.10 のネットワークの SOA レコード 10 .168 .192 . in - addr. arpa . 86400 工 N root . ns . north . exam 1 e . com . 2 0 0 5 0 7 0 8 0 0 S OA ns . north. example . com. # , 10 8 0 0 3 6 0 0 6 0 4 8 0 0 3 6 0 0 AUTHORITY SECT 工 ON : 10 .168 .192 . 土 n - addr . arpa . Query time : 2 msec 8 6 4 0 0 工 N NS ns . north. example . com. SERVER : 12 7 . 0 . 0 . 1 # 53 ( 12 7 . 0 . 0 . 1 ) WHEN : Mon JuI 18 17 : 5 0 : 16 2 0 0 5 MSG S 工 ZE rcvd: 116 図 11 192.168.10.1 のアドレスを dig で逆引き d 土 9 ー・←検索の種類は逆引き ->>HEADER<<- opcode : QUERY, status : NOERROR, id: 67 GOt answer : 910ba1 options : printcmd ( 1 server found) くく > > DiG 9 . 3 . 1 くく > > 1 . 10 . 16 8 . 192 . in- addr. arpa ーし pt r 192.168.10.1 の旧アドレスを検索 flags: qr aa rd ra; QUERY: 1 ′ ANSWER : 2 ′ AUTHOR 工 TY : 1 ー ADD 工 TIONAL: 0 QUEST 工 ON SECT 工 ON: ー 1 . 10 .168 .192 . 土 n ー addr . arpa . ANSWER SECT 工 ON : 1 . 10 .168 .192 . 土 n - addr . arpa . 1 . 10 . 16 8 . 192 . in ー addr . ar a . AUTHORITY SECT 工 ON : 8 6 4 0 0 8 6 4 0 0 工 N 工 N 工 N 工 N PTR PTR PTR NS 192.168.10.1 の旧アドレスに対応する / ホスト名が 2 つみつか 0 た ns . north . example . com. erseus . nor し h . . . ns . north . example . com. 10 .168 .192 . 土 n ー addr . arpa . 86400 Query time : 2 msec SERVER : 12 7 . 0 . 0 . 1 # 5 3 ( 12 7 . 0 . 0 . 1 ) WHEN : Mon こ uI 18 17 : 4 5 : 0 3 2 0 0 5 MSG SIZE rcvd: 113 UNIX MAGAZINE 2005.9 ーク・ミニ実験室 0 61
連載 ネットワーク・ミニ実験室 ロ NS サーバーの動作確認 荒井美千子 最近の悩みの種は、本やマンガなどに場所をとられ、生 活空間がだんだん狭くなってきたことです。当初は本棚の 上にさらに箱詰めにした本を積み重ねていましたが、それ もそろそろ限界に近づいてきました。かといって、クリッ ク 1 つで夜中でも欲しい本を注文できる竟では、理性よ りも誘惑カってしまうのはしごく当然のことです。 本は読みたい。でも、本棚に空きスペースはない。そこ で行き着いたのが電子書籍です。本棚の代わりに HD に入 れておけばすむのですから、スペース効率はきわめてよい はずです。それに、購入したらすぐに読めるのも魅力です。 さっそく、適当な本を 1 冊購入してみることにしました。 それから 1 カ月。電子書籍はまだ数ベージしか読み進め ていませんが、同時期に購入した文庫本は何冊か読み終え ています。、、 HD を本棚代わりにしよう ! " 計画は、すっか り頓挫してしまいました。 通勤中に電車の吊り革に掴まりながら本を読むという ライフスタイルと、ノート PC のなかの電子書籍は合っ ていなかったのでしよう。薄くて軽くて手軽に持ち歩ける 電子ペーパーの実用化が待ち遠しいところです。いすれは UNIX MAGAZINE を電子ペーパーで読める日もくるで 日 ND9 を動かす しよう。 UNIX MAGAZINE 2005.9 1 http://www.isc.org/ ・コンノヾイル 入手し、 (Berkeley lnternet Name Domain) のバージョン 9 を BIND 前回は、 ISC のサイト 1 から DNS サーバー 図 1 north.example.com ドメイン DNS サーバー ホスト名 ns. north. example. C01Ⅱ perseus.north.exarnple.com ns. nort h. example. corn IP アドレス 192.168.10.1 実験に使用するサンプルドメインの設疋 ・設疋ファイルの衾査 ・ DNS サーノヾーの起動 をおこないました。 今回は、図 1 のサンプルドメインを使用し、 DNS サー ノヾーの動作を確認したり、 IP アドレスからホスト名を検索 したりする方法を紹介します。 なお、 こでは設疋ファイルとして、 /etc/named. conf ( 図 2 ) /etc/namedb/north.example.com/zone ( 図 3 ) を使用します。 DNS サーバーの動作確認 最初は DNS サーバーの動作確認から始めましよう。 BIND には、 DNS サーバーにアクセスして情報を取得 するプログラムがいくつカイ寸属しています。そうしたプロ グラムの 1 つである dig (domain information groper) を使用し、 DNS サーバーの動作を確認します。 何を調べれば DNS サーバーの動作を確認したことにな るのかは難しい問題ですが、ますは設定ファイルに記述し ・ドメインの情報 (SOA レコード ) ・ DNS サーノヾーの情報 ()S レコード ) 53
図 12 ANS 、 VER SECTION " か表示されない $ d 土 9 1 . 10 .168 .192 . 土 n ー addr . arpa ーに ptr ` 192.168.10.1 に対して逆引きを実行 くく > > DiG 9 . 3 . 1 くく > > 1 . 10 . 16 8 . 192 . in ー addr . arpa ー t に r ( 1 server found) 910ba1 options : printcmd GOt : - >>HEADER く < ー opcode : QUERY, flags : qr aa rd ra; QUERY: AUTHORITY SECTION: 10 .168 .192 . 土 n ー addr . arpa . 3600 QUEST 工 ON SECT 工 ON: ー 1 . 10 . 16 8 .192 . in-addr . ar a . status : NXDOMA 工 N ′ id: 56083 1 ー ANSWER: 0 ー AUTHOR 工 TY: 1 ′ ADD 工 T 工 ONAL: 0 IN IN DNS サーバーに対して逆引きをおこなった ANSWER SECTION が返されなかった ns . nor し h. example . com. # , SOA 10 8 0 0 3 6 0 0 6 0 4 8 0 0 3 6 0 0 DNS サーバ—ns.north.example.com が管理している PTR r00 に . ns . north . exam 1 e . com . 2 0 0 5 0 7 0 8 0 0 Query time : 2 msec SERVER : 12 7 . 0 . 0 . 1 # 5 3 ( 12 7 . 0 . 0 . 1 ) WHEN : Mon Ju1 18 18 : 13 : 3 9 2 0 0 5 MSG SIZE rcvd: 104 図 13 /etc/resolv. conf の言又疋 nameserver 192 .168 . 10 . 1 ・利用する DNS サー / ヾーの 旧アドレスを指定 リゾルバの標準的な日定ファイルは、 /etc/resolv. conf 10.168.192. in - add 「 . arpa ドメインに 192.168.10.1 の 設定がみつからなかったことを意味する です。リゾルノヾの設疋ファイルを使えば、利用する DNS サーバーを指定することができます。ローカルホスト以外 のホストを標準の DNS サーバーとして使いたいときは、 resolv. conf ファイルに言します。 図 13 は、 DNS サーバーとして 192.168.10.1 を指定し た resolv. conf です。 DNS サーバーの拓疋は、、 name- server" の後ろに空白文字と利用する DNS サーバーの IP アドレスを言当杢します。 ネットワーク・アナライザで DNS の問合せと応答の様 子を確認しておきましよう。 DNS クライアントから、 dig ns . north. example . com を実行し、 ns.north.example.com の名前解決をしてみま す。すると、図 14 に示したとおり、 1. DNS クライアント (client) から DNS サーバー ( 192. 168.10.1 ) に対して、問合せのバケットカ毓れる 62 2. DNS サーバーから DNS クライアントへ応答バケット が返される のように動作しています。この図を見ると、 ・バケットの種類を表すヘッタ音分 ・問合せの内容を表す、、 Question という部分が含まれているのが分かります。 続いて図 15 を見てください。こちらは、 DNS サーバ ーから返された応答バケットです。 DNS ヘッダの部分には、このバケットに含まれる情報 の種類と数が書かれています。 問合せ情報の数 (Number of Questions) : 1 応答レコードの数 (Number of Answer RRs) : 2 権限情報の数 (Number of Authority RRs) : 1 ・付加情報の数 (Number of Additional RRs) : 0 DNS ヘッダの後ろには、問合せや応答レコードの内容 がヘッダに書かれていた数だけ並んでいます。 dig の実行 結果から ns. north. example. corn に対する応答レコード を抜粋すると図 16 のようになりますが、これらに対応す る情報カ咽 15 の、、応答レコード " と示した箇所に書かれて います。図 15 と図 16 の表示をくらべると、 dig プログラ UNIX MAGAZINE 2005 . 9