■OSPFの設定
実際のOSPFの設定例です。
(config)# router ospf [ProcessID] |
上記のコマンドでospfを有効にします。プロセスIDは1~65535から選択可能であり他のルータと一致させる必要はありません。
(config)# router ospf 110 (config-router)# router-id 192.168.1.1 (config-router)# auto-cost reference-bandwidth 10000 |
上記でルータIDを192.168.1.1に指定しています。
そしてコストを算出するための100Mを10Gにauto-costコマンドで変更しています。注意すべきなのは1台だけのルータで設定するのではなくOSPFに参加しているルータ全てで同一の設定を行う必要があります。この設定を行うことにより帯域幅に応じたコスト値は次のようになります。
帯域 | コスト |
10M | 10G÷10M=1000 |
100M | 10G÷100M=100 |
1G | 10G÷1G=0.1=10 |
10G | 10G÷10G=0.01=1 |
明示的な指定をしなければ上記のコストがインターフェイスに適用されますが次のコマンドで上書きすることもできます。
(config)# interface VlanX (config-if)# ip ospf cost 50 |
OSPFはセグメントごとにDR/BDRが選出されます。プライオリティ値が最も高いものがDRに選出されますがそのプライオリティをインターフェイスごとに設定するコマンドが下記です。
(config)# interface VlanX (config-if)# ip ospf priority 15 |
OSPFで動作させるネットワークを以下のコマンドで指定します。ネットマスクではなくワイルドカードマスクが利用されます。これに指定したネットワークはOSPFドメインの全てのネットワークにアドバタイズ(広報)されます。
(config)# router ospf 110 (config-router)# network 192.160.0.0 0.0.0.255 area 0 (config-router)# network 192.168.1.0 0.0.0.255 area 0 |
そのOSPFルータからデフォルトルートをOSPFに配信する場合は以下のコマンドを投入します。alwaysキーワードは常にデフォルトルートを配信し、つけなければルーティングテーブルにデフォルトルートが存在する場合のみ配信します。]他のルータからみたデフォルトルートの最終的なネクストホップは下記を設定したルータのアドレスになります。
(config)# router ospf 110 (config-router)# default-information originate [always] |
Helloパケット送出を以下のコマンドで抑制できます。接続しているセグメントにOSPFルータが自身しかいない場合、Helloパケットを出しても意味がありませんのでその場合は以下のコマンドでHelloコマンドを停止することをおすすめします。
(config)# router ospf 110 (config-router)# passive-interface VlanX (config-router)# passive-interface VlanY |
他のOSPFルータと隣接関係を確立する際にあらかじめ設定しておいたパスワードが一致したときのみ確立するよう設定できます。これにはシンプルパスワードを使う方法とMD5認証を使い二つのケースがあります。シンプルパスワードはパスワーが平文で流れるのに対してMD5はハッシュで暗号化されたものが流れますのでセキュリティ強度を考慮すればMD5認証のほうが望ましいです。
下記ではシンプルパスワードを使う際の設定です。パスワードはciscoに設定しています。
(config)# router ospf 110 (config-router)# area 0 authentication (config)# interface VlanX (config-if)# ip ospf authentication-key cisco |
下記ではMD5認証を使う際の設定で、認証キーを1にパスワードをciscoに設定しています。
(config)# router ospf 110 (config-router)# area 0 authentication message-digest (config)# interface VlanX (config-if)# ip ospf message-digest-key 1 md5 cisco |
■OSPFの経路再配布/制御
大規模なネットワークになるほど、1つのルーティングプロトコルのみで運用しているところは少ないと思います。OSPFなどのダイナミックルーティングプロトコルを使用しているところならStaticRoutingは少なからず入り混じってると思います。こういった場合、Static経路をOSPFに再配布する必要があります。
上の構成図でR2とR3では以下のようなコンフィグで設定しています。
【 R2 】 router ospf 110 log-adjacency-changes redistribute static subnets network 192.168.0.0 0.0.0.255 area 0 network 192.168.2.0 0.0.0.255 area 0 ! ip forward-protocol nd ip route 172.16.0.0 255.255.255.0 192.168.2.1 ip route 172.16.1.0 255.255.255.0 192.168.2.1 ip route 172.16.2.0 255.255.255.0 192.168.2.1 【 R3 】 router ospf 110 log-adjacency-changes redistribute static subnets network 192.168.1.0 0.0.0.255 area 0 network 192.168.3.0 0.0.0.255 area 0 ! ip forward-protocol nd ip route 172.16.0.0 255.255.255.0 192.168.3.1 ip route 172.16.1.0 255.255.255.0 192.168.3.1 ip route 172.16.2.0 255.255.255.0 192.168.3.1 |
このとき、R1のルーティングテーブルは以下のようになります。172.16に対する経路は2つ存在し、R2/R3から同条件で再配布しているのでメトリックも全く同一となりバランスされる状態になります。
R1# show ip route Codes: C - connected, S - static, R - RIP, M - mobile, B - BGP D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2 E1 - OSPF external type 1, E2 - OSPF external type 2 i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2 ia - IS-IS inter area, * - candidate default, U - per-user static route o - ODR, P - periodic downloaded static route Gateway of last resort is not set 172.16.0.0/24 is subnetted, 3 subnets O E2 172.16.0.0 [110/20] via 192.168.1.2, 00:00:04, FastEthernet0/1 [110/20] via 192.168.0.2, 00:00:04, FastEthernet0/0 O E2 172.16.1.0 [110/20] via 192.168.1.2, 00:00:04, FastEthernet0/1 [110/20] via 192.168.0.2, 00:00:04, FastEthernet0/0 O E2 172.16.2.0 [110/20] via 192.168.1.2, 00:00:04, FastEthernet0/1 [110/20] via 192.168.0.2, 00:00:04, FastEthernet0/0 C 192.168.0.0/24 is directly connected, FastEthernet0/0 C 192.168.1.0/24 is directly connected, FastEthernet0/1 O 192.168.2.0/24 [110/20] via 192.168.0.2, 00:00:18, FastEthernet0/0 O 192.168.3.0/24 [110/20] via 192.168.1.2, 00:00:18, FastEthernet0/1 |
今は3経路とも再配布されていますが、この中の例えば172.16.0.0/24のみ再配布するという制御も可能です。R2とR3にroute-mapを使用した設定を追加します。
【 R2 / R3 】 access-list 10 permit 172.16.0.0 0.0.0.255 route-map red-ospf permit 10 match ip address 10 router ospf 110 redistribute static subnets route-map red-ospf 【 R1 】 # show ip route Codes: C - connected, S - static, R - RIP, M - mobile, B - BGP D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2 E1 - OSPF external type 1, E2 - OSPF external type 2 i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2 ia - IS-IS inter area, * - candidate default, U - per-user static route o - ODR, P - periodic downloaded static route Gateway of last resort is not set 172.16.0.0/24 is subnetted, 1 subnets O E2 172.16.0.0 [110/20] via 192.168.1.2, 00:04:10, FastEthernet0/1 [110/20] via 192.168.0.2, 00:04:10, FastEthernet0/0 C 192.168.0.0/24 is directly connected, FastEthernet0/0 C 192.168.1.0/24 is directly connected, FastEthernet0/1 O 192.168.2.0/24 [110/20] via 192.168.0.2, 00:22:57, FastEthernet0/0 O 192.168.3.0/24 [110/20] via 192.168.1.2, 00:22:57, FastEthernet0/1 |
redistributeで再配布した経路はデフォルトでmetric-type 2になります。metric-type1との違いは以下です。
metric-type 1 | コスト加算型。 途中経路のコストを全て足してメトリックが計算される。 |
metric-type 2 | コスト統一型。 途中、どれだけのルータを経由したとしても全て同一の メトリックで経路が配信される。 |
上記だけを見るとtype 2のほうが優先されそうですが、実はtype 2よりtype 1のほうが優先されます。仮にR2の設定を以下のように変更した場合、R1のルーティングテーブルは次のようになります。type1のほうが優先されますのでR2経由の経路しか見えなくなり、R2がダウンするとR3経由の経路が浮かび上がってきます。
【 R2 】 router ospf 110 redistribute static metric-type 1 subnets 【 R1 】 # show ip route Codes: C - connected, S - static, R - RIP, M - mobile, B - BGP D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2 E1 - OSPF external type 1, E2 - OSPF external type 2 i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2 ia - IS-IS inter area, * - candidate default, U - per-user static route o - ODR, P - periodic downloaded static route Gateway of last resort is not set 172.16.0.0/24 is subnetted, 3 subnets O E1 172.16.0.0 [110/40] via 192.168.0.2, 00:00:48, FastEthernet0/0 O E1 172.16.1.0 [110/40] via 192.168.0.2, 00:00:48, FastEthernet0/0 O E1 172.16.2.0 [110/40] via 192.168.0.2, 00:00:48, FastEthernet0/0 C 192.168.0.0/24 is directly connected, FastEthernet0/0 C 192.168.1.0/24 is directly connected, FastEthernet0/1 O 192.168.2.0/24 [110/20] via 192.168.0.2, 00:14:38, FastEthernet0/0 O 192.168.3.0/24 [110/20] via 192.168.1.2, 00:14:38, FastEthernet0/1 |
上記ではmetric-typeで優劣をつけていますが、metric属性で優劣をつけることも可能です。下記ではR2とR3でmetric type 2とし、metric属性で優劣をつけています。metric値は低いほうが優先されます。
【 R2 】 router ospf 110 redistribute static metric 200 subnets 【 R3 】 router ospf 110 redistribute static metric 300 subnets 【 R1 】 # show ip route *Mar 1 01:15:04.007: %SYS-5-CONFIG_I: Configured from console by console R1#show ip route Codes: C - connected, S - static, R - RIP, M - mobile, B - BGP D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2 E1 - OSPF external type 1, E2 - OSPF external type 2 i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2 ia - IS-IS inter area, * - candidate default, U - per-user static route o - ODR, P - periodic downloaded static route Gateway of last resort is not set 172.16.0.0/24 is subnetted, 3 subnets O E2 172.16.0.0 [110/200] via 192.168.0.2, 00:00:07, FastEthernet0/0 O E2 172.16.1.0 [110/200] via 192.168.0.2, 00:00:07, FastEthernet0/0 O E2 172.16.2.0 [110/200] via 192.168.0.2, 00:00:07, FastEthernet0/0 C 192.168.0.0/24 is directly connected, FastEthernet0/0 C 192.168.1.0/24 is directly connected, FastEthernet0/1 O 192.168.2.0/24 [110/20] via 192.168.0.2, 00:38:51, FastEthernet0/0 O 192.168.3.0/24 [110/20] via 192.168.1.2, 00:38:51, FastEthernet0/1 |
■OSPFの設定確認
OSPFでステータスを確認するshowコマンドには主に以下のものがあります。
・show ip ospf [ProcessID]
OSPFプロセスやルータID、エリアの割り当て、認証、SFP統計など全てのOSPF関連情報を要約する。
# show ip ospf 110 Routing Process "ospf 110" with ID 192.168.1.1 Start time: 00:03:04.740, Time elapsed: 24w0d Supports only single TOS(TOS0) routes Supports opaque LSA Supports Link-local Signaling (LLS) Supports area transit capability It is an autonomous system boundary router Redistributing External Routes from, static, includes subnets in redistribution Router is not originating router-LSAs with maximum metric Initial SPF schedule delay 5000 msecs Minimum hold time between two consecutive SPFs 10000 msecs Maximum wait time between two consecutive SPFs 10000 msecs Incremental-SPF disabled Minimum LSA interval 5 secs Minimum LSA arrival 1000 msecs LSA group pacing timer 240 secs Interface flood pacing timer 33 msecs Retransmission pacing timer 66 msecs Number of external LSA 17. Checksum Sum 0x05E46F Number of opaque AS LSA 0. Checksum Sum 0x000000 Number of DCbitless external and opaque AS LSA 0 Number of DoNotAge external and opaque AS LSA 0 Number of areas in this router is 1. 1 normal 0 stub 0 nssa Number of areas transit capable is 0 External flood list length 0 IETF NSF helper support enabled Cisco NSF helper support enabled Reference bandwidth unit is 1000 mbps Area BACKBONE(0) Number of interfaces in this area is 7 Area has simple password authentication SPF algorithm last executed 2d01h ago SPF algorithm executed 33 times Area ranges are Number of LSA 12. Checksum Sum 0x059E9A Number of opaque link LSA 0. Checksum Sum 0x000000 Number of DCbitless LSA 0 Number of indication LSA 0 Number of DoNotAge LSA 0 Flood list length 0 |
・show ip ospf database
LSDBを表示する。このコマンドで表示される情報はリンクの数と隣接しているルータIDです。出力はエリアごとにわかれます。ただ、実務ではこのコマンドは取得することはあっても参考にすることはあまりありません。
# show ip ospf database OSPF Router with ID (192.168.1.1) (Process ID 110) Router Link States (Area 0) Link ID ADV Router Age Seq# Checksum Link count 172.16.255.1 172.16.255.1 69 0x80001C64 0x00CB2F 15 172.17.255.1 172.17.255.1 1118 0x8000005C 0x0053E0 13 172.18.255.1 172.18.255.1 1622 0x8000A287 0x00EB2E 4 172.19.255.2 172.19.255.2 784 0x80003F87 0x002488 4 |
・show ip ospf interface
このコマンドで表示するのはインターフェイスのOSPF関連の情報です。情報としてはインターフェイスのIP、エリアの割り当て、プロセスID、ルータID、ネットワークタイプ、コスト、プライオリティ、DR/BDR、タイマー間隔、隣接している近隣ルータの情報などが出力されます。
# sh ip ospf interface Vlan100 Vlan100 is up, line protocol is up Internet Address 172.16.100.1/24, Area 0 Process ID 110, Router ID 172.16.100.1, Network Type BROADCAST, Cost: 1 Transmit Delay is 1 sec, State BDR, Priority 1 Designated Router (ID) 172.16.200.1, Interface address 172.16.200.1 Backup Designated router (ID) 172.16.50.1, Interface address 172.16.50.1 Timer intervals configured, Hello 10, Dead 40, Wait 40, Retransmit 5 oob-resync timeout 40 Hello due in 00:00:03 Supports Link-local Signaling (LLS) Cisco NSF helper support enabled IETF NSF helper support enabled Index 7/7, flood queue length 0 Next 0x0(0)/0x0(0) Last flood scan length is 9, maximum is 9 Last flood scan time is 0 msec, maximum is 4 msec Neighbor Count is 1, Adjacent neighbor count is 1 Adjacent with neighbor 172.16.200.1 (Designated Router) Suppress hello for 0 neighbor(s) Simple password authentication enabled |
・show ip ospf neighbor
このコマンドはOSPF関連のコマンドで実務において最もよく使うコマンドです。近隣ルータや隣接関係の状態に関連のあるOSPF情報をまとめてくれ、DR/BDRが存在する場合はその情報も表示されます。
# show ip ospf neighbor Neighbor ID Pri State Dead Time Address Interface 172.16.255.1 1 FULL/DR 00:00:38 172.16.255.1 Vlan100 |
・clear ip ospf process
何らかの理由でOSPFプロセスを再起動させたい場合、以下のコマンドで可能です。
# clear ip ospf process |