ルーティングとは

ルーティングとは、2つ以上の異なるネットワーク間でデータを中継するプロセスを指します。特に通信にIPプロトコルが採用されて以降、膨大な数のネットワークセグメントを相互接続して構成されるインターネットにおいて、ルーティングは不可欠な要素となっています。OSI参照モデルでは、ルーティングはレイヤー3(ネットワーク層)で動作し、IPパケットの通信経路を決定するうえで重要な役割を果たします。ルーティングを行う機器は、ルーターと呼ばれます。

データ転送に最適な経路を決定するため、ルーターは宛先への経路一覧を含むルーティングテーブルを参照します。受信パケットの宛先アドレスがルーティングテーブルのエントリと一致すると、ルーターはそのパケットを適切な経路へ転送します。複数のルーターがこの処理を「リレー」のように繰り返すことで、パケットは異なるネットワークセグメント上のホストに到達します。

パケットの宛先アドレスがルーティングテーブル内のどの経路にも一致しない場合、ルーターはそのパケットを破棄し、ICMPパケットを使用して送信元に宛先到達不能通知を送信します。一致する経路が複数ある場合、ルーターはパケットの転送に最適な経路を選択します。

宛先ルートは、次の2つの方法でルーティングテーブルに追加されます。

  • 静的ルーティング:管理者がルートを手動で設定します。
  • 動的ルーティング:ルーターは隣接するルーターからルーティング情報を自動的に収集し、その情報に基づいてルーティングテーブルを更新します。動的ルーティングでは、ルーター間の情報交換にルーティングプロトコルを使用します。

インターネット自体は、複数の自律システム(AS)で構成されています。AS間のルーティングはExterior Gateway Protocol(EGP)を使用して管理され、AS内のルーティングはInterior Gateway Protocol(IGP)を使用して処理されます。現在、EGPとしてはBGP-4(Border Gateway Protocol version 4)が広く使用され、IGPとしてはOSPF(Open Shortest Path First)が一般的に使用されています。