IOSの操作について一通り学んだところで,ルーターの設定から動作確認までの一連の操作を見てみましょう。ルーティングプロトコル特有の設定は,あとの回で説明することにして,今回はRIPを例にしてルーティング設定の基礎を学びましょう。
ルーティングプロトコルの基本設定
ルーティングプロトコルの設定には,グローバルコンフィギュレーションモードから,ルーティング設定モードに入らなければいけません(図1)。
- (config)# router [プロトコル] {AS番号 | プロセスID} ・・・ 指定したルーティング設定モードに入る
- [プロトコル]
- ルーティングプロトコル名。rip,igrp,ospf,eigrpなど
- {AS番号 | プロセスID}
- RIPの場合は省略。IGRP,EIGRPの場合はAS番号,OSPFの場合はプロセスIDを入れる
- [プロトコル]
このコマンドにより,ルーティングプロトコルが有効になります。ただし,プロンプトには「 (config-router)#」と出るだけで,どのルーティングプロトコルの設定モードかはわかりませんので注意が必要です。
使用するルーティングプロトコルを決定し,ルーティング設定モードに入った後は,ルーティングプロトコルを有効にするネットワークを決定します(図2)。
- (config-router)# network [ネットワークアドレス] ・・・ ルーティングプロトコルを有効にするネットワークを決定
- [ネットワークアドレス]
- ルーティングプロトコルを有効にするネットワークのネットワークアドレス
- [ネットワークアドレス]
networkコマンドで指定したネットワークに接続しているインタフェースからは,ルーティングアップデートが送受信されるようになります。また,networkコマンドで指定したネットワークがルーティングアップデートに含まれるようになります。
ルータに接続されていないネットワークを指定した場合,そのコマンドは無効になります。また,networkコマンドはルーティングプロトコルにより多少動作が異なります。RIPやIGRPなどのクラスフルルーティングプロトコルでは指定したクラスのネットワークに所属するすべてのサブネットでルーティングプロトコルが有効になります(図3)。
図3では二つのサブネット,172.16.1.0/24と172.16.2.0/24があり,ルータでは「network 172.16.0.0」を指定していますので,この二つのサブネットでルーティングプロトコルが有効になります。
基本的には,routerコマンドでルーティングプロトコルを有効化し,networkコマンドでルーティングプロトコルを有効にするネットワークを指定すれば,ルーティングプロトコルが動作し,ルーティングテーブルが作成されます。ルーティングテーブルの確認は,以前にも説明したshow ip routeコマンドを使います(図4)。
図4では,ルーティングテーブルの各行(エントリ)の一番左の入手ソース部分が「R」と「C」の2種類になっています。「C」はルータに直接接続しているルートを示します。一方の「R」はRIPにより入手したルートであることを示し,RIPが動作していることがわかります。
また,対向にルータがないインタフェースからはルーティングアップデートを送信する必要がありません。このため,ルーティングアップデートを送らない設定が可能です。
図5では,FastEthernet0に接続しているネットワークにはルータが存在しないため,ルーティングアップデートを送る必要がありません。このような場合,「ルーティングアップデートを受信するが,送信しない」という設定にします。このようなインタフェースをパッシブインタフェースと呼びます(図6)。
- (config-router)# passive-interface [インタフェースタイプ] [ポート] ・・・ 指定したインタフェースをパッシブにする
スタティックルートの設定
ルーティングプロトコルではなく,手動でルーティングテーブルにルートを追加したい場合もあります。そのようなルートをスタティックルートと呼びます。スタティックルートの追加は,グローバルコンフィギュレーションモードで行います(図7)。
- (config)# ip route [ネットワークアドレス] [サブネットマスク] [インタフェース | ネクストホップ] {管理距離} {permanent}
- [ネットワークアドレス] [サブネットマスク]
- 追加するルートのネットワークアドレスとサブネットマスク
- [インタフェース | ネクストホップ]
- 追加したルートへ送信する際のインタフェース,または次のルータのアドレス
- {管理距離}
- 省略可能。管理距離を指定された値に変更する。デフォルトは1
- {permanent}
- 省略可能。インタフェースを指定した場合,通常はインタフェースがダウンするとルートは消えてしまうが,消えないように設定する
- [ネットワークアドレス] [サブネットマスク]
スタティックルートの主な使い道は,デフォルトルートの設定です。デフォルトルートの設定には,2種類の方法があります。一つはip routeコマンドを使用する方法です。この場合,あて先ネットワークアドレス,サブネットマスクの両方に0.0.0.0を指定します(図8)。
- (config)# ip route 0.0.0.0 0.0.0.0 [インタフェース | ネクストホップ] {管理距離} {permanent}
デフォルトルートを設定してから,ルーティングテーブルを表示(show ip routeコマンド)すると,「Gateway of last resort(最後の手段のゲートウェイ)」として,そのルートが表示されます。また,入手ソースのところに「*(アスタリスク)」があるものが,有効なデフォルトルートとなります(図9)。
デフォルトゲートウェイを設定する際に使うもう一つのコマンドは,ip default-networkコマンドです。ip default-networkコマンドで指定されたネットワークへのルートがデフォルトルートになります(図10)。
- (config)# ip default-network [ネットワークアドレス]
- [ネットワークアドレス]
- デフォルトルートとして使うルート
- [ネットワークアドレス]
ただし,ip default-networkコマンドはルーティングプロトコルによって扱いが多少違うので,一般的にはip route 0.0.0.0 0.0.0.0を使うことが多いようです。また,ip route 0.0.0.0 0.0.0.0は,「ネクストホップ」を指定,ip default-networkは「ネットワークアドレス」を指定という違いがあります。混同しないようにしましょう。
さらに,ip default-networkコマンドと間違いやすいコマンドとして,ip default-gatewayがあります(図11)。
- (config)# ip default-gateway [ゲートウェイアドレス]
- [ [ゲートウェイアドレス]
- ルータのデフォルトゲートウェイのアドレス
- [ [ゲートウェイアドレス]
ip default-gatewayコマンドはルータでルーティングが無効になっている場合,つまりルータがルータとしてではなくホストとしてしか動作していない場合のデフォルトゲートウェイを設定するためのコマンドです。ルーティングのデフォルトルートを設定するためのコマンドではありません。
記事中で,設定した経路情報が削除されないように指定するパラメータをparmanetとしていましたが,permanentの誤りです。お詫びして訂正します。本文は修正済みです。 [2009/09/25 14:30]