今回はOSPFのNetwork TypeのPoint-to-Pointを題材にLSA Type 1を解説します。
座学
Network TypeとPoint-to-Point
OSPFが動作しているインタフェースにはNetwork Typeと呼ばれるパラメータが存在します。Network Typeは全部で5種類存在し、Network Typeにより、LSA Type 1の構造が異なります。
今回題材として扱うNetwork TypeのPoint-to-Pointは、2台のルータが直接接続されたネットワークで使用します。スイッチを経由して3台以上のルータが接続されたネットワークではPoint-to-Pointは使用不可になります。(Point-to-PointのことをP2Pと表記することもあります。)
LSA Type 1について
以前の記事で、OSPFではルータ間でLSAと呼ばれる情報を交換し、LSAをパズルのピースの様につなぎ合わせることでネットワーク全体の構成図を作成し、各宛先へのベストパスを算出することを解説しました。
LSAの中で、最も基本的なLSAがLSA Type 1であるRouter LSAになります。イメージとして、LSA Type 1はOSPFが動作しているルータ自身を表現します。
OSPFが動作している全ルータがLSA Type 1を生成します。LSA Type 1生成後、各ルータはLSA Type 1を交換します。その後、収集したLSA Type 1をパズルのピースの様につなぎ合わせて、ネットワーク全体の構成図を作成します。そして、SPFアルゴリズムを基に、自身を根としたSPTを生成し、各宛先へのベストパスを計算します。
子供の頃に遊んだパズルの場合、パズルの各ピースの形や柄を基に、パズルを組み立てるかと思います。つまり、パズルの各ピースには、接続先のピースを判断する情報が含まれています。
現実世界のパズルと同様に、LSA Type 1にも、隣接している接続先のルータを識別するための情報、つまり、ネットワーク構成に関する情報が存在します。
LSA Type 1には、Linkとよばれる情報が存在し、Link Typeが1(P2P)の場合は隣接しているルータのRouter ID、Link Typeが3(Stub)の場合は自身のインタフェースに割り当てられたネットワークアドレスが格納されています。また、LSA Type 1の場合、LSAヘッダのLink State IDにはLSAの生成元のルータのRouter IDが格納されます。
下図の様に、R1が生成したLSA Type 1には隣接するR2のRouter ID、R2が生成したLSA Type 1のLink State IDにはR2のRouter IDが格納されます。この結果、Link ID(隣接するルータのRouter ID)とLink State ID(LSAの生成元のルータのRouter ID)の値を使用することで、2つのLSA Type 2をパズルのピースの様につなぎ合わせることが可能です。
また、OSPFはルーティングプロトコルなので10.1.1.0/24などのルート情報もLSAに格納されます。
最後にまとめとして、OSPFのLSAには大きく分けて以下の2種類の情報が存在することを認識しておくことが大事になります。
- ネットワーク構成を表す情報
- ルート情報
LSA Type 1のパケットフォーマット
・Link State ID
LSA Type 1の場合、LSAの生成元のルータのRouter IDが格納されます。
・Link ID , Link Data , Link Type
Link Typeによって、Link ID、Link Dataに格納される値が変化します。
・Number of TOS
Multi Topologyで使用される値。通常は0が格納されます。
・Metric
インタフェースのコストが格納されます。
実機での動作確認
検証内容
R1、R2でOSPF Area 0を有効にし、ルート情報を交換します。
Network TypeにはPoint-to-Pointを使用します。
初期設定
interface GigabitEthernet2
ip address 10.1.1.1 255.255.255.0
ip ospf network point-to-point
!
router ospf 1
router-id 1.1.1.1
network 10.1.1.0 0.0.0.255 area 0
interface GigabitEthernet2
ip address 10.1.1.2 255.255.255.0
ip ospf network point-to-point
!
interface GigabitEthernet3
ip address 10.2.2.2 255.255.255.0
!
router ospf 1
router-id 2.2.2.2
network 10.1.1.0 0.0.0.255 area 0
network 10.2.2.0 0.0.0.255 area 0
OSPFのPoint-to-Pointネットワークの設定確認
デフォルトで、EthernetインタフェースのNetwork TypeはBroadcastになります。Network TypeをPoint-to-Pointに変更するには、ip ospf network point-to-pointコマンドを使用します。
interface GigabitEthernet2
ip ospf network point-to-point
OSPFが動作しているインタフェースの状態確認
OSPFが動作しているインタフェースのNetwork Typeはshow ip ospf interfaceコマンドで確認可能です。
R1のg2のNetwork TypeがPoint-to-Pointであることが確認できます。
R1#show ip ospf interface
GigabitEthernet2 is up, line protocol is up
Internet Address 10.1.1.1/24, Interface ID 6, Area 0
Attached via Network Statement
Process ID 1, Router ID 1.1.1.1, Network Type POINT_TO_POINT, Cost: 1
Topology-MTID Cost Disabled Shutdown Topology Name
0 1 no no Base
Transmit Delay is 1 sec, State POINT_TO_POINT
Timer intervals configured, Hello 10, Dead 40, Wait 40, Retransmit 5
oob-resync timeout 40
Hello due in 00:00:05
Supports Link-local Signaling (LLS)
Cisco NSF helper support enabled
IETF NSF helper support enabled
Index 1/1/1, flood queue length 0
Next 0x0(0)/0x0(0)/0x0(0)
Last flood scan length is 1, maximum is 1
Last flood scan time is 0 msec, maximum is 1 msec
Neighbor Count is 1, Adjacent neighbor count is 1
Adjacent with neighbor 2.2.2.2
Suppress hello for 0 neighbor(s)
OSPFネイバー/アジャセンシーの状態確認
R1はNetwork TypeがPoint-to-Pointのg2上でR2とOSPFネイバー/アジャセンシーを確立していることが確認できます。
R1#show ip ospf neighbor
Neighbor ID Pri State Dead Time Address Interface
2.2.2.2 0 FULL/ - 00:00:32 10.1.1.2 GigabitEthernet2
LSAの状態確認
R1、R2共に、LSA Type 1を生成していることが確認できます。
R1#show ip ospf database
OSPF Router with ID (1.1.1.1) (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 755 0x80000002 0x00DD1B 2
2.2.2.2 2.2.2.2 716 0x80000003 0x00F2E0 3
LSA Type 1の詳細を確認したい場合は、show ip ospf database router adv-router <router-id>コマンドを使用します。adv-router <router-id>オプションを省略した場合、LSDBに存在する全てのLSA Type 1が表示されます。
以下はR1が生成したLSA Type 1になります。Link State IDにLSAの生成元のR1のRouter ID、Link Type 1(P2P)のLinkのLink IDに隣接するR2のRouter ID、Link Type 3(Stub)のLink ID/Link Dataに10.1.1.0/24が格納されていることが確認できます。
R1#show ip ospf database router adv-router 1.1.1.1
OSPF Router with ID (1.1.1.1) (Process ID 1)
Router Link States (Area 0)
LS age: 772
Options: (No TOS-capability, DC)
LS Type: Router Links
Link State ID: 1.1.1.1
Advertising Router: 1.1.1.1
LS Seq Number: 80000002
Checksum: 0xDD1B
Length: 48
Number of Links: 2
Link connected to: another Router (point-to-point)
(Link ID) Neighboring Router ID: 2.2.2.2
(Link Data) Router Interface address: 10.1.1.1
Number of MTID metrics: 0
TOS 0 Metrics: 1
Link connected to: a Stub Network
(Link ID) Network/subnet number: 10.1.1.0
(Link Data) Network Mask: 255.255.255.0
Number of MTID metrics: 0
TOS 0 Metrics: 1
以下はR2が生成したLSA Type 1になります。Link State IDにLSAの生成元のR2のRouter ID、Link Type 1(P2P)のLinkのLink IDに隣接するR1のRouter ID、Link Type 3(Stub)のLink ID/Link Dataに10.1.1.0/24と10.2.2.0/24が格納されていることが確認できます。
R1#show ip ospf database router adv-router 2.2.2.2
OSPF Router with ID (1.1.1.1) (Process ID 1)
Router Link States (Area 0)
LS age: 736
Options: (No TOS-capability, DC)
LS Type: Router Links
Link State ID: 2.2.2.2
Advertising Router: 2.2.2.2
LS Seq Number: 80000003
Checksum: 0xF2E0
Length: 60
Number of Links: 3
Link connected to: a Stub Network
(Link ID) Network/subnet number: 10.2.2.0
(Link Data) Network Mask: 255.255.255.0
Number of MTID metrics: 0
TOS 0 Metrics: 1
Link connected to: another Router (point-to-point)
(Link ID) Neighboring Router ID: 1.1.1.1
(Link Data) Router Interface address: 10.1.1.2
Number of MTID metrics: 0
TOS 0 Metrics: 1
Link connected to: a Stub Network
(Link ID) Network/subnet number: 10.1.1.0
(Link Data) Network Mask: 255.255.255.0
Number of MTID metrics: 0
TOS 0 Metrics: 1
SPFの計算結果の確認
SPFの計算結果はshow ip ospf ribコマンドで確認可能です。
R1は自身が生成したLSA Type 1とR2が生成したLSA Type 1をつなぎ合わせることで、10.2.2.0/24へのネクストホップとコストを計算可能です。
R1#show ip ospf rib
OSPF Router with ID (1.1.1.1) (Process ID 1)
Base Topology (MTID 0)
OSPF local RIB
Codes: * - Best, > - Installed in global RIB
* 10.1.1.0/24, Intra, cost 1, area 0, Connected
via 10.1.1.1, GigabitEthernet2
*> 10.2.2.0/24, Intra, cost 2, area 0
via 10.1.1.2, GigabitEthernet2
ルーティングテーブルの確認
OSPFで学習した同一Area内のルート情報の先頭にはOと表示されます。
R1のルーティングテーブルに10.2.2.0/24が存在することが確認できます。
R1#show ip ospf rib
10.0.0.0/8 is variably subnetted, 3 subnets, 2 masks
O 10.2.2.0/24 [110/2] via 10.1.1.2, 00:14:56, GigabitEthernet2
疎通確認
R1の10.1.1.1からR2の10.2.2.2へのPingが成功したことから、R1はOSPF経由で学習した同一Area内の10.2.2.0/24と疎通可能なことが確認できます。
R1#ping 10.2.2.2 source 10.1.1.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10.2.2.2, timeout is 2 seconds:
Packet sent with a source address of 10.1.1.1
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/1/1 ms
コメント