DNS
■4つのアドレス・最後の1つ
宛先IPアドレスをどうやって知るかが本日の課題。
まず、一番簡単な方法はデータ転送を望むアプリケーションやユーザーが、宛先のIPアドレスをすでに知っているという形。
実際に、「http://61.193.0.66/~aji/」と入力するとWEBページが検索できる。
これはつまり、「Roads to Node」が置いてあるサーバのIPアドレスが「61.193.0.66」だからこういうことが可能になる。
宛先IPアドレスを手動に入力して、WEBページを見に行ったというだけのことだが。
しかし、単なる数字であるIPアドレスは覚えにくいので、ドメイン名とホスト名が使われる。
■DNS
要は、送信する相手のコンピュータの名前。
「Roads to Node」が置いてあるコンピュータは、「www5e.biglobe.ne.jp」っていう名前なのか?
もう少し細かく言えば、「biglobe.ne.jp」という組織の「www5e」というコンピュータという意味。
この組織名がドメイン名。コンピュータ名がホスト名。
他のコンピュータと区別するために、ユニークな名前でなければならない。
そして、IPアドレスのネットワーク番号のように、管理する組織がある。
ドメイン名はIPアドレス同様ICANNが管理をしている。
ICANNと各地域のNICが管理する。
ホスト名は、IPアドレス同様その組織の管理者が管理する。
「www5e.biglobe.ne.jp」の場合、JPNICから割り振られたbiglobe.ne.jpという組織の管理者がこのコンピュータをwww5eと名付けようと名前を付けたわけだ。
ここで出てくるのが、DNSだ。
DNSは名前とIPアドレスを対応させるシステムだ。
つまりこういうこと
名前とIPアドレスの対応データベースを持っているDNSサーバに対し、問い合わせをしデータ転送をしたいデバイスのIPアドレスを手に入れる。
DNSサーバは各組織に1つずつあり、その組織のドメイン名、ホスト名のみを管理している。
<じゃあ、他の組織のドメイン名、ホスト名からIPアドレスを知りたい場合はどうするの?>
他の組織のホスト名、ドメイン名はその組織のDNSサーバに聞く。
このような形となる。
DNSとは、世界中のドメイン名、ホスト名を管理する一種の分散型データベースであるということ。
キャッシュする理由としては、同じところにデータ転送する場合、何度も問い合わせをするのは無駄だから。
なので、一定時間ドメイン名とIPアドレスの対応を保存しておくことによって問い合わせの時間を短縮を図る。
今現在、インターネットはすべてドメイン名・ホスト名でサービスを行うようになっている。
DNSがなければ、インターネットは立ちいかないようになっている。
ちなみにもう一つ宛先IPアドレスを知る方法がある。
■4つのアドレス・完結
おさらい
データ転送を希望するホストがあったとする。
送信元のアドレスは?
⇒送信元アドレスはNICを取り付けられたら自動的に。
送信元IPアドレスは、手動かDHCPで割り振られてわかる。
それでデータ転送をするのだが、ユーザーもしくはアプリケーションの宛先のホスト名もしくは、NetBIOS名を決定すると?
DNSかかNetBIOS over TCP/IPで宛先IPアドレスがわかります。
宛先IPアドレスがわかるとARPで宛先MACアドレスがわかり、データ転送が可能になる。