Discussion about this post

User's avatar
L0crian's avatar

Hello. I own lev-0.com, great post! I'm glad to see this was inspired by my posts. I've deployed a lot of 2547oDMVPN, but this was still a fun read.

I'm sure you've already figured this all out, but maybe it'll help someone reading the post.

############################

"mpls nhrp" allows labels to be stored within NHRP, which are used to enable dynamic spoke-to-spoke traffic:

show dmvpn

# Ent Peer NBMA Addr Peer Tunnel Add State UpDn Tm Attrb

----- --------------- --------------- ----- -------- -----

2 192.168.0.11 172.16.0.11 UP 00:00:04 DT1

172.16.0.11 UP 00:00:06 DT2

show ip nhrp

150.0.0.11/32 (A) via 172.16.0.11

Tunnel0 created 00:00:24, expire 00:09:36

Type: dynamic, Flags: router rib nho

NBMA address: 192.168.0.11

MPLS Label: 16

Services: NHRP-CAP NHRP-ECIE-CAP

Dynamic spoke-to-spoke tunnels are not possible when doing VPNv6 with 2547oDMVPN, so it doesn't really matter in the design shown, but you'd need "mpls nhrp" if using VPNv4 and wanting to do direct spoke-to-spoke tunnels (not through the Hub).

############################

You can do fVRF (like "tunnel vrf EXTERNAL") in VyOS (and Linux) by using the L3mdev rule, which basically does a FIB lookup based on the L3 Master Device. To do this, you'd just define a source interface on the tunnel. Whatever VRF the interface is in will be the FIB that is consulted for the underlay.

############################

The likely reason that multicast wasn't working is you didn't have IP to mcast mapping enabled for NHRP. You need the "multicast" switch, which is both for normal mcast like IGMP, or for protocols like OSPF:

ip nhrp nhs 192.168.2.1 nbma 10.0.1.3 multicast

Expand full comment

No posts