DMVPN Phase 3 BGP Routing

(Rene Molenaar) #6

Hi GK,

Not for DMVPN but there’s a separate VRF lite tutorial:

VRF Lite

Rene

(Bill) #7

Do we always have to advertise default route on HUB ?

Otherwise there is no way that spokes learn routes each other ?

(Andrew P) #8

Gopal,
You don’t have to advertise a default route from the Hub. However, having the ability to do this AND have the spokes be able to communicate directly with each other are the hallmark features of Phase 3 as opposed to any other phase.

The reason this is beneficial is that it keeps the number of routes on the spokes to a minimum (in phase 2 you would have to have [N * (N-1) / 2] number of routes per spoke, where N = number of spokes), and when spoke to spoke traffic needs to happen, the hub is left out of the data plane.

(Bill) #9

Hi Andrew,

Thanks.

Do we have any examples on Dual HUB along with links to two service providers from each HUB. Same thing from spoke router as well.

(Rene Molenaar) #10

Hi Bill,

This might help:

DMVPN Dual Hub Dual Cloud

Rene

(Bill) #11

Thanks Rene

(AZM U) #12

Hello Rene,
I have one quick question regarding the BGP configuration in DMVPN phase 3. In Phase 3 BGP configuration, the Hub router is advertising a default route to the spokes through BGP. Let’s say the spoke routers already have default routes to the ISP for the local users’ internet access. In this scenario, how can the Hub router advertise default route to the spokes? Thank you so much in advance.

(Rene Molenaar) #13

That is indeed a chicken and egg problem. If you use a default route outbound towards your ISP, then you can’t use another default route for your DMVPN routing. You should use more specific routes for DMVPN.

(DJAN M) #14

Hello Rene,
I hope you’re doing well.
I want to know why we need config muticast dynamic for DMVPN?

BR,
Ulrich

(Rene Molenaar) #15

Hello Ulrich,

Connections are initiated from the spoke routers to the hub, and the hub doesn’t know beforehand what the IP addresses of the spoke routers are.

Theip nhrp map multicast dynamic command tells NHRP to automatically add routers to the multicast NHRP mappings.

You can see in the configuration of the spoke routers that we have a static multicast entry with the IP address of the hub router on them.

Rene

(Chris N) #16

Just wondering why you use the route-map for the neighbours outbound?

If you use the “network 0.0.0.0 mask 0.0.0.0” in the BGP routing process, why do you also need to create a route-map specifying the same thing again?

(Rene Molenaar) #17

Hello Chris,

Good question. If you use eBGP and the same AS number on the spoke routers then the route-map isn’t really needed since the spoke routers will deny prefixes with their own AS number. On the other hand, the hub will advertise those prefixes so a route-map isn’t a bad idea…it ensures that we really only advertise the default route.

If you use eBGP and different AS numbers on the spoke routers, the route-map is a good idea.

With iBGP, it’s also not really needed since because of split horizon, the hub won’t advertise a prefix from one spoke to another. The route-map does prevent advertising a prefix in case the hub would learn some prefixes from another BGP router…perhaps some eBGP router in another AS that is connected to the hub.

Rene

1 Like
(jeffery d) #18

im having trouble seeing my spoke network. for example on spoke 1 i can see spoke two network in my routing table but from spoke 2 im unable to see my spoke 1 network

configuration lab from gns3:

hostname MIAMI hub
!
int tun0
Des Miami HUB
 ip address 10.100.252.1 255.255.255.0
 no ip redirects
 ip mtu 1400
 ip nhrp map multicast dynamic
 ip nhrp network-id 100
 ip nhrp redirect
 ip nhrp shortcut
 ip tcp adjust-mss 1360
 no ip split-horizon 
 tunnel source FastEthernet0/0
 tunnel mode gre multipoint
 exit
!
interface Loopback0
 ip address 10.100.0.4 255.255.255.255
!
interface FastEthernet0/0
 ip address 198.36.220.36 255.255.255.224
 duplex auto
 speed auto
!
router bgp 65000
 no synchronization
 bgp log-neighbor-changes
 network 0.0.0.0
 network 10.100.0.4 mask 255.255.255.255
 network 10.100.252.6 remote-as 65020
 neighbor 10.100.252.114 remote-as 65114
 no auto-summary
!
ip forward-protocol nd
ip route 0.0.0.0 0.0.0.0 198.136.220.33

Homedale spoke 1:

config t
!
hostname HOMEDALE
!
interface Loopback0
 ip address 10.6.0.2 255.255.255.255
!
interface Tunnel0
 DES Link to Miami Hub
 ip address 10.100.252.6 255.255.255.0
 ip mtu 1400
 ip nhrp map 10.100.252.1 198.136.220.36
 ip nhrp map multicast 198.136.220.36
 ip nhrp network-id 100
 ip nhrp nhs 10.100.252.1
 ip nhrp redirect
 ip nhrp shortcut
 ip tcp adjust-mss 1360
 tunnel source FastEthernet0/0
 tunnel mode gre multipoint
exit
!
!
interface FastEthernet0/0
 ip address 204.114.124.36 255.255.255.240
 duplex auto
 speed auto
!

!
router bgp 65020
 no synchronization
 bgp log-neighbor-changes
 network 10.6.0.2 mask 255.255.255.255
 neighbor 10.100.252.1 remote-as 65000
 neighbor 10.100.252.1 timers 7 21
 neighbor 10.102.252.1 remote-as 65016
 neighbor 10.102.252.1 timers 7 21
 no auto-summary
!
ip forward-protocol nd
ip route 0.0.0.0 0.0.0.0 204.114.124.33


ip forward-protocol nd
ip route 0.0.0.0 0.0.0.0 204.114.124.33

spoke 2
Tamp

!
interface Loopback0
 ip address 10.114.0.2 255.255.255.255
!
interface Tunnel0
 Des  link to Miami Hub
 ip address 10.100.252.114 255.255.255.0 
 ip mtu 1400
 ip nhrp map 10.100.252.1 198.136.220.36
 ip nhrp map multicast 198.136.220.36
 ip nhrp network-id 100
 ip nhrp nhs 10.100.252.1
 ip nhrp redirect
 ip nhrp shortcut
 ip tcp adjust-mss 1360
 tunnel source FastEthernet0/0
 tunnel mode gre multipoint
exit
!
router bgp 65114
 no synchronization
 bgp router-id 10.114.0.2
 bgp log-neighbor-changes
 network 10.114.0.2 mask 255.255.255.255
 neighbor 10.100.252.1 remote-as 65000
 neighbor 10.100.252.1 timers 7 21
 neighbor 10.102.252.1 remote-as 65016
 neighbor 10.102.252.1 timers 7 21
 no auto-summary
!

ip forward-protocol nd
ip route 0.0.0.0 0.0.0.0 64.112.157.233

internet#sh run
Building configuration...

Current configuration : 1234 bytes
!
version 12.4
service timestamps debug datetime msec
service timestamps log datetime msec
no service password-encryption
!
hostname internet
!
boot-start-marker
boot-end-marker
!
!
no aaa new-model
memory-size iomem 5
no ip icmp rate-limit unreachable
ip cef
!
!
!
!
no ip domain lookup
!
multilink bundle-name authenticated
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
archive
 log config
  hidekeys
!
!
!
!
ip tcp synwait-time 5
!
!
!
!
interface FastEthernet0/0
 description ISP to SMY
 ip address 64.238.201.94 255.255.255.0
 duplex auto
 speed auto
!
interface FastEthernet0/1
 description ISP to TAMPA
 ip address 64.112.157.233 255.255.255.0
 duplex auto
 speed auto
!
interface FastEthernet1/0
 description ISP to Miami
 ip address 198.136.220.33 255.255.255.224
 duplex auto
 speed auto
!
interface FastEthernet2/0
 description ISP to HOMDALES
 ip address 204.114.124.33 255.255.255.0
 duplex auto
 speed auto
!
ip forward-protocol nd
!
!
no ip http server
no ip http secure-server
!
no cdp log mismatch duplex
!
!
!
!
!
!
control-plane
!
!
!
!
!
!
!
!
!
!
line con 0
 exec-timeout 0 0
 privilege level 15
 logging synchronous
line aux 0
 exec-timeout 0 0
 privilege level 15
 logging synchronous
line vty 0 4
 login
!
!
end
(Rene Molenaar) #19

Hello Jeffery,

First thing I notice, you only have one neighbor command on your hub?

neighbor 10.100.252.114 remote-as 65114

Rene

(jeffery d) #20

Rene I have both neighbor 10.100.252.114 remote-as 65114 and neighbor 10.100.252.6 remote-as 65020 on the miami hub i didn’t realize i uploaded the wrong configs for the hub but this is my most recent configs sorry about that

Miami#sh running-config
Building configuration...

Current configuration : 2377 bytes
!
version 12.4
service timestamps debug datetime msec
service timestamps log datetime msec
no service password-encryption
!
hostname Miami
!
ip cef
!
no ip domain lookup
!
interface Loopback0
 ip address 10.100.0.4 255.255.255.255
!
interface Loopback1
 ip address 10.100.254.22 255.255.255.248
!
interface Tunnel0
 description Miami HUB
 no ip address
 no ip redirects
 ip mtu 1400
 ip nhrp map multicast dynamic
 ip nhrp network-id 100
 ip nhrp shortcut
 ip nhrp redirect
 ip tcp adjust-mss 1360
 no ip split-horizon
 tunnel source FastEthernet0/0
 tunnel mode gre multipoint
!
interface Tunnel1
 ip address 10.100.252.1 255.255.255.0
 no ip redirects
 ip mtu 1400
 ip nhrp map multicast dynamic
 ip nhrp network-id 102
 ip tcp adjust-mss 1360
 tunnel source FastEthernet0/0
 tunnel mode gre multipoint
!
interface FastEthernet0/0
 ip address 198.136.220.36 255.255.255.224
 duplex auto
 speed auto
!
router bgp 65000
 no synchronization
 bgp log-neighbor-changes
 network 0.0.0.0
 network 10.100.0.4 mask 255.255.255.255
 neighbor 10.100.252.6 remote-as 65020
 neighbor 10.100.252.6 timers 7 21
 neighbor 10.100.252.114 remote-as 65114
 neighbor 10.100.252.114 timers 7 21
 no auto-summary
!
ip route 0.0.0.0 0.0.0.0 198.136.220.33

!
end
(Rene Molenaar) #21

Hi Jeffery,

Glancing over your BGP configs, I don’t see anything strange.

You have two working BGP neighbor adjacencies, one between hub-spoke1 and another between hub-spoke2 right?

What if you use this on spoke2 and the hub:

show ip bgp neighbors <IP of neighbor> advertised-routes

Do you see anything that is advertised?

Rene

(jeffery d) #22

Hello Rene,
after executing the command this is my results from the spoke 2 and hub routers

hub:

Miami#SH IP BGP NEighbors 10.100.252.114 ADvertised-routes
BGP table version is 5, local router ID is 10.100.254.22
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
              r RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path
*> 0.0.0.0          198.136.220.33           0         32768 i
*> 10.6.0.2/32      10.100.252.6             0             0 65020 i
*> 10.100.0.4/32    0.0.0.0                  0         32768 i
*> 10.114.0.2/32    10.100.252.114           0             0 65114 i

Total number of prefixes 4

spoke 2:

tampa#SH IP BGP NEIghbors 10.100.252.1 ADvertised-routes
BGP table version is 6, local router ID is 10.114.0.2
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
              r RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path
r> 0.0.0.0          10.100.252.1             0             0 65000 i
*> 10.6.0.2/32      10.100.252.6                           0 65000 65020 i
*> 10.100.0.4/32    10.100.252.1             0             0 65000 i
*> 10.114.0.2/32    0.0.0.0                  0         32768 i

Total number of prefixes 4
(jeffery d) #23

I’ve loaded my entire lab open for suggestion thanks. so SMY HUB IS THE PRIMARY ROUTE MIAMI HUB IS THE BACK ROUTE IN CASE SMY FAILED’S

hub smy:

hostname SMY
!
boot-start-marker
boot-end-marker
!
!
no aaa new-model
memory-size iomem 5
no ip icmp rate-limit unreachable
ip cef
!
no ip domain lookup
!
multilink bundle-name authenticated
!
archive
 log config
  hidekeys
!
ip tcp synwait-time 5
!
interface Loopback10
 ip address 10.102.0.4 255.255.255.255
!
interface Tunnel0
 ip address 10.102.252.1 255.255.255.0
 no ip redirects
 ip mtu 1400
 ip nhrp map multicast dynamic
 ip nhrp network-id 102
 ip nhrp shortcut
 ip nhrp redirect
 ip tcp adjust-mss 1360
 no ip split-horizon
 tunnel source FastEthernet0/0
 tunnel mode gre multipoint
!
interface FastEthernet0/0
 ip address 64.238.201.93 255.255.255.240
!
router bgp 65016
 no synchronization
 bgp log-neighbor-changes
 network 0.0.0.0
 network 10.102.0.4 mask 255.255.255.255
 neighbor 10.102.252.6 remote-as 65020
 neighbor 10.102.252.6 timers 7 21
 neighbor 10.102.252.114 remote-as 65114
 neighbor 10.102.252.114 timers 7 21
 no auto-summary
!
ip route 0.0.0.0 0.0.0.0 64.238.201.94
!
end

miami hub:

hostname Miami
!
ip cef
!
no ip domain lookup
!
interface Loopback0
 ip address 10.100.0.4 255.255.255.255
!
interface Loopback1
 ip address 10.100.254.22 255.255.255.248
!
interface Tunnel0
 description Miami HUB
 no ip address
 no ip redirects
 ip mtu 1400
 ip nhrp map multicast dynamic
 ip nhrp network-id 100
 ip nhrp shortcut
 ip nhrp redirect
 ip tcp adjust-mss 1360
 no ip split-horizon
 tunnel source FastEthernet0/0
 tunnel mode gre multipoint
!
interface Tunnel1
 ip address 10.100.252.1 255.255.255.0
 no ip redirects
 ip mtu 1400
 ip nhrp map multicast dynamic
 ip nhrp network-id 102
 ip tcp adjust-mss 1360
 tunnel source FastEthernet0/0
 tunnel mode gre multipoint
!
interface FastEthernet0/0
 ip address 198.136.220.36 255.255.255.224
 duplex auto
 speed auto
!
router bgp 65000
 no synchronization
 bgp log-neighbor-changes
 network 0.0.0.0
 network 10.100.0.4 mask 255.255.255.255
 neighbor 10.100.252.6 remote-as 65020
 neighbor 10.100.252.6 timers 7 21
 neighbor 10.100.252.114 remote-as 65114
 neighbor 10.100.252.114 timers 7 21
 no auto-summary
!
ip route 0.0.0.0 0.0.0.0 198.136.220.33
!
end

spoke 1:

hostname homedale
!
interface Loopback0
 ip address 10.6.0.2 255.255.255.255
!
interface Tunnel0
 description Link to Miami Hub
 ip address 10.100.252.6 255.255.255.0
 no ip redirects
 ip mtu 1400
 ip nhrp map 10.100.252.1 198.136.220.36
 ip nhrp map multicast 198.136.220.36
 ip nhrp network-id 100
 ip nhrp nhs 10.100.252.1
 ip nhrp shortcut
 ip nhrp redirect
 ip tcp adjust-mss 1360
 tunnel source FastEthernet0/0
 tunnel mode gre multipoint
!
interface Tunnel2
 description to SMY hub
 ip address 10.102.252.6 255.255.255.0
 no ip redirects
 ip mtu 1400
 ip nhrp map 10.102.252.1 64.238.201.93
 ip nhrp map multicast 64.238.201.93
 ip nhrp network-id 102
 ip nhrp nhs 10.102.252.1
 ip nhrp shortcut
 ip nhrp redirect
 ip tcp adjust-mss 1360
 tunnel source FastEthernet0/0
 tunnel mode gre multipoint
!
interface FastEthernet0/0
 ip address 204.114.124.36 255.255.255.240
 duplex auto
 speed auto
!
router bgp 65020
 no synchronization
 bgp router-id 10.6.0.2
 bgp log-neighbor-changes
 network 10.6.0.2 mask 255.255.255.255
 neighbor 10.100.252.1 remote-as 65000
 neighbor 10.100.252.1 timers 7 21
 neighbor 10.102.252.1 remote-as 65016
 neighbor 10.102.252.1 timers 7 21
 no auto-summary
!
ip route 0.0.0.0 0.0.0.0 204.114.124.33
!
end

spoke 2:

hostname tampa
!
interface Loopback0
 ip address 10.114.0.2 255.255.255.255
!
interface Tunnel0
 description link to Miami Hub
 ip address 10.100.252.114 255.255.255.0
 no ip redirects
 ip mtu 1400
 ip nhrp map 10.100.252.1 198.136.220.36
 ip nhrp map multicast 198.136.220.36
 ip nhrp network-id 100
 ip nhrp nhs 10.100.252.1
 ip nhrp shortcut
 ip nhrp redirect
 ip tcp adjust-mss 1360
 tunnel source FastEthernet0/0
 tunnel mode gre multipoint
!
interface Tunnel2
 description link to SMY hub
 ip address 10.102.252.114 255.255.255.0
 no ip redirects
 ip mtu 1400
 ip nhrp map 10.102.252.1 64.238.201.93
 ip nhrp map multicast 64.238.201.93
 ip nhrp network-id 102
 ip nhrp nhs 10.102.252.1
 ip nhrp shortcut
 ip nhrp redirect
 ip tcp adjust-mss 1360
 tunnel source FastEthernet0/0
 tunnel mode gre multipoint
!
interface FastEthernet0/0
 ip address 64.112.157.234 255.255.255.240
 duplex auto
 speed auto
!
router bgp 65114
 no synchronization
 bgp router-id 10.114.0.2
 bgp log-neighbor-changes
 network 10.114.0.2 mask 255.255.255.255
 neighbor 10.100.252.1 remote-as 65000
 neighbor 10.100.252.1 timers 7 21
 neighbor 10.102.252.1 remote-as 65016
 neighbor 10.102.252.1 timers 7 21
 no auto-summary
!
ip forward-protocol nd
ip route 0.0.0.0 0.0.0.0 64.112.157.233
!
end

jpeg

(Rene Molenaar) #24

Hi Jefferey,

In your first post, you talked about not seeing the network from spoke1 on spoke2 right? But on spoke2, we now see 10.6.0.2/32 ?

Are you missing anything else?

Rene

PS - when you paste configs, would you please sanitize them (remove any junk that is not needed) and use the code button? I just did it for your configs, makes it a lot easier to read :smile:

(jeffery d) #25

no I’m not missing anything else this is pretty the entire topology config