連載第7回
TCP/IPアレルギー撲滅ドリル【下位レイヤ編】

「 アイピー」ってなんですか?

福永勇二
インタラクティブリサーチ
2004/10/30


素朴な疑問
「アイピー」って何ですか?
1 なぜIPを使うんですか?
2 そもそもなぜネットワークを分けるんですか?
3 ネットワークってどんな単位?
4 EthernetとIPの関係は?
5 ではIPとTCPの関係は?
ルーティングが命なのです
6 ルーティングって何ですか?
7 どうやってルーティングするんでしょうか?
8 ルーティングテーブルはとても複雑になりませんか?
9 でもあて先のネットワークってどうやって知るんでしょう?
IPアドレスで分かること
10 IPアドレスってナンですか?
11 IPアドレスはEthernetで使うんですか? 
12 IPアドレスからネットワークが分かるんですか?
 「アイピー」ってなんですか?

 IP(アイピー)って言葉、世の中ではいろんな場面で使われていると思いませんか。例えば、インターネットなどでコンテンツや情報を提供する人(Information Provider)、著作権や特許権などの知的所有権(Intellectual Property)、インターネットなどで使われる通信手順(Internet Protocol)など、どれも略すとIPです。そういえば風邪薬の名前にも使われていますね。こちらは解熱鎮痛剤のイブプロフェン(Ibuprofen)の略だそうです。こうしてみると、世の中の「アイピー」はどれも「ハイカラだけど何だかよく分からない」印象なのかもしれません。

 今回は、こんな「アイピー」たちの中から、インターネットなどで使われる通信手順であるIP(Internet Protocol)を取り上げます。TCP/IPという合体した名前まであるIPは、その名のとおりTCPと一緒に使うことが多いのですが、実はTCPとは別モノで、それ単独で使ったり、ほかのプロトコルと組み合わせて使うこともできます。

 そこでまずはこのIPがなぜ必要なのか考えてみたいと思います。それが分かれば、TCPと組み合わせることの意味も見えてくるはずです。

なぜIPを使うんですか?

 コンピュータのネットワークになぜIPが必要なのでしょうか。その答えはネットワークの「カタチ」にヒントが隠されています。

 図1はよくあるコンピュータのネットワークです。このうちA、B、C、Dは、各フロアや部署など、まとまった単位のネットワークです。そしてAとBの間は2のコンピュータが、BとCの間は3のコンピュータが、CとDの間は4のコンピュータでつないでいます。

図1 ネットワーク同士を接続した環境で通信するには……

 こういった状況の中、1と5のコンピュータが通信をしたい場合には、どうすればよいでしょうか?この図をよく見ると、1と4は直接にはつながっていません。直接つながっているのは、1と2、2と3、3と4、4と5です。

 このネットワークで1が5のコンピュータにデータを届けるためには、コンピュータ2がAからBに、3がBからC、4がCからDにデータを中継してくれる必要があります。この機能がうまく動作すると、1と5は直接つながっていないけれど、あたかも直接つながっているかのようにデータをやり取りすることができます。

 このような「データを中継することで、遠くの相手に届ける仕組み」を提供するのが、このIPと呼ばれるプロトコルです。具体的には、データを中継する「ルーティング」の仕組み、遠く離れたコンピュータを指定する「アドレス」の仕組みを取り決めています。

そもそもなぜネットワークを分けるんですか?

 ネットワークが1つしかなければ、データを中継しなくて済みます。しかし、そうせずに、ネットワークを分けるのには理由があります。その大きな理由の1つが「ネットワークの渋滞防止」です。

 想像してみてください。もし世界に1つのネットワークしかなくて、インターネットにつながっている世界中の3億台近いコンピュータが、すべて同じネットワークでやり取りしていたら、いったどうなるでしょうか?間違いなくネットワークは破滅的に渋滞して、必要な相手との間でまったく通信ができないはずです。なんたって、全世界のコンピュータからの情報が、1本のネットワークを通るわけですから……。

 ネットワークを組織程度の単位に分けると、このようなことはまず起こりません。ネットワーク込み具合は、あくまでも自分たちのネットワーク利用状況によって決まるからです。これは、自分たちの利用状況とは無関係にほかの組織から一方的な影響を受けてしまう、「ネットワークが1つの場合」とは大きな違いです。

 こうして見ると、IPは大規模なネットワークで使うことを視野に入れたプロトコルということが分かると思います。事実、現在の世界規模のインターネットでもIPが使われています。

ネットワークってどんな単位?

 同じコンピュータネットワークの話をしていても、「ネットワーク」がどれくらいの単位を表すのかは、話の内容によって違ってくることがあります。ちょっと紛らわしいですね。

 この記事での「1つのネットワーク」は、1つのブロードバンドルータなどにつながるすべてのコンピュータ、1つのハブにつながるすべてのコンピュータ、ハブ同士を複数つないだ場合は、その各ハブにつながるすべてのコンピュータなどの範囲を指します(図2)。

図2 データを届けるには中継のルールが必要

 すこし乱暴ないい方をすれば、ハブとケーブルで接続した範囲、というふうにいうこともできると思います。念のため正確にいえば、1つのEthernetセグメントということになりますが、これはあまり気にしなくても構いません。

EthernetとIPの関係は?

 Ethernet(イーサネット)とは、コンピュータ同士をつなぐネットワークの規格の名前です。いまどきのPCに組み込まれているネットワークは、ほぼ間違いなくEthernetです。

 Ethernetにできることは、物理的につながったコンピュータ同士の通信を受け渡すことです。図1でいうとA、B、C、D、Eの部分で使われています。

 Ethernetの機能だけ使ったのでは、直接つながっていないAとBの間で通信をすることはできません。IPが持っているデータの中継機能を使って初めて、別のEthernetにあるコンピュータとの通信が可能になります。

ではIPとTCPの関係は?

 IPは、たくさんのネットワークが相互につながっている中で、別々のネットワークにあるコンピュータ同士が通信するための仕組みを提供するものです。名前に“Inter”(〜の間)と“net”(ネットワーク)という言葉が含まれるのも、実はここから来ています。

 一方のTCPは、IPが作り出したコンピュータ間の通信機能を、より正確で誤りがないものにする働きをします。TCPは通信の信頼性は上げるけれど、2台のコンピュータ間でデータをやり取りする仕組みは持っていません。この機能はあくまでもIPに任せています。

 この関係をイメージしやすくするには、IPは2台のコンピュータ間に通信用のパイプを提供して、TCPがその中に流すデータに工夫をして正確な通信を実現している、と考えるとよいでしょう。

 

TCP/IPアレルギー撲滅ドリル【下位レイヤ編】(7)目次
1  「アイピー」ってなんですか?
2  ルーティングが命なのです
3  IPアドレスで分かること

関連リンク
  連載:TCP/IPアレルギー撲滅ドリル【超実践編】(上位レイヤ編)
連載:インターネット・プロトコル詳説

連載:ルータの仕組みを学ぼう
ホストのネット接続は正しく行われているか? 〜netstatによるネットワーク設定の確認〜


「Master of IP Network総合インデックス」


Master of IP Network フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Master of IP Network 記事ランキング

本日 月間