目次
ルーティングテーブルとは
ルーティングテーブルとは、ルータが認識しているネットワークの情報をまとめているデータベースです。あるネットワークへIPパケットを転送するためにどのような経路であるかが登録されています。ルーティングテーブルに登録されているネットワークの情報をルート情報や経路情報と呼びます。
ポイント
- ルーティングテーブルでルータはネットワーク構成を認識します。
- ルーティングテーブルはIPパケットの転送経路も表していて、ネットワーク構成が変わるとルーティングテーブルも更新しなければいけません。
ルート情報の内容
CCNA試験で重要
CCNA試験(200-301)では、ルーティングテーブルをきちんと解釈できなければいけません。CCNAを受験される方は、特にしっかりとCiscoのルーティングテーブルが読めるようにしてください。
ルーティングテーブル上のルート情報にどのようなことが記載されているかは、ルータの製品によって若干異なります。企業向けのルータでよく利用されているCisco Systems社のルータでは、ルート情報として次のような内容が含まれています。
- ルート情報の情報源
どのようにしてルータがルート情報をルーティングテーブルに登録したのかを示しています。ルート情報の情報源として、大きく次の3種類あります。- 直接接続
- スタティックルート
- ルーティングプロトコル
- ネットワークアドレス/サブネットマスク
ルーティングするあて先のネットワークです。IPパケットの宛先IPアドレスをキーにして、ルート情報のネットワークアドレス/サブネットマスクを検索します。 - メトリック
メトリックは、ルータから目的のネットワークまでの距離を数値化したものです。距離といっても物理的な距離ではなく、ネットワーク的な距離です。
メトリックの情報は、ルーティングプロトコルによって学習したルート情報の中にあります。ルーティングプロトコルによって、どのような情報からメトリックを算出するかという計算方法が異なりますが、最終的には一つの数値になります。距離は短い方がよりよいルートと考えられるので、メトリック最小のルートが最適ルートです。 メトリックは「コスト」と表現することもよくあります。
ルーティングプロトコルごとのメトリックとして考えている要素は以下のようになります。
ルーティングプロトコル | メトリックの要素 |
---|---|
RIP | 経由するルータ台数(ホップ数) |
OSPF | 累積コスト(ネットワークの通信速度) |
EIGRP | 帯域幅、遅延、負荷、信頼性、MTUから計算される値 |
- アドミニストレイティブディスタンス(Cisco)
メトリックはルーティングプロトコルごとに計測している目的のネットワークまでの距離を表しています。ですが、ルーティングプロトコルごとにメトリックとしてどのような要素を考慮しているかが異なります。ルーティングプロトコルごとに異なるメトリックを比較できるように調節するパラメータがアドミニストレイティブディスタンスです。つまり、アドミニストレイティブディスタンスとメトリックによって、ルータは目的のネットワークまでの距離を認識します。 - ネクストホップアドレス
「ホップ」とはルータを指します。目的のネットワークへパケットを送り届けるために、次に転送すべきルータのIPアドレスです。ネクストホップアドレスは、原則としてルータと同じネットワーク内の他のルータのIPアドレスです。 - 出力インタフェース
目的のネットワークへパケットを転送するときに、パケットを出力するインタフェースの情報です。パケットを出力するときには、出力インタフェースのプロトコルのヘッダでカプセル化します。出力インタフェースがイーサネットであれば、IPパケットをイーサネットヘッダでカプセル化します。また、ネクストホップアドレスと出力インタフェースを合わせて、目的のネットワークまでの方向と考えることができます。 - 経過時間
ルーティングプロトコルで学習したルート情報について、ルーティングテーブルに登録されてから経過した時間が載せられます。経過時間が長ければ長いほど、安定したルート情報です。
以下は、Ciscoルータのルーティングテーブルの例です。
なお、「FastEthernet0/0」や「Serial0/1」はルータのインタフェースの名前です。また、「10.0.0.0/24 is subnetted, 3 subunets」という表記はCisco独特のものです。「10.0.0.0というネットワークアドレスは3つのサブネットに分割されていて、それらのサブネットマスクは/24」という意味です。つまり、続く10.1.3.0、10.1.2.0、10.1.1.0のサブネットマスクは/24です。
関連記事
ルータが認識しているネットワーク構成
ルーティングテーブルは、ルータが認識しているネットワーク構成ということもできます。例に挙げたルーティングテーブルを持つルータ R1がどんな風にネットワーク構成を認識しているかを見ていきます。
直接接続のルート情報
ルーティングテーブルの中で最も基本的なルート情報は、ルータに直接接続されているネットワークのルート情報です。Ciscoルータでは、先頭に「C」と表示されているのが直接接続されているネットワークのルート情報です。例のルータは、以下の2つのネットワークを直接接続していることがルーティングテーブルから読み取れます。
- 10.1.1.0/24 FastEthernet0/0
- 10.1.2.0/24 Serial0/1
スタティックルート
次に先頭に「S」と表示されているルート情報が以下の3つあります。
- 172.16.0.0/16
- 172.17.0.0/16
- 192.168.1.0/24
これは、スタティックルートの設定によってルーティングテーブルに登録されたルート情報であることを表しています。3つのルート情報で「via 10.1.2.2」と共通しています。この部分はネクストホップアドレスで次に転送するべき隣のルータのIPアドレスです。
10.1.2.0/24のネットワーク上には10.1.2.2というIPアドレスのルータが存在していて、そのルータの向こう側に3つのネットワークがあると認識しています。
なお、R1が認識しているのは3つのネットワークが10.1.2.2のIPアドレスを持つルータの向う側にあるということだけです。10.1.2.2のルータに直接接続されているのではなく、さらに他のルータを経由しなければいけないかもしれません。
RIPルート
そして、もう1つ「R」と表示されている10.1.3.0/24のネットワークがあります。「R」はRIPというルーティングプロトコルによってルーティングテーブルに登録されたルート情報であることを意味しています。ネクストホップは「10.1.2.2」で、このIPアドレスのルータの先に10.1.3.0/24のネットワークがあります。RIPのようなルーティングプロトコルで登録されたルート情報には、距離が載せられています。「[120/1]」の部分が距離です。このルーティングテーブルを持つR1から[120/1]だけ離れたところに10.1.3.0/24のネットワークがあることがわかります。RIPの場合、経由するルータ台数を距離とみなします。つまり、10.1.3.0/24は10.1.2.2のルータに直接接続されているということがわかります。
スタティックルートのルート情報には「[1/0]」という距離の情報がありますが、スタティックルートの場合は、基本的に距離は意味がありません。
関連記事
以上のように、ルーティングテーブルによって、そのルータがどのようなネットワーク構成であるかを認識しています。ただし、ネットワーク全体の詳細な構成ではなく、自身を中心としてネクストホップ(隣のルータ)の向こう側にどんなネットワークが存在するかというレベルです。IPによるエンドツーエンドの通信は、同じネットワーク上の転送を繰り返していくわけなので、隣のルータまで転送できればよいです。隣のルータの先のネットワーク構成の詳細まで知っておく必要はありません。
ルーティングテーブル上で認識できないネットワーク宛てのIPパケットはすべて破棄します。そのため、ルータがきちんとルーティングするためにはルーティングテーブルに必要なルート情報をすべてもれなく登録しておかなければいけません。これは1台のルータだけではなく、ネットワーク上のすべてのルータです。そして、ネットワーク上のすべてのルータのルーティングテーブルに必要なルート情報が登録されている状態を指して「コンバージェンス(収束)」と呼びます。
パケットの転送経路
ルーティングテーブルは、ルータが認識しているネットワーク構成であると同時にパケットの転送経路を表してもいます。ルーティングテーブルには、基本的に宛先ネットワークへの最適ルートのみが登録されます。宛先ネットワークまでのルートが冗長化されている場合、迂回ルートはルーティングテーブルには載せられていません。各ルータのルーティングテーブルをたどっていくことで、パケットが転送される経路がわかります。
そして、ネットワークの障害などでネットワーク構成が変化した場合は、パケットの転送経路となるルーティングテーブルを更新しなければいけません。ルーティングテーブルの更新もコンバージェンスの一種です。ルーティングテーブルが適切に更新されなければ、パケットのルーティングが正常にできずに通信できなくなってしまいます。
ルーティングプロトコルを利用すると、ネットワークの障害発生時のルーティングテーブルの更新を自動的に行うことができます。スタティックルートで設定していると、ネットワーク障害時には手動でルーティングテーブルを更新する必要があります。そして、上記の図では明確に表していませんが、「通信は双方向である」ということをきちんと考えてください。図では、192.168.3.0/24のルート情報のみに注目していますが、戻ってくるときのルート情報も更新しなければいけません。
関連記事
ルーティングテーブルにルート情報を登録して、ルーティングテーブルを作るための方法について、以下の記事をご覧ください。
IPルーティングのキホン
- ルータ ~ルーティングを行う中心的な機器~
- ルータでネットワークを分割
- レイヤ3スイッチ
- ルーティングの動作
- ルーティングテーブル
- ルーティングテーブルの作り方
- ホストルート ~/32のルート情報~
- スタティックルーティング?それともダイナミックルーティング? ~設定の考え方の違い~
- スタティックルーティングとダイナミックルーティング(RIP)の設定の比較
- スタティックルートのメリット・デメリット
- ルーティングプロトコルのメリット・デメリット
- ルート情報をアドバタイズする意味
- 宛先ネットワークまでの距離を計測 ~アドミニストレイティブディスタンスとメトリック~
- 等コストロードバランシング
- ルート集約 ~まとめてルーティングテーブルに登録しよう~
- デフォルトルート ~究極の集約ルート~
- 最長一致検索(ロンゲストマッチ) ~詳しいルート情報を優先する~
- インターネットのルート情報を見てみよう AT&T Looking Glass
- ルーティングプロトコルの分類 ~適用範囲~
- ルーティングプロトコルの分類 ~アルゴリズム~
- ルーティングプロトコルの分類 ~ネットワークアドレスの認識(クラスフルルーティングプロトコル/クラスレスルーティングプロトコル)~
- Cisco スタティックルートの設定
- ip default-network ~特定のルート情報に「*」をつける~
- スタティックルートをバックアップに ~フローティングスタティック~
- スタティックルートの設定を一歩ずつわかりやすく行う設定例[Cisco]
- Ciscoスタティックルーティングの設定例
- IPルーティング基礎演習Part1
- IPルーティング基礎演習Part2
- IPルーティング基礎演習Part3
- Windows PCのスタティックルートの設定 route addコマンド
- RIPの概要
- RIPの動作 ~RIPルート情報を定期的に送りつける~
- RIPスプリットホライズン
- RIPタイマ
- RIPルートポイズニング ~不要なルート情報を速やかに削除~
- Cisco RIPの設定と確認
- Cisco RIPの設定例
- RIPでのデフォルトルートの生成 ~スタティックルートの再配送~
- RIPでのデフォルトルートの生成 ~default-information originate~
- RIPでのデフォルトルートの生成 ~ip default-network~
- RIP 設定ミスの切り分けと修正 Part1
- RIP 設定ミスの切り分けと修正 Part2
- RIP 設定ミスの切り分けと修正 Part3
- RIP 設定ミスの切り分けと修正 Part4
- パッシブインタフェース(passive-interface) ~ルーティングプロトコルのパケット送信を止める~
- 転送経路を決定する方法 ~アドミニストレイティブディスタンス/メトリックと最長一致検索~
- デフォルトゲートウェイの詳細 ~ホストもルーティングしている~
- デフォルトゲートウェイの冗長化の概要
- Cisco HSRPの仕組み
- Cisco HSRP 仮想ルータ宛てのパケットがアクティブルータへ転送される仕組み
- Cisco HSRPトラッキング ~より柔軟にアクティブルータを切り替える~
- Cisco HSRP設定と確認
- Cisco HSRPの負荷分散
- HSRP 設定ミスの切り分けと修正 Part1
- VRRPの仕組み
- VRRPの設定と確認コマンド [Cisco]
- ルーティングテーブルのトラッキング(Cisco HSRP/VRRP)
- Cisco HSRP ルーティングテーブルのトラッキング設定例
- VRRP ルーティングテーブルのトラッキング設定例
- GLBPの仕組み
- Cisco GLBPの設定と確認
- Cisco GLBPの設定例
- HSRP/VRRP/GLBPのアドレス情報のまとめ