BFD over VXLAN with BGP
The configuration of BFD over VXLAN with BGP includes the following:
This example shows how to configure BFD over VXLAN with a BGP client.
/* Configure VRF */
Router# configure
Router(config)# vrf vrf1
Router(config-vrf)# exit
/* Configure Multipath BFD sessions. */
Router# configure
Router(config)# bfd
Router(config-bfd)# multipath include location 0/0/CPU0
Router(config-bfd)# exit
/* Configure Interfaces */
Router(config)# interface Loopback 0
Router(config-if)# ipv4 address 10.10.10.10 255.0.0.0
Router(config-if)# exit
Router(config)# interface Loopback 1
Router(config-if)# vrf vrf1
Router(config-if)# ipv4 address 192.168.0.0 255.255.0.0
Router(config-if)# exit
Router(config)# interface MgmtEth0/RP0/CPU0/0
Router(config-if)# shutdown
Router(config-if)# exit
/* Configure Interface NVE for Decapsulation */
Router(config)# interface nve1
Router(config-if)# member vni 2
Router(config-nve-vni)# vrf vrf1
Router(config-nve-vni)# host-reachability protocol static
Router(config-nve-vni)# exit
Router(config-if)# overlay-encapsulation vxlan
outer(config-nve-encap-vxlan)# peer-ip lookup disable
Router(config-nve-encap-vxlan)# exit
Router(config-if)# source-interface Loopback1
Router(config-if)# commit
/* Configure BGP */
Router(config)# router bgp 1
Router(config-bgp)# bgp router-id 10.10.10.10
Router(config-bgp)# address-family ipv4 unicast
Router(config-bgp-af)# redistribute connected
Router(config-bgp-af)# exit
Router(config-bgp)# address-family ipv4 unicast
Router(config-bgp)# exit
Router(config)# router bgp 1
Router(config-bgp)# vrf vrf1
Router(config-bgp-vrf)# rd auto
Router(config-bgp-vrf)# address-family ipv4 unicast
Router(config-bgp-vrf-af)# redistribute connected
Router(config-bgp-vrf-af)# redistribute static
Router(config-bgp-vrf-af)# exit
/* Configure BFD over BGP. */
Router(config)# router bgp 120
Router(config-bgp)# neighbor 10.6.6.1
Router(config-bgp-nbr)# bfd fast-detect
Router(config-bgp-nbr)# bfd multiplier 7
Router(config-bgp-nbr)# bfd minimum-interval 1200
Router(config-bgp-nbr)# remote-as 300
Router(config-bgp-nbr)# ebgp-multihop 255
Router(config-bgp-nbr)# update-source loopback 1
Router(config-bgp-nbr)# address-family ipv4 unicast
Router(config-bgp-nbr-af)# route-policy pass-all in
Router(config-bgp-nbr-af)# route-policy pass-all out
Router(config-bgp-nbr-af)# commit
Running Configuration
bfd
multipath include location 0/RP0/CPU0
!
vrf vrf1
!
interface Loopback0
ipv4 address 10.10.10.10 255.0.0.0
!
interface Loopback1
vrf vrf1
ipv4 address 192.168.0.0 255.255.0.0
!
interface MgmtEth0/RP0/CPU0/0
shutdown
!
interface nve1
member vni 1
vrf vrf1
host-reachability protocol static
!
overlay-encapsulation vxlan
peer-ip lookup disable
!
source-interface Loopback0
!
router bgp 200
bgp router-id 10.10.10.10
address-family ipv4 unicast
redistribute connected
!
address-family vpnv4 unicast
!
vrf vrf1
rd auto
address-family ipv4 unicast
redistribute connected
redistribute static
!
neighbor 10.6.6.1
bfd fast-detect
bfd multipler 3
bfd minimum-interval 500
remote-as 300
ebgp-multihop 4
update-source Loopback1
address-family ipv4 unicast
route-policy pass-all in
route-policy pass-all out
!
!
!
BFD over VXLAN with Static Routes
The configuration of BFD over VXLAN with static routes includes the following:
-
VRF configuration
-
Multipath BFD sessions configuration
-
Interfaces configuration
-
Interface NVE configuration
-
Static routing configuration
This example shows how to configure BFD over VXLAN with static routes.
/* Configure VRF */
Router# configure
Router(config)# vrf vrf1
Router(config-vrf)# exit
/* Configure Multipath BFD sessions. */
Router# configure
Router(config)# bfd
Router(config-bfd)# multipath include location 0/0/CPU0
Router(config-bfd)# exit
/* Configure Interfaces */
Router(config)# interface Loopback 0
Router(config-if)# ipv4 address 10.10.10.10 255.0.0.0
Router(config-if)# ipv6 address 2001:DB8:1::1/32
Router(config-if)# exit
Router(config)# interface Loopback 1
Router(config-if)# vrf vrf1
Router(config-if)# ipv4 address 192.168.0.0 255.255.0.0
Router(config-if)# exit
Router(config)# interface TenGigE0/0/0/0/0
Router(config-if)# ipv4 address 10.12.13.10 255.0.0.0
Router(config-if)# ipv6 address 2001:DB8:13::11/16
Router(config-if)# exit
/* Configure Interface NVE for Decapsulation */
Router(config)# interface nve1
Router(config-if)# member vni 2
Router(config-nve-vni)# vrf vrf1
Router(config-nve-vni)# host-reachability protocol static
Router(config-nve-vni)# exit
Router(config-if)# overlay-encapsulation vxlan
Router(config-nve-encap-vxlan)# exit
Router(config-if)# source-interface Loopback1
Router(config-if)# commit
/* Configure Static Routing */
Router# configure
Router(config)# router static
Router(config-static)# address-family ipv4 unicast
Router(config-static-afi)# 10.10.10.10/32 10.151.11.2
Router(config-static-afi)# exit
Router(config-static)# address-family ipv6 unicast
Router(config-static-afi)# 2001:DB8:1::12/32 2001:DB8:17::122
Router(config-static-afi)# exit
Router(config-static)# vrf VRF1
Router(config-static-vrf)# address-family ipv4 unicast
Router(config-static-vrf-afi)# 10.1.1.1/32 remote-next-hop 10.13.19.10 tunnel VXLAN index 1 nve 1 evni 1 src-mac aaa1.bbb1.ccc1 -> IPv4 over IPv4
Router(config-static-vrf-afi)# 209.165.201.0/27 10.1.1.1 bfd fast-detect minimum-interval 1000 multihop 192.168.0.0
Router(config-static-vrf-afi)# 10.12.12.12/32 remote-next-hop 10.13.19.10 tunnel VXLAN index 2 nve 1 evni 2 src-mac aaa1.bbb1.ccc2 -> IPv4 over IPv4
Router(config-static-vrf-afi)# 209.165.202.129/27 10.12.12.12 bfd fast-detect minimum-interval 1000 multihop 192.168.12.24
Router(config-static-vrf-afi)# exit
Running Configuration
vrf vrf1
!
bfd
multipath include location 0/RP0/CPU0
!
interface Loopback0
ipv4 address 10.10.10.10 255.0.0.0
ipv6 address 2001:DB8:1::1/32
!
interface Loopback1
vrf vrf1
ipv4 address 192.168.0.0 255.255.0.0
!
interface TenGigE0/0/0/0/0
ipv4 address 10.12.13.10 255.0.0.0
ipv6 address 2001:DB8:13::11/16
!
interface nve1
member vni 1
vrf vrf1
static-inner-ethernet-header
source-mac-address 0008.0008.0008
!
!
overlay-encapsulation vxlan
!
source-interface Loopback0
!
router static
address-family ipv4 unicast
10.10.10.10/32 10.151.11.2
!
address-family ipv6 unicast
2001:DB8:1::12/32 2001:DB8:17::122
!
vrf vrf1
address-family ipv4 unicast
10.1.1.1/32 remote-next-hop 10.13.19.10 tunnel VXLAN index 1 nve 1 evni 1 src-mac 0022.3344.5566
209.165.201.0/27 10.1.1.1 bfd fast-detect minimum-interval 1000 multihop 192.168.0.0
10.12.12.12/32 remote-next-hop 10.13.19.10 tunnel VXLAN index 2 nve 1 evni 2 src-mac 0022.3344.5567
209.165.202.129/27 10.12.12.12 bfd fast-detect minimum-interval 1000 multihop 192.168.12.24
!
!
!
Verification
Use the following show commands to verify the configuration:
Router# show bfd all
Tue Dec 12 10:07:03.395 UTC
IPv4:
-----
IPV4 Sessions Up: 7200, Down: 0, Unknown/Retry: 2000, Total: 9200
IPv6:
-----
IPV6 Sessions Up: 800, Down: 0, Unknown/Retry: 0, Total: 800
Label:
------
Label Sessions Up: 0, Down: 0, Unknown/Retry: 0, Total: 0
Router# show bfd ipv6 multihop session
Tue Mar 26 19:32:14.851 UTC
Src Addr Dest Addr
VRF Name Local det time(int*mult) State
Echo Async
H/W NPU
------------------- --------------- ---------------- ---------------- ----------
2001:DB8:0000::1 2001:DB8:FFF::1
vrf5001 0s(0s*0) 3s(1s*3) UP
Yes 0/RP0/CPU0
2001:DB8:0000::2 2001:DB8:FFF::2
vrf5002 0s(0s*0) 3s(1s*3) UP
Yes 0/RP0/CPU0
2001:DB8:0000::3 2001:DB8:FFF::3
vrf5003 0s(0s*0) 3s(1s*3) UP
Yes 0/RP0/CPU0
2001:DB8:0000::4 2001:DB8:FFF::4
vrf5004 0s(0s*0) 3s(1s*3) UP
Yes 0/RP0/CPU0
2001:DB8:0000::5 2001:DB8:FFF::5
vrf5005 0s(0s*0) 3s(1s*3) UP
Yes 0/RP0/CPU0
2001:DB8:0000::6 2001:DB8:FFF::6
vrf5006 0s(0s*0) 3s(1s*3) UP
Yes 0/RP0/CPU0
2001:DB8:0000::7 2001:DB8:FFF::7
vrf5007 0s(0s*0) 3s(1s*3) UP
Yes 0/RP0/CPU0
2001:DB8:0000::8 2001:DB8:FFF::8
vrf5008 0s(0s*0) 3s(1s*3) UP
Router# show bfd session
Tue Mar 26 19:32:00.554 UTC
Src Addr Dest Addr VRF Name H/W NPU
Local det time(int*mult) State
Echo Async
------------------- --------------- ---------------- ---------------- ----------
209.165.201.1 10.0.0.1 vrf5001 Yes 0/RP0/CPU0
n/a 3s(1s*3) UP
209.165.201.2 10.0.0.2 vrf5002 Yes 0/RP0/CPU0
n/a 3s(1s*3) UP
209.165.201.3 10.0.0.3 vrf5003 Yes 0/RP0/CPU0
n/a 3s(1s*3) UP
209.165.201.4 10.0.0.4 vrf5004 Yes 0/RP0/CPU0
n/a 3s(1s*3) UP
209.165.201.5 10.0.0.5 vrf5005 Yes 0/RP0/CPU0
n/a 3s(1s*3) UP
209.165.201.6 10.0.0.6 vrf5006 Yes 0/RP0/CPU0
n/a 3s(1s*3) UP
209.165.201.7 10.0.0.7 vrf5007 Yes 0/RP0/CPU0
n/a 3s(1s*3) UP