Cisco IOS XR OSPFネットワークタイプ設定方法
Cisco IOS XR でOSPFのネットワークタイプを変更するコマンドです。router ospf配下のinterfaceサブモードで指定します。タイプごとの動作の違いはOSPF ネットワークタイプを参照してください。
router ospf [プロセス名]
area [エリアID]
interface [インタフェース名]
network [タイプ]
!
!
!| 入力箇所 | 入力内容 |
|---|---|
| [タイプ] | broadcast / point-to-point / non-broadcast / point-to-multipoint のいずれか |
イーサネットのインタフェースは既定でbroadcastです。既定値のままならshow running-configにnetworkの行は出ません。
| タイプ | Hello / Dead | DR/BDR | ネイバーの発見 |
|---|---|---|---|
broadcast | 10 / 40秒 | 選出する | 自動(224.0.0.5) |
point-to-point | 10 / 40秒 | 選出しない | 自動(224.0.0.5) |
non-broadcast | 30 / 120秒 | 選出する | 手動(neighborが必要) |
point-to-multipoint | 30 / 120秒 | 選出しない | 自動(224.0.0.5) |
Hello / Deadインターバルはリンクの両端で一致していなければなりません。 タイプを変えると既定値も変わるため、片側だけ変更すると隣接が確立できなくなります。両端に同じ設定を入れてください。
ノンブロードキャストではネイバーを手動で指定する
non-broadcastはマルチキャストでネイバーを発見できないため、neighborコマンドで相手のアドレスを明示します。
router ospf [プロセス名]
area [エリアID]
interface [インタフェース名]
network non-broadcast
neighbor [ネイバーのIPアドレス]
!
!
!Hello / Deadインターバルを個別に変える
タイプごとの既定値を使わず、明示的に指定することもできます。
router ospf [プロセス名]
area [エリアID]
interface [インタフェース名]
hello-interval [秒]
dead-interval [秒]
!
!
!interface配下にip ospf network <タイプ>と書きます。タイプの名前は同じですが、IOS XRはrouter ospf配下の階層に書く点が異なります。Cisco IOS XR ネットワークタイプの確認コマンド
| コマンド | 確認できること |
|---|---|
show ospf interface [インタフェース名] | Network Type、Hello / Deadインターバル、DR/BDRの有無 |
show ospf interface brief | インタフェースごとの状態。DR/BDRを選出しないタイプではP2Pと表示される |
show ospf neighbor | 隣接の状態。ポイントツーポイントではDR/BDRが付かない |
show ospf database | Network-LSA(Type 2)の有無。DR/BDRを選出しないタイプでは作られない |
show ospf database router | Router-LSAのリンク種別(Transit か Point-to-Point) |
show running-config router ospf | 設定したネットワークタイプ |
実機での検証
XR1〜XR3の3台を直列に接続し、XR1–XR2間のネットワークタイプを変えて動作の違いを確認しました。XR2–XR3間は既定のブロードキャストのままにして、同じ装置の中で対比できるようにしています。
| リンク | ネットワークタイプ |
|---|---|
| XR1–XR2(10.1.2.0/24) | point-to-point(両端に設定) |
| XR2–XR3(10.2.3.0/24) | 既定のbroadcast |
ネットワークタイプの設定
router ospf 1
router-id 1.1.1.1
area 0
interface Loopback0
passive enable
!
interface GigabitEthernet0/0/0/0
network point-to-point
!
!
!router ospf 1
router-id 2.2.2.2
area 0
interface Loopback0
passive enable
!
interface GigabitEthernet0/0/0/0
network point-to-point
!
interface GigabitEthernet0/0/0/1
!
!
!router ospf 1
router-id 3.3.3.3
area 0
interface Loopback0
passive enable
!
interface GigabitEthernet0/0/0/0
!
!
!XR1とXR2のGigabitEthernet0/0/0/0(XR1–XR2間)だけにnetwork point-to-pointを入れています。XR2のGigabitEthernet0/0/0/1(XR2–XR3間)は既定のブロードキャストのままです。
XR1での投入の実行例です。
RP/0/RP0/CPU0:XR1#configure
Thu Sep 10 07:51:14.373 UTC
RP/0/RP0/CPU0:XR1(config)#router ospf 1
RP/0/RP0/CPU0:XR1(config-ospf)#router-id 1.1.1.1
RP/0/RP0/CPU0:XR1(config-ospf)#area 0
RP/0/RP0/CPU0:XR1(config-ospf-ar)#interface Loopback0
RP/0/RP0/CPU0:XR1(config-ospf-ar-if)#passive enable
RP/0/RP0/CPU0:XR1(config-ospf-ar-if)#exit
RP/0/RP0/CPU0:XR1(config-ospf-ar)#interface GigabitEthernet0/0/0/0
RP/0/RP0/CPU0:XR1(config-ospf-ar-if)#network point-to-point
RP/0/RP0/CPU0:XR1(config-ospf-ar-if)#exit
RP/0/RP0/CPU0:XR1(config-ospf-ar)#commit
Thu Sep 10 07:51:15.532 UTC
RP/0/RP0/CPU0:XR1(config-ospf-ar)#end
RP/0/RP0/CPU0:XR1#show running-config router ospf
Thu Sep 10 07:51:17.979 UTC
router ospf 1
router-id 1.1.1.1
area 0
interface Loopback0
passive enable
!
interface GigabitEthernet0/0/0/0
network point-to-point
!
!
!設定の確認
show ospf interface briefを中継のXR2で実行すると、2つのタイプが1画面に並びます。ポイントツーポイントにしたGi0/0/0/0はState欄がP2Pで、DR/BDRの役割が付きません。ブロードキャストのままのGi0/0/0/1はBDRです。
RP/0/RP0/CPU0:XR2#show ospf interface brief
Thu Sep 10 07:53:04.287 UTC
* Indicates MADJ interface, (P) Indicates fast detect hold down state
Interfaces for OSPF 1
Interface PID Area IP Address/Mask Cost State Nbrs F/C
Lo0 1 0 2.2.2.2/32 1 LOOP 0/0
Gi0/0/0/0 1 0 10.1.2.2/24 1 P2P 1/1
Gi0/0/0/1 1 0 10.2.3.2/24 1 BDR 1/1show ospf interfaceでポイントツーポイント側の詳細を見ます。Network Type POINT_TO_POINTとなり、DRとBDRを示す行そのものがありません。Hello / Deadインターバルは10秒 / 40秒で、ブロードキャストと同じ既定値です。
RP/0/RP0/CPU0:XR1#show ospf interface GigabitEthernet0/0/0/0
Thu Sep 10 07:53:45.375 UTC
GigabitEthernet0/0/0/0 is up, line protocol is up
Internet Address 10.1.2.1/24, Area 0, SID 0, Strict-SPF SID 0
Label stack Primary label 0 Backup label 0 SRTE label 0
Process ID 1, Router ID 1.1.1.1, Network Type POINT_TO_POINT, Cost: 1
Transmit Delay is 1 sec, State POINT_TO_POINT, MTU 1500, MaxPktSz 1500
Forward reference No, Unnumbered no, Bandwidth 1000000
RIB LC sync Yes
Timer intervals configured, Hello 10, Dead 40, Wait 40, Retransmit 5
Hello due in 00:00:03:298
Index 2/2, flood queue length 0
Next 0(0)/0(0)
Last flood scan length is 1, maximum is 1
Last flood scan time is 0 msec, maximum is 0 msec
LS Ack List: current length 0, high water mark 3
Neighbor Count is 1, Adjacent neighbor count is 1
Adjacent with neighbor 2.2.2.2
Suppress hello for 0 neighbor(s)
Multi-area interface Count is 0
Segment Routing Forwarding MPLS enabled: Yes
Adjacency hold timer expired last : Never
Exchange timer expired last : Nevershow ospf neighborのState欄にも違いが出ます。ポイントツーポイント側はFULL/ -で役割が空欄になり、ブロードキャスト側はFULL/DRです。
RP/0/RP0/CPU0:XR2#show ospf neighbor
Thu Sep 10 07:53:04.833 UTC
* Indicates MADJ interface
# Indicates Neighbor awaiting BFD session up
Neighbors for OSPF 1
Neighbor ID Pri State Dead Time Address Interface
1.1.1.1 1 FULL/ - 00:00:35 10.1.2.1 GigabitEthernet0/0/0/0
Neighbor is up for 00:01:28
3.3.3.3 1 FULL/DR 00:00:35 10.2.3.3 GigabitEthernet0/0/0/1
Neighbor is up for 00:01:10
Total neighbor count: 2LSDBにも表れます。Network-LSA(Net Link States)はブロードキャスト側の1つだけで、ポイントツーポイントのリンクには作られません。DR/BDRを選出しないタイプでは、リンクがRouter-LSAの中でanother Router (point-to-point)として広告されるためです。
RP/0/RP0/CPU0:XR2#show ospf database
Thu Sep 10 07:53:06.024 UTC
OSPF Router with ID (2.2.2.2) (Process ID 1)
Router Link States (Area 0)
Link ID ADV Router Age Seq# Checksum Link count
1.1.1.1 1.1.1.1 90 0x80000002 0x006d74 3
2.2.2.2 2.2.2.2 40 0x80000003 0x000e96 4
3.3.3.3 3.3.3.3 41 0x80000002 0x0006d2 2
Net Link States (Area 0)
Link ID ADV Router Age Seq# Checksum
10.2.3.3 3.3.3.3 41 0x80000001 0x0046c1検証Configおよびshow結果
3台すべてから、次の3種類をルータごとに分けて取得しています。検証Configはこの..._run.txtです。
| ファイル | 内容 |
|---|---|
..._show.txt | show version / show interface description / show route / show route ospf / show ospf / show ospf interface / show ospf interface brief / show ospf neighbor / show ospf neighbor detail / show ospf database / show ospf database router / show ospf database network / show ospf statistics interface / show ospf routes / show router-id / show ospf trace events |
..._log.txt | OSPFを設定する直前にlogmsgでマーカーを入れ、その時刻をshow logging startに指定して取得したshow logging |
..._run.txt | show running-config(=検証Config) |
| ルータ | show出力 | syslog | running-config |
|---|---|---|---|
| XR1 | show | log | run |
| XR2 | show | log | run |
| XR3 | show | log | run |
Router-LSAのリンク種別は..._show.txtのshow ospf database routerで確認できます。ポイントツーポイントのリンクはanother Router (point-to-point)として広告されています。
関連記事
ネットワークタイプごとの動作の違いはOSPF ネットワークタイプ、DR/BDRの選出はOSPFのDRとBDR、OSPFの基本的な設定はIOS XR OSPF基本設定を参照してください。