
IP によるルーティングを理解します
不必要なトラフィックを最小限にし、フレームをある場所から別の場所への効果的に転送させるために、
相互接続されたホストはグループ分けされています。
このグループ分けの結果(ネットワーク設計者や管理者によって決められているのですが)、
相互接続されたデバイスは、二つのネットワーク間の最適経路を決めることができます。
この相互接続デバイスのことをルータと呼びます。ルータは第3層、つまりネットワーク層で動作し、
あるネットワークと別のネットワークとの境界となります。フレームがルータを越えるということは、
異なるネットワークに行くということです。フレームがルータを越えることなく、発信元から宛先に行くと言うことは、
同じネットワーク内で通信が行われるということです。ネットワークというのは、ルータによって一まとめにされた通信機器のことをネットワークと呼びます。
ルータはネットワークがどこにあるかを知るために、フレームに書き込まれた IP アドレスの中の数ビットを利用します。
残りのビットは、最終目的地のネットワーク上にあるステーションを特定するために使われます。
ネットワークを特定するためのビットと、ホストを特定するためのビットとは、区別されます。
フレームの送り手が、この区別をしなければなりません。宛先が自分と同じネットワークにあるのか、異なるネットワークにあるのかを決めなければならないからです。
送り手が、受け手と同じネットワークに存在する場合は、宛先マシンのデータリンクアドレスが確定されます。
そうすれば、フレームを宛先に直接送ることができます。
一方で、宛先が別のネットワーク上にある場合は、フレームをルータに送らなければなりません。
そしてルータがフレームを最終目的地へ転送します。最終目的地のネットワーク上にて、
最後のルータがホストのデータリンクアドレスを確定し、そのネットワーク上にあるホストに直接フレームを転送します。
ルータは入ってくるフレームを受けると、ルーティングテーブルの内容と比較して検索キーを作り、宛先アドレスを確定します。
ルーティングテーブルはフレームをどのように処理すべきかを示します。
ルータの特定ポートにフレームが直接送られることもあります。離れたネットワークにある最終目的地に向かうために、
隣のルータに送られることもあります。ルーティングテーブルはこのような情報を持っているのです。
管理者によって直接設定されるという方法や、定期的にルータ情報を更新するブロードキャストによる間接設定で、ルーティングテーブルは作られます。
RIP や OSPF や IGRP などのプロトコルは、すべてのルータに対して定期的に流されます。
結果として、他のネットワークにどうやってたどり着くかを、すべてのルータが知ることになります。
以下の例について考えてみよう。このネットワークは3つのルータと4つのセグメントから構成されています。

ルータは3台ともマスク 255.255.0.0 を使います。真ん中のルータのルーティングテーブルは次のようになります。
マスクの結果 フレーム転送
-------------------------------------------------------------------
140.6.0.0 ポート1(左側ポート)へ ARP を行い、直接転送
140.7.0.0 ポート2(右側ポート)へ ARP を行い、直接転送
140.8.0.0 隣のルータ : 140.7.12.2 へ転送
140.9.0.0 隣のルータ : 140.6.2.1 へ転送
この例を通して、ルーティングテーブルと物理アドレスの関係について理解しましょう。エンドノードがネットワーク 140.6.0.0 上にあるとします。
ネットワーク 140.7.0.0 へフレームを送る場合は、フレームを真ん中のルータに送ります。
このルータは、フレームを適切なポートへ直接送ればよいということを知っています。フレームがネットワーク 140.8.0.0 宛ての場合は、
このルータは隣のルータへフレームを送ることを知らなければなりません。この例では、そのポートは 140.7.12.2 と定義されています(一番右のルータの左側のポート)。
140.7.12.2 が ネットワーク 140.8.0.0 向けのポートへフレームを直接送ることになります。
マスク処理を行うことによって、このルータは例えば 140.8.192.9 というアドレスのステーションが、140.8.2.3 というアドレスのステーションと同じネットワークあることを知ります。
このような二つのアドレスをマスクすると 140.8.0.0 のようなアドレスが見えてくるので、140.8.0.0 向けのすべてのフレームが正しく配送されます。
ルータはすべてのエンドノードを個別に記録する必要はありません。
エンドノードグループになっているので、ルータは世界中のすべてのステーションのアドレスについての膨大なリストを持たずに、フレームを送ることができます。
IP ルーティングの追加情報
RFC 1812
IP ルータに期待される動作に関しては RFC 1812 にあります。
長い文章ですが、これはIP バージョン4ネットワークのルーティングの完全なドキュメントです。