●ホスト名とIPアドレスを変換するしくみ
 では,コンピュータの中では,どのようにしてホスト名からIPアドレスへの変換を行っているのでしょうか?
 Webブラウザで,あるURLにアクセスしたときの例を図4に示します.まず,ユーザーがWebブラウザに閲覧したいURLを指定します.するとWebブラウザは,URLを解析してプロトコルホスト名パス名ポート番号に変換します.
 次にWebブラウザは,リゾルバと呼ばれるソフトウェアにホスト名をIPアドレスに変換するように依頼します.リゾルバは,後述する複数の方法を用いてホスト名をIPアドレスに変換し,Webブラウザに回答します.
 Webブラウザは,ホスト名がIPアドレスに変換できましたので,IPアドレスとポート番号を指定して,TCPソフトウェアに信頼性のあるコネクションの確立を依頼します.コネクションを確立できれば,WebブラウザとWebサーバが通信できる状態になります.
 最後にWebブラウザは,Webサーバからデータを取得し画面に表示します.
 リゾルバソフトウェアは,アプリケーションから依頼を受けて,ホスト名をIPアドレスに変換する機能を果たすソフトウェアです.このようにリゾルバソフトウェアは,TCP/IP通信おいて非常に重要な役割を行っていますので,通常はTCP/IPソフトウェアの一部として扱われます.
 ネットワーク機能を持ったUNIX系やWindows95/NT系のオペレーティングシステムでは,TCP/IPソフトウェアがオペレーティングシステムの一部となっていますので,リゾルバソフトウェアは,オペレーティングシステムのライブラリとして提供されます.
 リゾルバソフトウェアは,おもに 1.hostsファイル2.NIS3.DNS の3つの方法でホスト名をIPアドレスに変換しています.
 次に,それぞれについて解説します.

  〔図4〕Webブラウザに入力されたURLからWebサーバと通信するまでの流れ

〔図4〕Webブラウザに入力されたURLからWebサーバと通信するまでの流れ

1. hostsファイル
 hostsファイルは,ホスト名とIPアドレスの関係をそれぞれのコンピュータの中にファイルとして保存しておきます.リゾルバは,このファイルを参照してホスト名をIPアドレスに変換します.
 各オペレーティングシステムにおける参照ファイルは,
 
 UNIX系の場合は
      /etc/hosts

 Windows95系は
      c:\Windows\hosts

 WindowsNT系は
      c:\Winnt\system32\drivers\etc\hosts
 
となります.hostsファイルの例を図5に示します.各行が1つのIPアドレスに対応する行で,最初にIPアドレスがあり,それ以降にホスト名を記述します.あるIPアドレスが複数のホスト名を持つ場合は,スペース区切りで並べることができます.
 hostsファイルは,各コンピュータにそれぞれ存在しますので,新しいホスト名を定義したいときには,すべてのコンピュータのhostsファイルに定義を追加しなくてはいけません.また,IPアドレスが変わったり,ホスト名が変わったりするたびに,すべてのコンピュータのhostsファイルを変更しなくてはなりません.
 このように,hostsファイルを使う場合は非常に管理の手間がかかります.そのため現在では,変更の可能性がほとんどなく,かつ2.3.の手段を使えないホスト名の定義だけをhostsファイルに記述します.
  〔図5〕hostsファイルによるホスト名→IPアドレス変換

〔図5〕hostsファイルによるホスト名→IPアドレス変換



 CQ出版 TOP OPENDESIGN TOPOPENDESIGN Online目次に戻る
  
Copyright CQ Publishing Co.,Ltd. 1997-2001