Configuring Bidirectional Forwarding Detection
Points to Consider for Configuring Bidirectional Forwarding Detection
-
Make sure that you understand the different components of BFD, described in RFCs 5880, 5881, and 5883.
-
BFD on a NetScaler appliance is supported for the following routing protocols:
-
BGP (IPv4 and IPv6)
-
OSPFv2 (IPv4)
-
OSPFv3 (IPv6)
-
-
BFD on a NetScaler appliance is not supported for the following routing protocols:
-
ISIS
-
RIP (IPv4)
-
RIPng (IPv6)
-
-
The following BFD features are not supported on a NetScaler appliance:
-
BFD Echo mode
-
BFD Authentication
-
BFD Demand asynchronous mode
-
-
The minimum values for BFD interval and BFD Rx timers are 100 milliseconds.
-
When BFD is used in a topology with shared IP addresses (for example, Layer 2 high availability setup with SNIP addresses or a cluster setup with striped IP addresses), BFD brings down the active sessions during a failover because the BFD failure detection time (order of milliseconds) is lesser than the HA failover detection interval (3–4 seconds). Therefore, Citrix® recommends usage of Graceful restart in layer-2 HA topologies as the routes are retained during the failover process.
Configuration Steps
-
Configure BFD Parameters
-
Configure BFD Support for Dynamic Routing Protocols
Configure BFD Parameters
| BFD Parameter Name | Default Value |
|---|---|
| Interval | 750 milliseconds |
| Minimum Rx | 500 milliseconds |
| Multiplier | 3 |
-
Interval Tx = 600 ms
-
Minimum Rx = 600 ms
-
Multipler = 5
Configuring BFD Parameters for a Single Hop Session
VTYSH command line, at the command prompt, type the following commands, in the order shown:
| Command | Specifies |
|---|---|
vtysh |
Display VTYSH command prompt. |
configure terminal |
Enter global configuration mode. |
interface vlan ID> |
Enter the interface configuration mode. |
bfd singlehop-peer interval <num> minrx <num> multiplier <num> |
Configure the BFD parameters on the specified interface. |
> vtysh
ns# configure terminal
ns(config)# interface vlan3
ns(config-if)# bfd singlehop-peer interval 200 minrx 200 multiplier 5
ns(config-if)# exit
Configuring BFD Parameters for IPv4 Multiple Hop Sessions
VTYSH command line, at the command prompt, type the following commands, in the order shown:
| Command | Specifies |
|---|---|
vtysh |
Display VTYSH command prompt. |
configure terminal |
Enter global configuration mode. |
bfd multihop-peer <ipv4addr> interval <num> minrx <num> multiplier <num> |
Configure the BFD parameters for IPv4 multiple hops sessions. |
> vtysh
ns# configure terminal
ns(config)# bfd multihop-peer 20.20.20.138 interval 300 minrx 300 multiplier 5
ns(config)# exit
Configuring BFD Parameters for IPv6 Multiple Hop Sessions
VTYSH command line, at the command prompt, type the following commands, in the order shown:
| Command | Specifies |
|---|---|
vtysh |
Display VTYSH command prompt. |
configure terminal |
Enter global configuration mode. |
bfd multihop-peer ipv6 <ipv6addr> interval <num> minrx <num> multiplier <num> |
Configure the BFD parameters for IPv6 multiple hops sessions. |
> vtysh
ns(config)# bfd multihop-peer ipv6 20fe:125::138 interval 500 minrx 500 multiplier 5
ns(config)# exit
Configure BFD Support for Dynamic Routing Protocols
Configuring BFD for an IPv4 BGP Single Hop Session
VTYSH command line, at the command prompt, type the following commands, in the order shown:
| Command | Specifies |
|---|---|
vtysh |
Display VTYSH command prompt. |
configure terminal |
Enter global configuration mode. |
router bgp <asnumber> |
BGP autonomous system. asnumber is a required parameter. |
neighbor <ipv4addr> remote-as <num> |
Update the IPv4 BGP table with the IPv4 address of the neighbor in the specified autonomous system. |
neighbor <ipv4addr> fall-over bfd |
Enable BFD for the specified neighbor. |
> vtysh
ns# configure terminal
ns(config)#router bgp 1
ns(config-router)#neighbor 20.20.20.138 remote-as 1
ns(config-router)#neighbor 20.20.20.138 fall-over bfd
ns(config-router)#redistribute kernel
ns(config-router)#exit
Configuring BFD for an IPv4 BGP Multiple Hop Session
VTYSH command line, at the command prompt, type the following commands, in the order shown:
| Command | Specifies |
|---|---|
vtysh |
Display VTYSH command prompt. |
configure terminal |
Enter global configuration mode. |
router bgp <asnumber> |
BGP autonomous system. asnumber is a required parameter. |
neighbor <ipv4addr> remote-as <num> |
Update the IPv4 BGP table with the IPv4 address of the neighbor in the specified autonomous system. |
neighbor <ipv4addr> fall-over bfd multihop |
Enable BFD for the specified neighbor. |
> vtysh
ns# configure terminal
ns(config)#router bgp 1
ns(config-router)#neighbor 20.20.20.138 remote-as 1
ns(config-router)#neighbor 20.20.20.138 fall-over bfd multihop
ns(config-router)#redistribute kernel
ns(config-router)#exit
Configuring BFD for an IPv6 BGP Single Hop Session
VTYSH command line, at the command prompt, type the following commands, in the order shown:
| Command | Specifies |
|---|---|
vtysh |
Display VTYSH command prompt. |
configure terminal |
Enter global configuration mode. |
router bgp <asnumber> |
BGP autonomous system. asnumber is a required parameter. |
neighbor <ipv6addr> remote-as <num> |
Update the IPv6 BGP table with the link local IPv6 address of the neighbor in the specified autonomous system. |
neighbor <ipv6addr> fall-over bfd |
Enable BFD for the specified neighbor. |
address-family ipv6 |
Enter address family configuration mode. |
neighbor <ipv6addr> activate |
Exchange prefixes for the IPv6 router family between the peer and the local node by using the link local address. |
> vtysh
ns# configure terminal ns(config)#router bgp 1
ns(config-router)#neighbor 30fe:123::124 remote-as 1
ns(config-router)#neighbor 30fe:123::124 fall-over bfd
ns(config-router)#address-family ipv6
ns(config-router-af)#neighbor 30fe:123::124 activate
ns(config-router-af)#redistribute kernel
ns(config-router-af)#exit
Configuring BFD for an IPv6 BGP Multiple Hop Session
VTYSH command line, at the command prompt, type the following commands, in the order shown:
| Command | Specifies |
|---|---|
vtysh |
Display VTYSH command prompt. |
configure terminal |
Enter global configuration mode. |
router bgp <asnumber> |
BGP autonomous system. asnumber is a required parameter. |
neighbor <ipv6addr> remote-as <num> |
Update the IPv6 BGP table with the link local IPv6 address of the neighbor in the specified autonomous system. |
neighbor <ipv6addr> fall-over bfd multihop |
Enable BFD for the specified neighbor. |
address-family ipv6 |
Enter address family configuration mode. |
neighbor <ipv6addr> activate |
Exchange prefixes for the IPv6 router family between the peer and the local node by using the link-local address. |
> vtysh
ns# configure terminal
ns(config)# bfd multihop-peer ipv6 20fe:125::138 interval 500 minrx 500 multiplier 5
ns(config)#router bgp 1
ns(config-router)#neighbor 20fe:125::138 remote-as 1
ns(config-router)#neighbor 20fe:125::138 fall-over bfd multihop
ns(config-router)#address-family ipv6
ns(config-router-af)#neighbor 20fe:125::138 activate
ns(config-router-af)#redistribute kernel
ns(config-router-af)#end
Configuring BFD for OSPFv2 (IPv4) on Interfaces
VTYSH command line:
| Command | Specifies |
|---|---|
vtysh |
Display VTYSH command prompt. |
configure terminal |
Enter global configuration mode. |
router ospf <process tag> |
Enter OSPFv2 configuration mode. |
bfd all-interfaces |
Enable BFD on all interfaces that use OSPFv2. |
> vtysh
ns# configure terminal
ns(config)#router ospf 1
ns(config-router)#bfd all-interfaces
ns(config-router)#redistribute kernel
ns(config-router)#exit
VTYSH command line:
| Command | Specifies |
|---|---|
vtysh |
Display VTYSH command prompt. |
configure terminal |
Enter global configuration mode. |
interface <vlan ID> |
Enter the interface configuration mode. |
ip ospf bfd |
Enable BFD on the specified interface that uses OSPFv2. |
> vtysh
ns# configure terminal
ns(config)# interface vlan5
ns(config-if)# ip ospf bfd
ns(config-if)# exit
Configuring BFD for OSPFv3 (IPv6) on Interfaces
VTYSH command line:
| Command | Specifies |
|---|---|
vtysh |
Display VTYSH command prompt. |
configure terminal |
Enter global configuration mode. |
router ipv6 ospf <process tag> |
Enter OSPFv3 configuration mode. |
bfd all-interfaces |
Enable BFD on all interfaces that use OSPFv3. |
> vtysh
ns# configure terminal
ns(config)#router ipv6 ospf 10
ns(config-router)#bfd all-interfaces
ns(config-router)#redistribute kernel
ns(config-router)#exit
VTYSH command line:
| Command | Specifies |
|---|---|
vtysh |
Display VTYSH command prompt. |
configure terminal |
Enter global configuration mode. |
interface <vlan ID> |
Enter the interface configuration mode. |
ipv6 ospf bfd |
Enable BFD on the specified interface that uses OSPFv3. |
> vtysh
ns# configure terminal
ns(config)# interface vlan15
ns(config-if)# ipv6 ospf bfd
ns(config-if)# exit