OSPF NBMA 087

今回はOSPFのNBMAについて解説します。

 

座学

NBMAについて

例えば、下図の様に、ISP(Internet Service Provider)が提供しているWAN接続サービスを使用して、離れた拠点間を接続し、かつ、離れた拠点間でOSPFを使用してルート情報を交換したいケースが存在します。しかし、一部のWAN接続サービスではブロードキャストやマルチキャストの転送をサポートしていない場合があります。

 

OSPFでは、上記の様なブロードキャストとマルチキャストをサポートしていないネットワークのことをNBMA(Non-Broadcast Multi Access)ネットワークと呼びます。

NBMAにおいては、各ルータでネイバーのアドレスを明示的に指定することで、マルチキャストを使用せずに、ネイバーを確立することが可能です。

 

NBMAにおいて、OSPFは以下の2種類のNetwork Typeを使用可能です。

  • Non-Broadcast
  • Point-to-Multipoint Non-Broadcast

 

Non-Broadcastネットワークでは、Broadcastネットワークと同様にLSA Type 1とLSA Type 2を生成します。

 

実機での動作確認

検証内容

R1のg2、R2のg2とg3でOSPF Area 0を有効にします。
10.1.1.0/24のNetwork TypeにはNon Broadcastを使用します。

 

初期設定


interface GigabitEthernet2
 ip address 10.1.1.1 255.255.255.0
 ip ospf network non-broadcast
!
router ospf 1
 router-id 1.1.1.1
 network 10.1.1.0 0.0.0.255 area 0
 neighbor 10.1.1.2
            


interface GigabitEthernet2
 ip address 10.1.1.2 255.255.255.0
 ip ospf network non-broadcast
!
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
 neighbor 10.1.1.1
            

 

コマンドの確認

ip ospf network non-broadcastコマンドを使用することで、インタフェースのNetwork TypeをNon-Broadcastに変更可能です。

また、ネイバーを確立する対向のルータのIPアドレスはneighbor <address>コマンドで指定します。

R1

interface GigabitEthernet2
 ip ospf network non-broadcast
!
router ospf 1
 neighbor 10.1.1.2
            

 

OSPFが動作しているインタフェースの状態確認

R1のg2のNetwork TypeがNon-Broadcastであることが確認できます。

R1

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 NON_BROADCAST, Cost: 1
  Topology-MTID    Cost    Disabled    Shutdown      Topology Name
        0           1         no          no            Base
  Transmit Delay is 1 sec, State BDR, Priority 1
  Designated Router (ID) 2.2.2.2, Interface address 10.1.1.2
  Backup Designated router (ID) 1.1.1.1, Interface address 10.1.1.1
  Flush timer for old DR LSA due in 00:02:28
  Timer intervals configured, Hello 30, Dead 120, Wait 120, Retransmit 5
    oob-resync timeout 120
    Hello due in 00:00:18
  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 0 msec
  Neighbor Count is 1, Adjacent neighbor count is 1
    Adjacent with neighbor 2.2.2.2  (Designated Router)
  Suppress hello for 0 neighbor(s)
            

 

OSPFネイバーの状態確認

Non-BroadcastやPoint-to-Multipoint Non-BroadcastネットワークではネイバーからHelloパケットを受信する前の状態をAttemptと呼びます。

R1

R1#show ip ospf neighbor detail
 Neighbor N/A, interface address 10.1.1.2
    In the area 0 via interface GigabitEthernet2
    Neighbor priority is 0 (configured 0), State is ATTEMPT, 1 state changes
    DR is 0.0.0.0 BDR is 0.0.0.0
    Poll interval 120
    Options is 0x0 in Hello
    Dead timer due in 00:01:09
    Index 0/0/0, retransmission queue length 0, number of retransmission 0
    First 0x0(0)/0x0(0)/0x0(0) Next 0x0(0)/0x0(0)/0x0(0)
    Last retransmission scan length is 0, maximum is 0
    Last retransmission scan time is 0 msec, maximum is 0 msec
            

 

ネイバーからHelloパケットを受信し、LSDBの同期が完了すると、Full状態に遷移します。

R1

R1#show ip ospf neighbor detail
 Neighbor 2.2.2.2, interface address 10.1.1.2, interface-id 6
    In the area 0 via interface GigabitEthernet2
    Neighbor priority is 1 (configured 0), State is FULL, 8 state changes
    DR is 10.1.1.2 BDR is 10.1.1.1
    Poll interval 120
    Options is 0x12 in Hello (E-bit, L-bit)
    Options is 0x52 in DBD (E-bit, L-bit, O-bit)
    LLS Options is 0x1 (LR)
    Dead timer due in 00:01:54
    Neighbor is up for 00:00:36
    Index 1/1/1, retransmission queue length 0, number of retransmission 0
    First 0x0(0)/0x0(0)/0x0(0) Next 0x0(0)/0x0(0)/0x0(0)
    Last retransmission scan length is 0, maximum is 0
    Last retransmission scan time is 0 msec, maximum is 0 msec
            

 

Helloパケットの確認

R1はR2宛にユニキャストでHelloパケットを送信していることが確認できます。

R1

R1#debug ip ospf hello
*Jun  4 00:50:43.065: OSPF-1 HELLO Gi2: Send hello to 10.1.1.2 area 0 from 10.1.1.1
            

 

LSDBの状態確認

 

LSA Type 1とLSA Type 2が生成されていることが確認できます。

R1

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         258         0x80000003 0x009C71 1
2.2.2.2         2.2.2.2         245         0x8000000B 0x008954 2

                Net Link States (Area 0)

Link ID         ADV Router      Age         Seq#       Checksum
10.1.1.2        2.2.2.2         259         0x80000001 0x002CEB
            

 

R1が生成したLSA Type 1には、DRであるR2のIPアドレスの情報が格納されていることが確認できます。

R1

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: 265
  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: 80000003
  Checksum: 0x9C71
  Length: 36
  Number of Links: 1

    Link connected to: a Transit Network
     (Link ID) Designated Router address: 10.1.1.2
     (Link Data) Router Interface address: 10.1.1.1
      Number of MTID metrics: 0
       TOS 0 Metrics: 1
            

 

R2が生成したLSA Type 1には、DRであるR2のIPアドレスの情報が格納されていることが確認できます。

R2

R2#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: 254
  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: 8000000A
  Checksum: 0x8B53
  Length: 48
  Number of Links: 2

    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: a Transit Network
     (Link ID) Designated Router address: 10.1.1.2
     (Link Data) Router Interface address: 10.1.1.2
      Number of MTID metrics: 0
       TOS 0 Metrics: 1
            

 

R2が生成したLSA Type 2には、R1とR2のRouter IDが格納されていることが確認できます。

R2

R2#show ip ospf database network 10.1.1.2 adv-router 2.2.2.2

            OSPF Router with ID (1.1.1.1) (Process ID 1)

                Net Link States (Area 0)

  LS age: 279
  Options: (No TOS-capability, DC)
  LS Type: Network Links
  Link State ID: 10.1.1.2 (address of Designated Router)
  Advertising Router: 2.2.2.2
  LS Seq Number: 80000001
  Checksum: 0x2CEB
  Length: 32
  Network Mask: /24
        Attached Router: 2.2.2.2
        Attached Router: 1.1.1.1
            

 

SPFの計算結果の確認

R1はNon-Broadcastネットワーク経由で学習した10.2.2.0/24のネクストホップを正しく求められていることが確認できます。

R1

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
            

 

ルーティングテーブルの確認

R1のルーティングテーブルに10.2.2.0/24が存在することが確認できます。

R1

R1#show ip route ospf
      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:00:59, GigabitEthernet2
            

 

疎通確認

R1の10.1.1.1からR2の10.2.2.2へのPingが成功したため、R1はNon-Broadcastネットワーク経由で学習したネットワークとの疎通可能なことが確認できます。

R1

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
            

コメント

タイトルとURLをコピーしました