TCP/IP では、ネットワークに 2 種類のエンティティーがあったことを思い出してください。 つまりホストとルーターだけです。ホストはすべてのネットワークに必要ですが、ルーターはすべてのネットワークに必要なわけではありません。ネットワークの物理的なトポロジによってルーターを使用する必要があるかどうかが決まります。この節では、ネットワークトポロジと経路制御の概念を紹介します。これらの概念は、既存のネットワーク環境に別のネットワークを追加すると決めた場合に重要になります。
IPv4 ネットワークでのルーター構成の詳細と手順については、「IPv4 ネットワーク上でのパケット転送と経路制御」を参照してください。IPv6 ネットワークでのルーター構成の詳細と手順については、「IPv6 ルーターの構成」を参照してください。
ネットワークトポロジは、ネットワークの組み合わせ方を定義します。ルーターは、ネットワークを相互に接続するエンティティーです。ルーターは、複数のネットワークインタフェースを持ち、IP 転送を実行するマシンです。ただし、「IPv4 ルーターの構成」で説明されているとおりに正しく設定されるまで、システムはルーターとして機能できません。
ルーターは、複数のネットワークに接続して、より大きなインターネットワークを形成します。ルーターは、隣接する 2 つのネットワーク間でパケットの受け渡しをするように構成する必要があります。さらに、隣接するネットワークを越えた位置にあるネットワークに、パケットを渡す機能も備えられている必要があります。
次の図に、ネットワークトポロジの基本部分を示します。最初の図は、2 つのネットワークを 1 台のルーターで接続した単純な構成です。2 番目の図は、3 つのネットワークを 2 台のルーターで相互接続した構成を示しています。最初の例では、ルーター R がネットワーク 1 とネットワーク 2 を連結して、より大きなインターネットワークを作っています。2 番目の例では、ルーター R1 はネットワーク 1 と 2 に接続し、ルーター R2 は、ネットワーク 2 と 3 に接続しています。この接続で、ネットワーク 1、2、3 を含むネットワークが形成されます。
ネットワークをインターネットワークに結合したあと、ルーターは、宛先ネットワークのアドレスを基にネットワーク間でパケットの経路制御を行います。インターネットワークがより複雑になるにつれて、ルーターがパケットの宛先を決定する回数は増加します。
次の図に、より複雑な例を示します。ルーター R3 は、ネットワーク 1 と 3 に直接接続されており、この冗長性によって信頼性が向上します。ネットワーク 2 が停止しても、ルーター R3 は、ネットワーク 1 と 3 の間にルートを提供できます。 多くのネットワークを相互接続することが可能です。ただし、相互接続するネットワークは、同じネットワークプロトコルを使う必要があります。
パケットヘッダーの一部である受信側の IP アドレスによって、パケットの経路制御方法が決まります。このアドレスにローカルネットワークのネットワーク番号が含まれている場合は、その IP アドレスを持つホストに直接パケットが送られます。ネットワーク番号がローカルネットワークではない場合は、パケットはローカルネットワーク上のルーターに送られます。
ルーターは、「経路制御テーブル」に経路制御情報を格納します。このテーブルには、ルーターが接続されているネットワーク上のホストとルーターの IP アドレスが含まれています。また、それらのネットワークを指すポインタも含まれています。ルーターは、パケットを受信すると、経路制御テーブルを調べて、ヘッダー内の宛先アドレスがテーブルにリストされているかどうかを確認します。テーブルにその宛先アドレスが含まれていない場合は、ルーターは、経路制御テーブルにリストされているほかのルーターにパケットを転送します。ルーターの詳細については、「IPv4 ルーターの構成」を参照してください。
次の図は、2 つのルーターにより接続された 3 つのネットワークのネットワークトポロジを示します。
ルーター R1 は、ネットワーク 192.9.200 と 192.9.201 に接続しています。ルーター R2 は、ネットワーク 192.9.201 とネットワーク 192.9.202 と接続しています。ネットワーク 192.9.200 のホスト A がネットワーク 192.9.202 のホスト B にメッセージを送る場合、次のイベントが発生します。
ホスト A は、ネットワーク 192.9.200 にパケットを送り出します。パケットヘッダーには、受信側ホスト B の IPv4 アドレスである 192.9.202.10 が含まれています。
ネットワーク 192.9.200 には、192.9.202.10 の IPv4 アドレスを持つマシンはありません。したがって、ルーター R1 がパケットを受け取ります。
ルーター R1 は自己の経路制御テーブルを調べます。ネットワーク 192.9.201 には、アドレスが 192.9.202.10 であるマシンはありません。ただし、経路制御テーブルにはルーター R2 がリストされています。
R1 は「次のホップ」ルーターとして R2 を選択し、パケットを R2 に送信します。
R2 は、ネットワーク 192.9.201 を 192.9.202 に接続します。R2 は、ホスト B の経路制御情報を持っており、パケットをネットワーク 192.9.202 に転送します。ここで、ホスト B がパケットを受諾します。