【DMVPN】フェーズ1上のOSPF( Broadcastタイプ)

 OSPFのBroadcastネットワークタイプの動作を確認します。イーサネットのデフォルトのタイプで、2台以上のルータが接続されるマルチアクセスで使用されます。

 では、以下の構成でOSPFのネットワークタイプをBroadcastにします。DMVPNの構成は以下の記事を参照してください。

 また、OSPFの基本設定は以下を参照してください。

 設定は以下の通りです。

R2(config)# interface Tunnel0
R2(config-if)# ip ospf network broadcast
R5(config)# interface Tunnel0
R5(config-if)# ip ospf network broadcast
R6(config)# interface Tunnel0
R6(config-if)# ip ospf network broadcast

 トンネルインタフェースのOSPF状態を確認します。ネットワークタイプがBroadcastで、Helloインターバルが10秒、Deadインターバルが40秒であることが確認できます。

R2# show ip ospf interface tunnel0

Tunnel0 is up, line protocol is up
  Internet Address 192.168.0.2/24, Area 0, Attached via Network Statement
  Process ID 1, Router ID 2.2.2.2, Network Type BROADCAST, Cost: 1000
  Topology-MTID    Cost    Disabled    Shutdown      Topology Name
        0           1000      no          no            Base
  Transmit Delay is 1 sec, State DR, Priority 1
  Designated Router (ID) 2.2.2.2, Interface address 192.168.0.2
  No backup designated router on this network
  Timer intervals configured, Hello 10, Dead 40, Wait 40, Retransmit 5
    oob-resync timeout 40
    Hello due in 00:00:08

 R2でパケットキャプチャすると、マルチキャストアドレス224.0.0.5宛にHelloパケットが送信されていることが確認できます。 このHelloパケットにより動的にネイバーを検出します。

 それでは、R2で隣接状態を確認します。

R2# show ip ospf neighbor
Neighbor ID     Pri   State           Dead Time   Address         Interface
5.5.5.5           1   FULL/DROTHER    00:00:36    192.168.0.5     Tunnel0
6.6.6.6           1   FULL/DR         00:00:32    192.168.0.6     Tunnel0

 R6(6.6.6.6)がDRで、R5(5.5.5.5)がDROTHERであることがわかります。 スポークルータ間は直接接続できず、お互いハブルータとしか直接接続ができません。スポークルータがDRまたはBDRとして選出されないようにする必要があります。DR/BDRに強制的に選出されないようにするには、インタフェースの優先度を0に設定します。

R5(config)#interface tunnel 0
R5(config-if)#ip ospf priority 0
R6(config)#interface tunnel 0
R6(config-if)#ip ospf priority 0

 ハブルータ(R2)でOSPFのプロセスをリセットします。

R2# clear ip ospf process
Reset ALL OSPF processes? [no]: yes
R2#
%OSPF-5-ADJCHG: Process 1, Nbr 5.5.5.5 on Tunnel0 from FULL to DOWN, Neighbor Down: 
Interface down or detached
%OSPF-5-ADJCHG: Process 1, Nbr 6.6.6.6 on Tunnel0 from FULL to DOWN, Neighbor Down: 
Interface down or detached
%OSPF-5-ADJCHG: Process 1, Nbr 6.6.6.6 on Tunnel0 from LOADING to FULL, Loading Done
%OSPF-5-ADJCHG: Process 1, Nbr 5.5.5.5 on Tunnel0 from LOADING to FULL, Loading Done

 では、R2で隣接状態を確認すると、R5(5.5.5.5)、R6(6.6.6.6)ともDRでもBDRでもないDROTHERであることが確認できます。

R2# show ip ospf neighbor

Neighbor ID     Pri   State           Dead Time   Address         Interface
5.5.5.5           0   FULL/DROTHER    00:00:39    192.168.0.5     Tunnel0
6.6.6.6           0   FULL/DROTHER    00:00:35    192.168.0.6     Tunnel0
R2#

 R5,R6のネイバー状態を見ると、ハブルータであるR2がDRとしてFULL状態の隣接関係であることが確認できます。

R5# show ip ospf neighbor 
Neighbor ID     Pri   State           Dead Time   Address         Interface
2.2.2.2           1   FULL/DR         00:00:33    192.168.0.2     Tunnel0
R6# show ip ospf neighbor
Neighbor ID     Pri   State           Dead Time   Address         Interface
2.2.2.2           1   FULL/DR         00:00:32    192.168.0.2     Tunnel0

 ハブルータであるR2のルーティングテーブルを確認すると、スポークルータのループバックアドレスを学習していることがわかります。

R2# show ip route ospf
      5.0.0.0/32 is subnetted, 1 subnets
O        5.5.5.5 [110/1001] via 192.168.0.5, 00:01:29, Tunnel0
      6.0.0.0/32 is subnetted, 1 subnets
O        6.6.6.6 [110/1001] via 192.168.0.6, 00:01:29, Tunnel0

 スポークルータであるR5では、ハブルータ(R2)とスポークルータ(R6)のループバックアドレスを学習しています。R6のループバックアドレス(6.6.6.6)宛のネクストホップのアドレスがR6(192.168.0.6)であることを確認してください(ハブルータであるR2(192.168.0.2)ではありません)

R5#show ip route ospf

      2.0.0.0/32 is subnetted, 1 subnets
O        2.2.2.2 [110/1001] via 192.168.0.2, 00:02:53, Tunnel0
      6.0.0.0/32 is subnetted, 1 subnets
O        6.6.6.6 [110/1001] via 192.168.0.6, 00:02:53, Tunnel0

 スポークルータであるR6では、ハブルータ(R2)とスポークルータ(R5)のループバックアドレスを学習しています。R5のループバックアドレス宛のネクストホップの値に注意してください。

R6#show ip route ospf
      2.0.0.0/32 is subnetted, 1 subnets
O        2.2.2.2 [110/1001] via 192.168.0.2, 00:03:12, Tunnel0
      5.0.0.0/32 is subnetted, 1 subnets
O        5.5.5.5 [110/1001] via 192.168.0.5, 00:03:02, Tunnel0

 R6のループバックアドレスからR5のループバックアドレスにPIngを実行します。

R6# ping 5.5.5.5 source 6.6.6.6
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 5.5.5.5, timeout is 2 seconds:
Packet sent with a source address of 6.6.6.6
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 76/87/116 ms

 疎通ができました。では、R6からR5のループバックアドレスにトレースルートを実行します。

R6# traceroute 5.5.5.5
Type escape sequence to abort.
Tracing the route to 5.5.5.5
VRF info: (vrf in name/id, vrf out name/id)
  1 192.168.0.2 22 msec 37 msec 42 msec
  2 192.168.0.5 94 msec 49 msec 80 msec

 ルーティングテーブルでは、5.5.5.5のネクストホップはスポークのアドレスである192.168.0.5ですが、トレースルートではハブルータであるR2(192.168.0.2)を経由していることがわかります。

最後までお読み頂きありがとうございました。

コメント