経営&IT | 総合ITメディア | ITアーキテクト | ネットワーク&通信 | Windows実践

NetworkWorldOnLine
GO
最新号のご案内 アンケート&広告資料請求 カンファレンス
週刊メールマガジンお申し込み
詳細はこちら
NETWORK NEWS
TECHNOLOGY
BEGINNER
INFORMATION&SERVICE PR

TOP > ネットワークの基礎講座 >

ビギナーのためのネットワークの基礎講座

基礎技術をきちんと押さえる
TCP/IP理解できていますか?

第10回 hostsファイルは通信相手の住所録

2006年1月19日更新
基礎中の基礎でありながら、ネットワークを学ぶ者にとっては鬼門ともなるTCP/IP。本講座ではTCP/IPを徹底理解!」に引き続き、TCP/IPをていねいに解説していく。第10回は、DNSの基本とも言えるhostsファイルの役割などを紹介しよう。

第1回 ブロードキャストアドレス/マルチキャストアドレス

第2回 ARPはEthernetフレームに乗って運ばれる

第3回 IPヘッダの構造を学ぼう!

第4回 TTLで迷子のパケットをなくそう

第5回 ポート番号はTCPヘッダでチェックする

第6回 データ送信の順序はTCPヘッダで知らせる

第7回 通信の確立を支える裏方の「フラグ」とは?

第8回 「ウィンドウサイズ」で通信の効率がアップする!

第9回 マルチメディア通信に最適な「UDP」

第10回 hostsファイルは通信相手の住所録

第11回 インターネットにおける名前解決法とは?

第12回 ホスト名からIPアドレスを求める「逆引き参照」

pr 強力なITインフラを構築する DELL & Microsoftの事例を一挙公開
pr AMD Turion搭載ビジネスノートの決定版【DELL Latitude D531】
pr 6割が満足!2007年夏のエンジニアボーナス平均72万円
pr マーケティング活動に特化したCRMソリューション・パートナー

ホスト名とIPアドレスの対応表
「hostsファイル」は名前解決の基本だ

 TCP/IPで通信相手を指定する場合、IPアドレスを使用する。IPアドレスは32ビットのビット列で構成され、8ビットずつ10進数に変換し、「.」で区切って表記する。例えば、「192.168.1.1」というようになる。しかし、数字の羅列では覚えるのがたいへんだ。そこで、コンピュータに名前をつけて指定する方法が登場した。それが、「ホスト名」だ。コンピュータそれぞれに対して意味のある名前をホスト名に設定すれば、処理は楽になる。

 ただし、通信するためにはIPアドレスが必要だ。というのも、IPヘッダで送信元IPアドレスと宛先IPアドレスの情報が必要だからである。つまり、ホスト名からIPアドレスを割り出すなんらかの仕組みを構築しなければならない。このような、ホスト名からIPアドレスを求めることを「名前解決(Name Resolution)」と呼ぶ。

 では、この名前解決はどのようにして行われるのだろうか。以前は、各コンピュータに「hostsファイル」というテキストファイルを格納していた(図1)。hostsファイルには、ホスト名とIPアドレスの対応表を記述する。通信相手のホスト名を指定すると、hostsファイルの中からホスト名に対応したIPアドレスを引き出し、変換してから通信を行う。

図1● 以前の名前解決では、ホスト名とIPアドレスの対応表であるhostsファイルを各コンピュータに格納し、通信の際にそれを参照して変換作業を行っていた

 しかし、この方法ではある問題が発生する。それは、新しいコンピュータがネットワークに追加されるたびに、そのコンピュータのホスト名とIPアドレスの対応を各コンピュータのhostsファイルに追加するという作業だ。新しいコンピュータが1台であれば問題ないかもしれないが、10台、20台、100台ともなれば、相当の作業が必要となる。さらに、hostsファイルを保持するコンピュータの数も多ければ、倍の作業が生じるだろう。

hostsファイルはDNSサーバに格納
追加作業の負荷を減らそう

 そこで、考え出された仕組みが「DNS(Domain Name System)」だ。ホスト名とIPアドレスの対応表を個々のコンピュータではなく、DNSサーバで管理して変換作業を行うというものである。各コンピュータは、必要に応じてDNSサーバに通信を要求し、名前解決を行う。つまり、コンピュータはDNSサーバのIPアドレスを登録するだけで、ネットワーク上のどのコンピュータとも通信できるというわけだ。

 例えば、図2のようなネットワークで、ホスト名「venus」というコンピュータから「mars」というコンピュータに通信をする場合、venusはまずDNSサーバに対してmarsのIPアドレスを問い合わせる。これに対して、DNSサーバは該当のIPアドレスを返し、venusはそのIPアドレスを使用して目的のmarsと通信する。

図2● hostsファイルをDNSサーバに格納し、各コンピュータはホスト名を問い合わせてIPアドレスを取得する

 DNSサーバのメリットは、ネットワーク上に新しいコンピュータが追加されたとしても、DNSサーバ上のhostsファイルを更新するだけでよいということだ。ネットワーク管理者は、1台のサーバをメンテナンスするだけで、以前の仕組みよりも作業負荷は大幅に軽減される。

 ちなみに、インターネットでウェブページを見るためのURLで、例えば「www.yahoo.co.jp」などはウェブサーバのホスト名だ。つまり、ブラウザでウェブページを見る場合、このホスト名をDNSサーバに問い合わせてIPアドレスを取得していることになる。

 それでは、インターネット上のすべてのコンピュータのホスト名とIPアドレスをDNSサーバに登録しているのかというと、それは無理な話だ。インターネットには何億というコンピュータがつながっており、すべての情報を登録するのは現実的ではない。この問題の解決方法については、次回解説する。

(C) Office N-Study http://www.n-study.com/

 会社案内 | 広告掲載について | サイトマップ | プライバシー・ポリシー | RSSについて RSSフィード
Copyright ©IDG Japan, Inc. All Rights Reserved.