add-paths


初期設定

・四角の枠でDMVPN、Phase3まで
・各サイトとトンネル、ループバックをEIGRPで広告
EIGRPはName modeで起動する

Chapter: Add Path Support in EIGRP

確認

iosv-3#sh ip ro | b Gate
Gateway of last resort is not set

      1.0.0.0/8 is variably subnetted, 3 subnets, 2 masks
D        1.1.1.1/32 [90/28288000] via 1.2.3.1, 00:24:05, Tunnel0
C        1.2.3.0/24 is directly connected, Tunnel0
L        1.2.3.3/32 is directly connected, Tunnel0
      2.0.0.0/32 is subnetted, 1 subnets
D        2.2.2.2 [90/28288000] via 1.2.3.2, 00:24:05, Tunnel0
      3.0.0.0/8 is variably subnetted, 2 subnets, 2 masks
C        3.3.3.0/24 is directly connected, Loopback0
L        3.3.3.3/32 is directly connected, Loopback0
      10.0.0.0/32 is subnetted, 1 subnets
D        10.10.10.10 [90/27008000] via 1.2.3.10, 00:24:07, Tunnel0
      169.254.0.0/16 is variably subnetted, 2 subnets, 2 masks
C        169.254.100.0/24 is directly connected, GigabitEthernet0/0
L        169.254.100.3/32 is directly connected, GigabitEthernet0/0
D     192.168.12.0/24 [90/28160256] via 1.2.3.1, 00:24:05, Tunnel0

iosv-3視点、192.168.12.0/24への経路はiosv-1と2のふたつあるはずなのに、1つしかインストールしていない。

traceroute

iosv-3#trace 192.168.12.1
Type escape sequence to abort.
Tracing the route to 192.168.12.1
VRF info: (vrf in name/id, vrf out name/id)
  1 1.2.3.2 7 msec 8 msec 8 msec
  2 192.168.12.1 13 msec 10 msec * 
iosv-3#trace 192.168.12.2
Type escape sequence to abort.
Tracing the route to 192.168.12.2
VRF info: (vrf in name/id, vrf out name/id)
  1 1.2.3.2 14 msec 7 msec * 

iosv-3からサイトAの両ルータにping自体は通るが、iosv-1宛てが遠回りしてしまっている。

iosv-0#sh ip ro | b Gate
Gateway of last resort is not set

      1.0.0.0/8 is variably subnetted, 3 subnets, 2 masks
D        1.1.1.1/32 [90/27008000] via 1.2.3.1, 00:33:58, Tunnel0
C        1.2.3.0/24 is directly connected, Tunnel0
L        1.2.3.10/32 is directly connected, Tunnel0
      2.0.0.0/32 is subnetted, 1 subnets
D        2.2.2.2 [90/27008000] via 1.2.3.2, 00:33:58, Tunnel0
      3.0.0.0/24 is subnetted, 1 subnets
D        3.3.3.0 [90/27008000] via 1.2.3.3, 00:00:34, Tunnel0
      10.0.0.0/32 is subnetted, 1 subnets
C        10.10.10.10 is directly connected, Loopback0
      169.254.0.0/16 is variably subnetted, 2 subnets, 2 masks
C        169.254.100.0/24 is directly connected, GigabitEthernet0/0
L        169.254.100.10/32 is directly connected, GigabitEthernet0/0
D     192.168.12.0/24 [90/26880256] via 1.2.3.2, 00:33:58, Tunnel0
                      [90/26880256] via 1.2.3.1, 00:33:58, Tunnel0

ちなみにHubでは2つの経路がルーティングテーブルに載っている。それを片方しかiosv-3に広告していないことになる。

add-paths

iosv-0(config)#router eigrp DMVPN
iosv-0(config-router)#add ipv4 auto 100
iosv-0(config-router-af)#af-interface Tunnel 0
iosv-0(config-router-af-interface)#add-paths 2
iosv-0(config-router-af-interface)#
*Aug  9 13:22:27.851: %DUAL-5-NBRCHANGE: EIGRP-IPv4 100: Neighbor 1.2.3.2 (Tunnel0) is resync: add_path value changed
*Aug  9 13:22:27.852: %DUAL-5-NBRCHANGE: EIGRP-IPv4 100: Neighbor 1.2.3.1 (Tunnel0) is resync: add_path value changed
*Aug  9 13:22:27.852: %DUAL-5-NBRCHANGE: EIGRP-IPv4 100: Neighbor 1.2.3.3 (Tunnel0) is resync: add_path value changed

確認

iosv-3#sh ip ro | b Gate
Gateway of last resort is not set

      1.0.0.0/8 is variably subnetted, 4 subnets, 2 masks
D        1.1.1.1/32 [90/28288000] via 1.2.3.1, 00:03:47, Tunnel0
C        1.2.3.0/24 is directly connected, Tunnel0
H        1.2.3.2/32 is directly connected, 00:01:17, Tunnel0
L        1.2.3.3/32 is directly connected, Tunnel0
      2.0.0.0/32 is subnetted, 1 subnets
D        2.2.2.2 [90/28288000] via 1.2.3.2, 00:03:47, Tunnel0
      3.0.0.0/8 is variably subnetted, 2 subnets, 2 masks
C        3.3.3.0/24 is directly connected, Loopback0
L        3.3.3.3/32 is directly connected, Loopback0
      10.0.0.0/32 is subnetted, 1 subnets
D        10.10.10.10 [90/26880032] via 1.2.3.10, 00:03:58, Tunnel0
      169.254.0.0/16 is variably subnetted, 2 subnets, 2 masks
C        169.254.100.0/24 is directly connected, GigabitEthernet0/0
L        169.254.100.3/32 is directly connected, GigabitEthernet0/0
D   % 192.168.12.0/24 [90/28160256] via 1.2.3.2, 00:00:35, Tunnel0
                      [90/28160256] via 1.2.3.1, 00:00:35, Tunnel0

192.168.12.0/24宛の経路が2つインストールされている。

traceroute

iosv-3#trace 192.168.12.1
Type escape sequence to abort.
Tracing the route to 192.168.12.1
VRF info: (vrf in name/id, vrf out name/id)
  1 1.2.3.2 8 msec 6 msec 6 msec
  2 192.168.12.1 8 msec 7 msec * 
iosv-3#trace 192.168.12.2
Type escape sequence to abort.
Tracing the route to 192.168.12.2
VRF info: (vrf in name/id, vrf out name/id)
  1 1.2.3.2 10 msec 6 msec * 

あれ?add-paths設定前と変化がない。
結局、経路が2つあるのは192.168.12."0/24"なわけで、192.168.12."1”に対しての経路はiosv-3のルーティングテーブルでなくその先にあるI/F等のコストから決まる、と考えた。あってるかわからん。

Prerequisitesを無視する

iosv-0(config)#router eigrp DMVPN
iosv-0(config-router)#add ipv4 auto 100
iosv-0(config-router-af)#af-int tunnel 0
iosv-0(config-router-af-interface)#no add-path 2
iosv-0(config-router-af-interface)#
*Aug  9 13:31:26.515: %DUAL-5-NBRCHANGE: EIGRP-IPv4 100: Neighbor 1.2.3.2 (Tunnel0) is resync: add_path value changed
*Aug  9 13:31:26.515: %DUAL-5-NBRCHANGE: EIGRP-IPv4 100: Neighbor 1.2.3.1 (Tunnel0) is resync: add_path value changed
*Aug  9 13:31:26.515: %DUAL-5-NBRCHANGE: EIGRP-IPv4 100: Neighbor 1.2.3.3 (Tunnel0) is resync: add_path value changed
iosv-0(config-router-af-interface)#
iosv-0(config-router-af-interface)#next-hop-self
iosv-0(config-router-af-interface)#
*Aug  9 13:34:19.649: %DUAL-5-NBRCHANGE: EIGRP-IPv4 100: Neighbor 1.2.3.2 (Tunnel0) is down: next_hop_self value changed
*Aug  9 13:34:19.651: %DUAL-5-NBRCHANGE: EIGRP-IPv4 100: Neighbor 1.2.3.1 (Tunnel0) is down: next_hop_self value changed
*Aug  9 13:34:19.653: %DUAL-5-NBRCHANGE: EIGRP-IPv4 100: Neighbor 1.2.3.3 (Tunnel0) is down: next_hop_self value changed
*Aug  9 13:34:19.679: %DUAL-5-NBRCHANGE: EIGRP-IPv4 100: Neighbor 1.2.3.3 (Tunnel0) is up: new adjacency
*Aug  9 13:34:19.702: %DUAL-5-NBRCHANGE: EIGRP-IPv4 100: Neighbor 1.2.3.1 (Tunnel0) is up: new adjacency
*Aug  9 13:34:19.738: %DUAL-5-NBRCHANGE: EIGRP-IPv4 100: Neighbor 1.2.3.2 (Tunnel0) is up: new adjacency
iosv-0(config-router-af-interface)#
iosv-0(config-router-af-interface)#add-path 2
iosv-0(config-router-af-interface)#
*Aug  9 13:34:29.486: %DUAL-5-NBRCHANGE: EIGRP-IPv4 100: Neighbor 1.2.3.2 (Tunnel0) is resync: add_path value changed
*Aug  9 13:34:29.487: %DUAL-5-NBRCHANGE: EIGRP-IPv4 100: Neighbor 1.2.3.1 (Tunnel0) is resync: add_path value changed
*Aug  9 13:34:29.488: %DUAL-5-NBRCHANGE: EIGRP-IPv4 100: Neighbor 1.2.3.3 (Tunnel0) is resync: add_path value changed

設定がはじかれたりはしない。next-hop-selfが入っていてもadd-pathは設定できる。

確認

iosv-3#sh ip ro | b Gate
Gateway of last resort is not set

      1.0.0.0/8 is variably subnetted, 4 subnets, 2 masks
D        1.1.1.1/32 [90/28288000] via 1.2.3.10, 00:02:36, Tunnel0
C        1.2.3.0/24 is directly connected, Tunnel0
H        1.2.3.2/32 is directly connected, 00:01:34, Tunnel0
L        1.2.3.3/32 is directly connected, Tunnel0
      2.0.0.0/32 is subnetted, 1 subnets
D        2.2.2.2 [90/28288000] via 1.2.3.10, 00:02:41, Tunnel0
      3.0.0.0/8 is variably subnetted, 2 subnets, 2 masks
C        3.3.3.0/24 is directly connected, Loopback0
L        3.3.3.3/32 is directly connected, Loopback0
      10.0.0.0/32 is subnetted, 1 subnets
D        10.10.10.10 [90/26880032] via 1.2.3.10, 00:02:41, Tunnel0
      169.254.0.0/16 is variably subnetted, 2 subnets, 2 masks
C        169.254.100.0/24 is directly connected, GigabitEthernet0/0
L        169.254.100.3/32 is directly connected, GigabitEthernet0/0
D   % 192.168.12.0/24 [90/28160256] via 1.2.3.10, 00:02:36, Tunnel0

経路が2つになっていない、かつネクストホップがHubになっている(next-hop-selfが無効になっているとネクストホップがSpokeになる)

参考

Chapter: Add Path Support in EIGRP

この記事が気に入ったらサポートをしてみませんか?