■ 4つのアドレス・最後の1つ
送信元MACアドレス。送信元IPアドレス。宛先MACアドレス。
この3つのアドレスをどうやって知るかをここ3回でやってきたわけだ。
ウッス。
今回は最後の1つ。
宛先IPアドレスをどうやって知るか、だ。
前回、DNSとかなんとかいうのを話していましたが、それですか?
それだけではない。
まず、一番簡単な方法は。
方法は?
データ転送を望むアプリケーションやユーザが、宛先のIPアドレスを知っているという形だ。
はい?
だから。
最初から知ってれば問題ない。
そりゃ確かにそうですね。
なんだその疑いのまなざしは。
なら、ブラウザのアドレス欄に「http://61.193.0.66/~aji/」と入力してenterを押してみたまえ。
こうですか?
[Figure27-01:IE・アドレス欄]
はわっ、「Roads to Node」が開きましたよ。博士。
いつもは「www5e.biglobe.ne.jp」と打ってたのに。
うむ。
つまり「Roads to Node」が置いてあるサーバのIPアドレスが「61.193.0.66」だからこういうことが可能なのだ。
宛先IPアドレスを手動で入力して、Webページを見に行ったんですね。
そういうことだ。
このように、データ転送をしたい相手のIPアドレスが最初からわかっていれば、データは転送できる。上の例ならば、Webページの転送、HTTPを行ったわけだ。
ははぁ。
しかし、困ったことに普通人間というのは、単なる数字の羅列を覚えるのは不得手だ。
こっちのページは「61.193.0.66」。あっちのページは「xx.xxx.xx.xx」などと覚えていられない。
そうですよねぇ。数字って語呂合わせでもしないと覚えづらいですよね。
僕なんか大学の学籍番号をよく間違えますよ。
それは君がネット君だからだ。以上。Q.E.D。
ともかく、単なる数字であるIPアドレスは覚えにくい。なので、ドメイン名とホスト名というものが使われる。
どめいん名に、ほすと名?
■ DNS
そうだ。
要は、送信する相手のコンピュータの名前だ。覚えやすいよう、英数字で構成される。
コンピュータの名前。
じゃ、「Roads to Node」が置いてあるコンピュータは、「www5e.biglobe.ne.jp」って名前なんですか?
いや、正確には「biglobe.ne.jp」という組織の、「www5e」というコンピュータ、という意味だ。
この組織名が「ドメイン名」。コンピュータ名が「ホスト名」だ。
「biglobe.ne.jp」の「www5e」。
そうだ。もちろん、他のコンピュータと区別するために、ユニークな名前でなければならない。
さて、インターネットでユニークな名前でなければならないということは?
ということは?
…。もしかして、IPアドレスのネットワーク番号と同じように、管理する組織があるってことですか?
うむ、いいぞネット君。
その通り、ドメイン名はIPアドレス同様ICANNが管理している。
ICANNと、各地域のNICが管理するわけだ。▼ link
なるほど。
ドメイン名はNICが管理するとして、ホスト名は?
ホスト名は、これもIPアドレス同様、その組織の管理者が管理する。
「www5e.biglobe.ne.jp」の場合、JPNICから割り振られたbiglobe.ne.jpという組織の管理者が、このコンピュータを「www5e」と名付けよう、と名前をつけたわけだ。
ははぁ。
IPアドレスと同じ形になるわけですね。
うむ。これで、送信したい相手を簡単に覚えることができるようになったわけだ。
ただ問題は、やはりデータ送信にはIPアドレスが必要という点だ。
あ〜、それはそうですね。
IPアドレスを直接覚えるのは難しいから、名前を付けました。じゃ、名前とIPアドレスにどういう関係があるんですか?
うむ、それを決めるのが、DNSだ。
DNSは名前とIPアドレスを対応させるシステムだ。
ははぁ。だからドメインネームシステムなんですね。
そうだ。
つまり、こういうことだ。
[Figure27-02:DNS]
名前とIPアドレスの対応データベースを持っているDNSサーバに対し問い合わせをし、データ転送をしたいデバイスのIPアドレスを手に入れるのだ。
ははぁ。DNSサーバってのは、どこにあるんです?
世界中のドメイン名、ホスト名を覚えている必要があるから、やっぱりICANN?
誰が世界中のドメイン名、ホスト名を覚えているといった。
DNSサーバは各組織に1つずつあり、その組織のドメイン名、ホスト名のみを管理している。
えっ? その組織のドメイン名、ホスト名のみを管理って。
じゃあ、他の組織のドメイン名、ホスト名からIPアドレスを知りたい場合はどうするんですか?
もっともな疑問だ。
他の組織のホスト名、ドメイン名は、その組織のDNSサーバに聞くのだ。先ほどの例は、実際はこうなる。
[Figure27-03:他の組織のホスト名を調べる]
このような形になる。
DNSとは、世界中のドメイン名・ホスト名を管理する一種の分散型データベースだということだ。
一時保存(キャッシュ)するのは何故ですか?
同じところへデータ転送する度に、何度も問い合わせするのは無駄だろう?
なので、一定時間ドメイン名とIPアドレスの対応を保持しておくことによって、問い合わせ時間の短縮をはかるのだよ。
ははぁ。
今回は、DNSの概論だ。
より詳細なDNSの仕組みについては、先の回で行う。
何故今回やらないんですか?
うむ。片手間で全部説明できるほど、簡潔ではないのだよ。ただ、今回の説明でもある程度は理解できると思うので、かならず覚えておくこと。言うならば、現在のインターネットを支える基幹技術なのだからな。
そうなんですか?
そうだ。今現在、インターネットはすべてドメイン名・ホスト名でサービスを行うようになっている。
DNSがなければ、インターネットは立ち行かないようになっているのだよ。
そういえばそうかも。
Webサイトでも、メールでも、IPアドレスを直接打ち込むことってほとんどないですからね。
そうだろう。
さて、DNSは先で詳しく話すとして、もう1つ宛先IPアドレスを知る方法がある。
へぇ、なんです?
■ Windowsネットワーク
DNSと似ているといえば、似ているが。
こちらはLANでの話だ。
はぁ、LANでの話ですか。LANではDNSは使わないんですか?
だって、その組織のドメイン名、ホスト名を管理するんでしょ?
うむ、使えないことはない。ただLANならではのもっと簡単な方法を使う、というだけの話だ。
ただし、Windowsで作られたネットワークの話だが。
Windowsでの話ですか。
うむ。
Windowsでは、他のWindowsマシンとファイル共有というのを簡単に行えるだろう。
そうですね。
他のWindowsマシンと共有したいフォルダのプロパティで、共有を選べばすぐできますよね。
[Figure27-04:Windowsファイル・フォルダ共有]
うむ。
では、LAN内の他のWindowsマシンの共有フォルダの中身を見たい場合どうする?
「マイ ネットワーク」を開いて、中身を見たいフォルダを持つマシンを選んで、開きます。
[Figure27-05:マイネットワーク]
うむ。その通り。
だが、それはつまり共有フォルダを持つマシンとデータ交換をしていることだよな。
そう、ですね。
どのフォルダが共有しているか、という情報を送っているわけですよね。
さらに、ファイルのやり取りを行う場合、それは完全にデータ交換をしていることになる。
さて、どうやって相手のIPアドレスを知ったのだ?
う?
先ほどの「マイネットワーク」の画像をみればわかる通り、Windowsマシンには識別用のコンピュータ名がついている。
コンピュータ名とIPアドレスはどうやって対応させているのだ?
[Figure27-06:ネットワーク識別情報] ▼
う、うぅぅぅ。
DNS?
Windowsのファイル共有は2台のWindowsマシンがあれば可能だ。
DNSなど存在しなくても、できる。
うぅぅぅぅぅぅ。
これは、NetBIOSという機能によって行われている。
ねっとびーあいおーえす?
■ NetBIOS over TCP/IP
ネットバイオスと読む。
NetBIOSは、Windows95にも使われているAPIで、実際の歴史はもっと古い。WindowsMeまではこのNetBIOSがWindows同士ネットワークを担っていた。
WindowsMEまでは?
うむ、Windows2000、XPからはActive Directoryが採用されたからな。
だがWindows2000、XPでもやはりNetBIOSは使われている。開発は1984年だから、もう20年近くたつな。
ははぁ。
1984年なんて、Windowsは影も形もないですよね。
そんな頃に作られたものなんですか。
そうだ。
このNetBIOSだけでは現在のTCP/IP環境に対応できないので、NetBIOS over TCP/IPが使われている。
ねっとばいおす おーばー てぃーしーぴー/あいぴー。
[Figure27-07:NetBIOS over TCP/IP] ▼
[Figure27-08:ネットワークのプロパティ] ▼
NetBIOSの機能をTCP/IPでも使えるようにしたものだ。
このNetBIOSの機能により、宛先IPアドレスを知ることができる。
詳細なNBTの仕組みについては、先の回で行うとして。
これも複雑なんですね。
まぁ、そうだ。
先ほどの画像。
[Figure27-06:ネットワーク識別情報]
このコンピュータ名は正式にはNetBIOS名という。
「マイネットワーク」で一覧表示されるのはこのNetBIOS名だ。
[Figure27-05:マイネットワーク]
さて、データ転送を行いたい場合、このNetBIOS名とIPアドレスの対応をしなければならない。
DNSで、ドメイン・ホスト名とIPアドレスの対応をとったようにですね。
そうだ。
どのように行うかというと、このように行う。
[Figure27-09:NetBIOS名とIPアドレスの対応を調べる]
…。どこかで見たような動作ですね。
というか、ARPとそっくりですよ。
そうだな。
「アドレスを教えて」というパケットをブロードキャスト送信するところなどそっくりといえばそっくりだ。
ですよね。
ともかく、これを行うことにより、NetBIOS名からIPアドレスがわかり、データ交換が可能になるわけだ。
なるほど。
■ 4つのアドレス・完結編
さて長きにわたり説明してきた4つのアドレスもこれでお終いだ。
長かったですね。
まったくだ。長々とやったので、もう1度だけおさらいだ。
データ転送を希望するホストがあったとする。まず送信元のアドレスは?
送信元MACアドレスはNICを取り付けたら自動的に。
送信元IPアドレスは手動かDHCPで割り振られてわかっています。
うむ。
それでデータ転送をするのだが、ユーザもしくはアプリケーションが宛先のホスト名もしくはNetBIOS名を決定すると?。
DNSかNetBIOS over TCP/IPで宛先IPアドレスがわかります。
そうだ。
宛先IPアドレスがわかると?
ARPで宛先MACアドレスがわかり、データ転送が可能になります。
うむうむ。
この流れをわすれないようにな。
了解です。
次回からは、データ転送が可能になったので、インターネットワークでのデータ転送について説明する。
いぇっさー。
3分間ネットワーキングでした〜♪
- HTTP
-
[Hyper Text Transfer Protocol]
Webページ(HTMLファイル)をサーバとクライアント間でやりとりするためのプロトコル。詳しくは先の回で。
所謂「ホームページを見る」ためのプロトコル。
- Q.E.D
-
[quod erat demonstratum]
証明終わり。
- ドメイン名
-
[Domain Name]
- NIC
-
日本の場合は、IPアドレスと同様にJPNICが管理しています。
このような管理団体をレジストリ[registry]と呼び、実際にドメイン名を割り振る登録団体をレジストラ[registrar]と呼びます。
JPNICは「.jp」のレジストリ。レジストラはJPRS。
- マイ ネットワーク
- Windows95、98、NTならば「ネットワークコンピュータ」。
- 画像
-
Windows2000proによる、ネットワーク識別の画像。
「マイコンピュータ」のプロパティにあります。
Windows9x系ならば、「ネットワークコンピュータ」のプロパティ。
- NetBIOS
- [Network Basic Input Output System]
- API
-
[Application Program Interface]
ソフトウェアの開発やその利用に使用する、命令や、規約のこと。
- Active Directory
-
ダイナミックDNSによるTCP/IPベースのディレクトリ・サービス。
これにより、NTドメインの統合的な管理が行えるようになった。
詳しくはいずれ。
- NetBIOS over TCP/IP
- NBTと略される。
- 図
-
Windowsでのファイル共有は、共有する側の「ファイル共有とプリンタ共有」と、共有を使う側の「ネットワーククライアント」から成り立つ。
これら2つは、NetBIOSを経由して、TCP/IPを使用する。
ただし、NetBIOSはレイヤ5に位置するという意味ではない。役割的にアプリケーションとTCP/IPとを繋ぐため、レイヤ5の位置に置いた。
- 画像
-
「ネットワークとダイアルアップ接続」の「ローカル接続」のプロパティ。
「ファイル共有とプリンタ共有」・「ネットワーククライアント」が使用されているのがわかる。
- NetBIOS名
- 15バイト以内+制御文字1バイトからなる。
- ネット君の今日のポイント
-
- ユーザもしくはアプリケーションが宛先を決定する。
- IPアドレスがわかっていれば、それを使用する。
- ホスト名がわかっている場合はDNSを使用する。
- DNSサーバに対し、ホスト名に対応するIPアドレスを問い合わせる。
- NetBIOS名(Winodwsネットワーク)がわかっている場合は、NetBIOS over TCP/IPを利用する。
- NetBIOS名に対応するIPアドレスを知るためにブロードキャストする。
- NetBIOS名が一致するマシンはIPアドレスを返信する。
- 参考リンク
-
- JPNIChttp://www.nic.ad.jp/▲
- JPRShttp://jprs.jp/▲