
集中連載:DNSの仕組みと運用(2)
インターネットを支えるDNS
加地眞也
2001/12/27
■nslookupで実際のDNSの動作を探ってみよう
WindowsやLinux/UNIXには、「nslookup」というDNSクライアント・コマンドが付属している。普段は隠れてほとんど見えないDNS検索も、このコマンドを使って実際の動作をシミュレーションすることができる。ここでは、「www.atmarkit.co.jp」のIPアドレスをどのように見つけているか、実際に試して確認してみよう。
前回説明したDNS検索のフローを、もう一度思い出してほしい。DNS検索では、まずルート・ネーム・サーバをスタート・ポイントにして始める必要がある。そのためには、このルート・ネーム・サーバのIPアドレスなどを知らなければならない。
一般に、多くの「フルサービス・リゾルバ」DNSサーバの起動時に必要とするのが「ルート・キャッシュ」の設定だ。これは、ルート・ネーム・サーバの一覧表である。例えばBINDであれば、「named.root」ファイルや「named.cache」ファイルとして設定しておかなければならない。ルート・キャッシュはあまり頻繁に内容が変更されることはないが、InterNICのWebページに使用すべき一覧が用意されているので、定期的に更新する方がよい。
一覧を見てもらうと分かるが、実はルート・ネーム・サーバは1台だけではない*3。現在は13台用意されている。これは、負荷分散とともに障害時対策のためで、その多くは米国に配置されているが、全世界の数カ所にも分散配置されている。日本にもWIDE(Widely Integrated Distributed Environment:慶応義塾大学などを中心に設立された日本のインターネット学究系団体)プロジェクトで1台を運用中だ。保持している情報は完全に同じなので、どれを利用してもよい。通常はランダムに選択される。
|
さて、では実際にnslookupコマンドを実行してみよう。ここではWindowsを例に説明するが、ほかのOSでも要領は変わらない。
|
nslookupコマンドは対話型コマンドとしても使用できるので、引数なしで起動すると、入力プロンプト待ちになる。この後、さまざまなコマンドやオプションを指定して使用する。通常は、皆さんのPCで「DNSサーバ」として設定されているホスト(つまり「フルサービス・リゾルバ」)が「Default Server」として表示されるだろう。これは、DNS要求の送信先DNSサーバだ。ここで「www.atmarkit.co.jp」と入力しても単純にIPアドレスが得られるが、これは実際にはフルサービス・リゾルバが代わりにすべての検索を行っているだけだ。
それではつまらないので、ここではフルサービス・リゾルバが普段行っている検索をnslookupでシミュレーションしてみよう。
|
上記はオプションの設定だ。検索方法で「リカーシブ(再帰検索)を使わない」、すなわちイテレイティブ検索(反復検索)に変更する。厳密に、そのDNSサーバが持っているゾーン情報だけに限定して、それらゾーン情報だけを純粋にたどってみる。また今回は必須ではないのだが、typeオプションでAレコードの検索のみを行うことを明示的に指定しておこう。
まず最初は、ルートから検索を開始する。Default Serverをルート・ネーム・サーバに変更しよう。ルート・ネーム・サーバのIPアドレスは、先ほどの一覧から適当に選べばよい。ここでは、ネットワーク的に最も近い場所にあるWIDEのサーバを選択する。
|
このサーバで検索を行おう。「www.atmarkit.co.jp」と入力すると、DNSサーバは自動的に自身が返答できる情報を判断して。jpドメインのDNSサーバ情報を返答してくれる。
|
これが、jpドメインのDNSサーバ一覧だ。やはり複数台で運用されているのが分かる。また、JPNICだけではなく、ほかの大手プロバイダも運用に協力しているのが分かるだろう。インターネットはこうした多くの組織による協力の下、運用されている。おかげで、わたしたちは苦労なく利用できているというわけだ。
jpドメインのDNSサーバが分かったので、次はDefault ServerをjpドメインDNSサーバへと切り替える。やはり、指定するサーバはどれでもよい。ここではJPNICを選ぼう。そして、「www.atmarkit.co.jp」を指定して問い合わせる。
|
おや? と思われただろうか。「co.jp」ドメインのDNSサーバではなく、「atmarkit.co.jp」ドメインのDNSサーバ一覧がすでに入手できてしまった。実は、これは運用依存なのだが、co.jpドメインDNSサーバはjpドメインDNSサーバと同じホストなのだ。つまり、同じサーバで「jp」と「co.jp」のゾーン情報を管理している。現状では、分けて運用するほどの負荷や手間はないという判断なのだろう。
試しに、jpドメインDNSサーバで検索レコードをNSに指定して、jpドメインとco.jpドメインのDNSサーバ情報を検索してみた。まったく同じホストを示しているのが分かる。
|
DNSサーバとしては、自身が知っている中で最も階層が深い「atmarkit.co.jp」を返答してきたというわけだ。ちょっとしたショートカットだ。
ようやく、「atmarkit.co.jp」ドメインのDNSサーバが判明した。これまでと同様に、Default Serverをatmarkit.co.jpドメインのDNSサーバへ切り替えて、最後の検索を行おう。
|
これで、最終的にIPアドレスは「211.4.251.193」だと判明した。また、「www.atmarkit.co.jp」は実はエイリアス(CNAMEレコード)で、実際のAレコードでの名前は「atmarkit-www.atmarkit.co.jp」だということも分かる。ここでは正引きを試してみたが、もちろん逆引きも同じ要領で検索することができる。いかがだろう。興味があれば、ぜひ自社のWebサーバなどがどのように登録されているか、確認してみてはどうだろうか?
ところで、こうした検索が毎回行われているのかといえば、実はそうではない。フルサービス・リゾルバとして動作するDNSサーバは、通常、「キャッシュ・サーバ」としても動作しており、キャッシュを再利用することで毎回の検索を回避していることが多い。最終目的となるレコードを保持していればそれを回答すればよいし、またco.jpドメインDNSサーバ名をすでにキャッシュしていれば、次回はわざわざルート・ネーム・サーバから再び検索しなくとも、co.jpドメインDNSサーバから始めることもできる。キャッシュ・サーバについては、次回で詳しく述べよう。
|
DNSの仕組みと運用 バックナンバー
- 第1回 DNSの仕組みのキホンを理解しよう!
- 第2回 インターネットでDNSはどのように活躍している!?
- 第3回 DNS導入に向けて必須な予備知識
ネットワーク・コマンドでトラブル解決
トラブルシューティングに便利な各種コマンド/ツール事典。各ツールの活用法をまとめたTipsも順次アップデート!
- 第1回 つながらないネットワークの原因を特定する!
- 第2回 ネットワークトラブル、まずはホストの設定を見直そう!
- 第3回 ルーティングのトラブル、まずはその仕組みから理解!
- 第4回 イーサネットの通信は正しく行えているか?
- 第5回 TCP/UDPの接続ステータスを確認しよう!
- 第6回 DHCPの自動設定機能をうまく使いこなすコツは?
- 第7回 DNSの設定と動作は正しいか?
コマンドを使ってトラブルシューティング
社内のPCが突然、メールを受信できなくなり、Webも見られない環境になってしまった。そんなとき、どのように対処するべきか
- 第1回 LANから外に出られない!?
- 第2回 どうして課長だけプリントできない?
- 第3回 ネットワークに同じIPアドレスが2つある?
- 第4回 同じメールしか受信できない!?
- 第5回 ファイルがアップロードできない?
- 第6回 私だけネットワークにつながらない!?
- 第7回 特定のサイトにだけアクセスできない
- 第8回 無線LANでメールがたまに受信できない?
- 第9回 外部を勝手に攻撃しているのは誰?
- 第10回 夜になるとネットワークが遅くなる?
- 最終回 怪しいサイトに飛ばされるんだけど
ツールを使ってネットワーク管理
名前しか知らない後輩君がやってきた。彼によると、コマンドはすでに古くツールがクールだという。ならば教えてもらおうではないか
- 第1回 後輩のツール君曰く、コマンドはもう古い!?
- 第2回 勝手にネットにつないでるマシンを探せ!
- 第3回 私用メールする子にお仕置きを
- 第4回 OSやアプリケーションの箱がなくなっても大丈夫?
- 第5回 俺の「パスワード:*****」って何でしたっけ?
- 第6回 ユーザー名と同じ安易なパスワードを撲滅せよ!
- 第7回 いきなりナウでヤングなWebサイトを管理しろって……
- 第8回 「POPFile」でスパムと無駄な時間は除去じゃ!
- 第9回 それはスパムか否か、POPFileの振り分けを鍛える
- 第10回 情報漏洩防止のためにPC監視!?「WatchYourPC」
- 第11回 とにかく社内でWinnyの起動をやめさせたい
- 第12回 USBでコピーデータを家に持ち帰らせたくない
- 第13回 パスワード、記憶に頼っていて大丈夫?
- 第14回 サーバ異常をメールで知らせる統合監視ツール
- 第15回 メールサーバがいっぱいですよ、と警告されたら
- 第16回 出張中のメール送信にご用心!
- 第17回 安いホスティングに引っ越しって簡単にいうけど
- 第18回 WebサーバにFTPできないんですけど……
- 第19回 PC環境の移行。あなたならどうする?
- 第20回 サーバのリモートバックアップをさせたい
DNS Tips
- 第1回 DNS Tips
- 第2回 DNS Tips
- 第3回 DNS Tips
- 第4回 DNS Tips
- 第5回 DNS Tips
- 第6回 DNS Tips
- 第7回 DNS Tips
- 第8回 DNS Tips
- 第9回 DNS Tips
- 第10回 DNS Tips
- 第11回 DNS Tips
- 第12回 DNS Tips
- 第13回 DNS Tips
- 第14回 DNS Tips
| 「Master of IP Network総合インデックス」 |
TechTargetジャパン
- 実機では測定できない性能を測定? (2012/2/7)
システムの完成前に、達成し得る性能値や必要なサーバリソースを知るには? その解となる「性能シミュレーション技法」を解説 - 性能チューニング個所の検討 (2012/1/30)
アプリのチューニングや環境増強で、どの程度改善が見込める? 今回からは「実際に活用できる性能対策」を解説します - 遅いところを直すだけでいいのですか? (2012/1/24)
負荷が集中したときの性能ボトルネックを改善するのに、アプリケーションサーバとDB、どちらを優先すべきでしょう? - cloudfoundry.comを使ってみよう (2012/1/19)
VMwareが提供するPaaSプラットフォーム「CloudFoundry」。注目を集めるこの基盤を活用してPaaSを構築!
|
|
キャリアアップ
スポンサーからのお知らせ
- - PR -
イベントカレンダー
- - PR -
