宛先ネットワークまでの転送経路をきちんと把握しよう

ルーティングテーブルは、宛先ネットワークまでの最適なルート情報が登録されています。宛先ネットワークまでのパケットの転送経路は、ルーティングテーブルでわかります。宛先ネットワークまでの転送経路が複数存在する場合、どの経路でパケットが転送されるかをしっかりと把握しておくことが重要です。転送経路がよくわかっていないと、何か問題が発生したときに原因の切り分けに時間を要することになります。

 転送経路が複数ある場合
図 転送経路が複数ある場合

1台のルータだけのルーティングテーブルでは、宛先ネットワークまでの完全なパケットの転送経路はわかりません。経路上のルータそれぞれのルーティングテーブルを見ていく必要があります。

転送経路の決め方

宛先ネットワークまでパケットを転送するときにどの経路を利用するかを決めるために、次の2つの方法があります。

  • ルート情報の距離を近くする
    利用したい経路のルート情報の距離を近くして、最適ルートとしてルーティングテーブルに登録されるようにする
  • ルート情報を詳しく登録する
    利用したい経路のルート情報を詳しくルーティングテーブルに登録してパケットを転送するときに優先して利用されるようにする

ルート情報の距離を近くする

ルーティングテーブルには最適なルート情報のみが登録されます。最適なルート情報であるかは、距離に基づいて決めています。Ciscoでは、ルート情報の距離は[アドミニストレイティブディスタンス/メトリック]で表しています。

利用したい転送経路のルート情報の距離が近くなるようにして、最適ルートとしてルーティングテーブルに登録されるようにします。そのためには、利用したい転送経路のルート情報のアドミニストレイティブディスタンスやメトリックを小さくすればOKです。あるいは、利用したくないルート情報のアドミニストレイティブディスタンスやメトリックを大きくします。どちらの設定を行うかはお好みで決めるとよいでしょう。

RIPを利用している簡単な例を考えます。R1から192.168.1.0/24宛てのIPパケットの転送経路をR2経由にするとします。R2とR3はRIPで192.168.1.0/24のルート情報をR1へアドバタイズします。このとき、R3からアドバタイズするルート情報のメトリックを大きくします。すると、R2からアドバタイズされたルート情報が最適ルートとなり、ルーティングテーブルに登録されます。RIPのルート情報のメトリックを大きくするにはオフセットリストの設定を行います。

そして、宛先IPアドレスが192.168.1.100のIPパケットがR1へやってくると、R1はR2へと転送することになります。

ルート情報の距離を近くする例(RIP)
図 ルート情報の距離を近くする例(RIP)

アドミニストレイティブディスタンスはCisco独自のパラメータです。他のベンダでも同様のパラメータがあります。
スタティックルートでこのような制御をしたいときには、アドミニストレイティブディスタンスを変更します。
メトリックはルート情報に付随して他のルータへとアドバタイズされていきますが、アドミニストレイティブディスタンスはルータローカルのパラメータです。メトリックを変更すれば、他のルータの最適ルートの決定にも影響することがあります。一方、アドミニストレイティブディスタンスの変更はそのルータのみの最適ルート決定に影響します。

ルート情報を詳しく登録する

IPパケットをルーティングするとき、宛先IPアドレスに一致するルーティングテーブル上のルート情報を検索します。このとき、最長一致検索で一致するルート情報を検索します。一致するルート情報はひとつだけでなく、複数存在することもあります。その場合は、よりサブネットマスクが長いルート情報を優先してパケットの転送先を判断します。サブネットマスクが長いルート情報は、詳細なルート情報です。

そこで、利用したい経路のルート情報をより詳細にルーティングテーブルに登録すれば、その経路を優先して利用することになります。あるいは、利用したくない経路のルート情報は集約してもOKです。

先ほどと同様にRIPを利用している簡単な例で考えます。R1から192.168.1.0/24へIPパケットをルーティングするときR2経由にするとします。利用したくない経路であるR3からRIPのルート情報をアドバタイズするときに192.168.0.0/16に集約します。R1のルーティングテーブルには、R2経由の192.168.1.0/24のルート情報とR3経由の192.168.0.0/16のルート情報が両方とも登録されます。

そして、宛先IPアドレス192.168.1.100のIPパケットがR1にやってくると、最長一致検索により192.168.1.0/24のルート情報にも192.168.0.0/16のルート情報にも一致します。サブネットマスクがより長い192.168.1.0/24のルート情報に基づいて、パケットはR2へ転送されることになります。

ルート情報を詳しく登録する例(RIP)
図 ルート情報を詳しく登録する例(RIP)

以上のように転送経路を決める方法が2通りあります。どちらを利用しても最終的に同じことを実現できます。それぞれの方法で、転送経路を決める仕組みが違っています。この2つの方法でIPパケットが転送される経路が決まるプロセスをしっかりと理解することで、より深くルーティングの仕組みを理解できるようになるでしょう。

戻ってくるときの経路も

「ネットワークのおべんきょしませんか?」内のいろんな記事で何度もしつこいぐらい述べていますが、「通信は双方向」です。転送経路を決めるときも行きと戻りの双方向でしっかりと考えて決めるようにしてください。

IPルーティングのキホン