経路制御(ルーティング)とは
経路制御(ルーティング)の概要
経路制御(ルーティング)とは、IPパケットを宛先まで届けるために、IPアドレスの情報に基づいて通信経路(ルート)を選択することです。主にルーターやL3スイッチなどの、レイヤ3のネットワーク機器が担当します。
経路制御(ルーティング)の動作 ※クリックで再生
経路制御(ルーティング)のしくみ
ルーターは経路制御表(ルーティングテーブル)と呼ばれる、「宛先」と「転送先」の対応一覧を保持しています。IPパケットが到着すると、この経路制御表をもとに、次の送付先を選択してIPパケットを転送します。
Cisco機器のルーティングテーブル確認
Cisco機器の場合は、「show ip route」コマンドを実行することで、ルーティングテーブルを確認することができます。
show ip route
表示例
Router1#show ip route
192.168.1.0/32 is subnetted, 1 subnets
S 192.168.1.1 [1/0] via 2.2.2.2
192.168.2.0/32 is subnetted, 1 subnets
S 192.168.2.1 [1/0] via 3.3.3.3
経路制御(ルーティング)の種類
ネットワーク機器に経路情報を登録する方法として2通りの方法があります。
- スタティックルーティング(静的ルーティング)
- 手動で経路情報を登録する方法
- ダイナミックルーティング(動的ルーティング)
- 隣接機器から自動的に経路情報を受け取って登録する方法
スタティックルーティング(静的ルーティング)※手動で経路情報を登録
スタティックルーティングとは、ネットワーク管理者がネットワーク機器に手動で経路情報を登録する方法です。主に小規模なネットワークで、必要な経路情報が少ない場合に利用されます。
スタティックルーティング(静的ルーティング)の概要 ※クリックで再生
Cisco機器のスタティックルート設定
Cisco機器の場合は、下記の設定を行うことで、スタティックルートを登録することができます。
ip route [宛先アドレス] [宛先サブネットマスク] [転送先アドレス]
- 宛先アドレス 〜 宛先となるIPアドレス(IPセグメント)を指定
- 宛先サブネットマスク 〜 宛先IPアドレス(IPセグメント)のサブネットマスクを指定
- 転送先アドレス 〜 転送先となる機器のIPアドレスを指定
設定例(宛先アドレス:192.168.1.0、宛先サブネットマスク:255.255.255.0、転送先アドレス:2.2.2.2 の場合)
ip route 192.168.1.0 255.255.255.0 2.2.2.2
この設定を行うことで、192.168.1.0/24宛のパケットが到着した時に、2.2.2.2の機器へ転送することができます。
サブネットマスクに関する説明は下記のページを参照してください。
ダイナミックルーティング(動的ルーティング)※自動で経路情報を登録
ダイナミックルーティングとは、必要な経路情報を隣接したネットワーク機器から自動的に学習し、登録する方法です。中〜大規模のネットワークで利用されます。
ダイナミックルーティング(動的ルーティング)の動作 ※クリックで再生
ダイナミックルーティングプロトコルの種類
ダイナミックルーティングを利用して、隣接したネットワーク機器から経路情報を受け取るためには、ダイナミックルーティングプロトコルの設定が必要です。ダイナミックルーティングプロトコルは「リンクステート型」「ディスタンスベクタ型」「ハイブリッド型」に分けられます。
- リンクステート型
-
隣接関係(ネイバー)を確立したルーターから接続状況(リンクステート)の情報を交換し合い、この情報を再構成して全体の接続状況を再構築します。全体の接続状況をもとに、最適な経路を計算して、ルーティングテーブルを作成します。
例)OSPF(Open Shortest Path First)
- ディスタンスベクタ型
-
隣接ルーター同士で、経路情報そのものを交換し合い、宛先までのホップ数が最短になる経路をルーティングテーブルに載せます。
例)BGP(Border Gateway Protocol)、RIP(Routing Information Protocol)
- ハイブリッド型(拡張ディスタンスベクタ型)
-
リンクステート型とディスタンスベクタ型の利点を取り入れたルーティングプロトコルです。
例)EIGRP(Enhanced Interior Gateway Routing Protocol)
経路制御(ルーティング)のルール
優先ルール
同じ宛先への経路情報が複数ある場合、「ロンゲストマッチ」→「AD値」→「メトリック」という優先ルールに従って転送先が決定されます。
ロンゲストマッチとは、「宛先ネットワークのプレフィックスが、より長く一致している経路情報」を優先するルールです。
サーバー1(192.168.1.1)宛てのパケットがルーター1に届いたとします。ルーター1には、「192.168.0.0/16(転送先:ルーター2)」と「192.168.1.0/24(転送先:ルーター3)」の2つの経路情報が登録されています。
この場合、経路情報上の宛先ネットワークのプレフィックスが長い「192.168.1.0/24」の経路情報が優先されて、ルーター3に転送されます。(“/16″よりも”/24″の方がプレフィックスが長い)
ロンゲストマッチの動作 ※クリックで再生
覚え方としては、より細かい経路情報が優先されると覚えましょう。そのため、もしも「192.168.1.1/32」という1つのホストを示す経路情報があった場合、この経路情報が必ず優先されることになります。逆に「0.0.0.0/0」という経路情報は、一番最後に参照されることになります。※「0.0.0.0/0」はデフォルトルートと呼ばれます。
いくつかのルーティング方式やプロトコルを採用し、プレフィックス長が同じ宛先ルートへの経路情報が複数あった場合、AD値の小さい方が優先してルーティングテーブルに登録されます。
AD値はルーティング方式やプロトコル毎に値が決まっています。
プロトコル | AD値 | 備考 |
---|---|---|
Directly Connected | 0 | 直接接続されているネットワーク |
Static route | 1 | スタティックルーティング(静的ルーティング) |
EIGRP summary route | 5 | 集約された経路情報 |
External BGP | 20 | 別ASからの経路情報 |
EIGRP internal route | 90 | ー |
IGRP | 100 | ー |
OSPF | 110 | ー |
IS-IS | 115 | ー |
RIP | 120 | ー |
EGP | 140 | ー |
ODR | 160 | On-Demand Routing |
EIGRP external route | 170 | ー |
Internal BGP | 200 | 同ASからの経路情報 |
NHRP | 250 | Next Hop Resolution Protocol |
Unknown and unused | 255 | 不明な経路 |
1つのダイナミックルーティングプロトコルで複数の経路情報を学習した場合は、メトリックによって優先するルートを決定し、ルーティングレーブルに登録します。
メトリックは、プロトコル毎に異なりますが、基本的にはメトリックの小さいものが優先されます。
プロトコル | メトリック | 備考 |
---|---|---|
OSPF | コスト | インターフェースの帯域幅をもとに計算 |
BGP | WEIGHT LOCAL_PREF MED etc… | 複数の判断基準からベストパスを選択 |
RIP | ホップ数 | 宛先ネットワークへ到達するまでのホップ数 |
EIGRP | 複合メトリック | 帯域幅や遅延値などから計算 |
経路情報が無い場合
宛先の経路情報が無いパケットは、ルーターにより破棄されてしまいます。ルーターはパケットを破棄した後、送信元へ「宛先が到達不能のためパケットを破棄しました。」というメッセージを送信し、パケットを転送できなかったことを伝えます。(ICMP Destination Unreachable メッセージ)
経路情報が無い場合の動作 ※クリックで再生
デフォルトルート・デフォルトゲートウェイ
デフォルトルート
デフォルトルートとは、経路情報が無いパケットの転送先を決定するための設定です。宛先が社内のネットワークであれば、IPアドレスは特定可能ですが、宛先がインターネットの場合は不特定多数のIPアドレスにアクセスすることになります。このような場合に、デフォルトルートを設定しておけば、明示的に経路情報が登録されていない宛先のパケットも転送することができます。
デフォルトルートの宛先は、全てのネットワークを意味する「0.0.0.0/0」を指定します。Cisco機器の場合は、下記の設定を行うことで、デフォルトルートを登録することができます。
ip route 0.0.0.0 0.0.0.0 [転送先アドレス]
下記のようなネットワークの場合、転送先アドレスに「192.168.1.3」を設定します。
デフォルトルートの設定例
ip route 0.0.0.0 0.0.0.0 192.168.1.3
デフォルトルートの動作 ※クリックで再生
デフォルトゲートウェイ
デフォルトゲートウェイとは、PCなどの端末が自身のネットワーク以外と通信するときのゲートウェイ(出口となるルーター)を指定するための設定です。
PCなどの端末だけではなく、L2スイッチなどのネットワーク機器もデフォルトゲートウェイを設定することで、自身のネットワーク以外の機器と通信できるようになります。L2スイッチ自体が管理通信(Telnet/SSHなどのリモートアクセス、NTP、Syslog、SNMP)を行うために、デフォルトゲートウェイの 設定が必要な場合が多いです。
Cisco機器の場合は、下記の設定を行うことで、デフォルトゲートウェイを登録することができます。
ip default-gateway [ゲートウェイのアドレス]
下記のようなネットワークの場合、転送先アドレスに「192.168.1.254」を設定します。
デフォルトルートの設定例
ip default-gateway 192.168.1.254
以上で、「経路制御(ルーティング)とは」の説明は完了です!