Cisco Nexus 7000 Series NX-OS Interfaces Configuration Guide, Release 6.x
Configuring Bidirectional Forwarding Detection
Downloads: This chapterpdf (PDF - 441.0KB) The complete bookPDF (PDF - 3.66MB) | Feedback

Configuring Bidirectional Forwarding Detection

Table Of Contents

Configuring Bidirectional Forwarding Detection

Information About BFD

Asynchronous Mode

BFD Detection of Failures

Distributed Operation

BFD Echo Function

Security

High Availability

Virtualization Support

BFD Interoperability

Licensing Requirements for BFD

Prerequisites for BFD

Guidelines and Limitations

Default Settings

Configuring BFD

Configuration Hierarchy

Task Flow for Configuring BFD

Enabling the BFD Feature

Configuring Global BFD Parameters

Configuring BFD on an Interface

Configuring BFD on a Port Channel

Configuring BFD Echo Function

Optimizing BFD on Subinterfaces

Configuring BFD for IPv6

Configuring Global BFD Parameters for IPv6

Configuring Per Interface BFD Parameters for IPv6

Configuring BFD on IPv6 Static Routes

Configuring BFD Echo Mode for IPv6

Configuring a BFD Echo Interface for IPv6

Configuring BFD Slow Timer for IPv6

Configuring BFD Support for Routing Protocols

Configuring BFD on BGP

Configuring BFD on EIGRP

Configuring BFD on OSPF

Configuring BFD on OSPFv3

Configuring BFD on IS-IS

Configuring BFD on IS-ISv6

Configuring BFD on HSRP

Configuring BFD on VRRP

Configuring BFD on PIM

Configuring BFD on Static Routes

Configuring BFD on MPLS TE Fast Reroute

Disabling BFD on an Interface

Configuring BFD Interoperability

Configuring BFD Interoperability in Cisco NX-OS Devices in a Point-to-Point Link

Configuring BFD Interoperability in Cisco NX-OS Devices in a Switch Virtual Interface

Configuring BFD Interoperability in Cisco NX-OS Devices in Logical Mode

Verifying BFD Interoperability in a Cisco Nexus 7000 Series Device

Verifying the BFD Configuration

Monitoring BFD

Configuration Examples for BFD

Additional References

Related Documents

RFCs

Feature History for BFD


Configuring Bidirectional Forwarding Detection


This chapter describes how to configure Bidirectional Forwarding Detection (BFD) on Cisco NX-OS devices.

This chapter includes the following sections:

Information About BFD

Licensing Requirements for BFD

Prerequisites for BFD

Guidelines and Limitations

Default Settings

Configuring BFD

Verifying the BFD Configuration

Monitoring BFD

Configuration Examples for BFD

Additional References

Feature History for BFD

Information About BFD

BFD is a detection protocol designed to provide fast forwarding-path failure detection times for media types, encapsulations, topologies, and routing protocols. You can use BFD to detect forwarding path failures at a uniform rate, rather than the variable rates for different protocol hello mechanisms. BFD makes network profiling and planning easier and reconvergence time consistent and predictable.

BFD provides subsecond failure detection between two adjacent devices and can be less CPU-intensive than protocol hello messages because some of the BFD load can be distributed onto the data plane on supported modules.

This section includes the following topics:

Asynchronous Mode

BFD Detection of Failures

Distributed Operation

BFD Echo Function

Security

High Availability

Virtualization Support

Asynchronous Mode

Cisco NX-OS supports the BFD asynchronous mode, which sends BFD control packets between two adjacent devices to activate and maintain BFD neighbor sessions between the devices. You configure BFD on both devices (or BFD neighbors). Once BFD has been enabled on the interfaces and on the appropriate protocols, Cisco NX-OS creates a BFD session, negotiates BFD session parameters, and begins to send BFD control packets to each BFD neighbor at the negotiated interval. The BFD session parameters include the following:

Desired minimum transmit interval—The interval at which this device wants to send BFD hello messages.

Required minimum receive interval—The minimum interval at which this device can accept BFD hello messages from another BFD device.

Detect multiplier—The number of missing BFD hello messages from another BFD device before this local device detects a fault in the forwarding path.

Figure 5-1 shows how a BFD session is established. The figure shows a simple network with two routers running OSPF and BFD. When OSPF discovers a neighbor (1), it sends a request to the local BFD process to initiate a BFD neighbor session with the OSPF neighbor router (2). The BFD neighbor session with the OSPF neighbor router is now established (3).

Figure 5-1 Establishing a BFD Neighbor Relationship

BFD Detection of Failures

Once a BFD session has been established and timer negotiations are complete, BFD neighbors send BFD control packets that act in the same manner as an IGP hello protocol to detect liveliness, except at a more accelerated rate. BFD detects a failure, but the protocol must take action to bypass a failed peer.

BFD sends a failure detection notice to the BFD-enabled protocols when it detects a failure in the forwarding path. The local device can then initiate the protocol recalculation process and reduce the overall network convergence time.

Figure 5-2 shows what happens when a failure occurs in the network (1). The BFD neighbor session with the OSPF neighbor router is torn down (2). BFD notifies the local OSPF process that the BFD neighbor is no longer reachable (3). The local OSPF process tears down the OSPF neighbor relationship (4). If an alternative path is available, the routers immediately start converging on it.


Note The BFD failure detection occurs in less than a second, which is much faster than OSPF Hello messages could detect the same failure.


Figure 5-2 Tearing Down an OSPF Neighbor Relationship

Distributed Operation

Cisco NX-OS can distribute the BFD operation to compatible modules that support BFD. This process offloads the CPU load for BFD packet processing to the individual modules that connect to the BFD neighbors. All BFD session traffic occurs on the module CPU. The module informs the supervisor when a BFD failure is detected.

BFD Echo Function

The BFD echo function sends echo packets from the forwarding engine to the remote BFD neighbor. The BFD neighbor forwards the echo packet back along the same path in order to perform detection; the BFD neighbor does not participate in the actual forwarding of the echo packets. The echo function and the forwarding engine are responsible for the detection process. BFD can use the slow timer to slow down the asycnhronous session when the echo function is enabled and reduce the number of BFD control packets that are sent between two BFD neighbors. Also, the forwarding engine tests the forwarding path on the remote (neighbor) system without involving the remote system, so there is less interpacket delay variability and faster failure detection times.

The echo function is without asymmetry when both BFD neighbors are running echo function.


Note Unicast Reverse Path Forwarding check (uRPF) is disabled by default. If you need to enable it on an interface functioning with BFD, the BFD echo function must be disabled.


Security

Cisco NX-OS uses the packet Time to Live (TTL) value to verify that the BFD packets came from an adjacent BFD peer. For all asynchronous and echo request packets, the BFD neighbor sets the TTL value to 255 and the local BFD process verifies the TTL value as 255 before processing the incoming packet. For the echo response packet, BFD sets the TTL value to 254.

Beginning with Cisco NX-OS Release 5.2, you can configure SHA-1 authentication of BFD packets.

High Availability

BFD supports stateless restarts and in-service software upgrades (ISSUs). ISSU allows you to upgrade software without impacting forwarding. After a reboot or supervisor switchover, Cisco NX-OS applies the running configuration and BFD immediately sends control packets to the BFD peers.

Virtualization Support

BFD supports virtual routing and forwarding instances (VRFs). VRFs exist within virtual device contexts (VDCs). By default, Cisco NX-OS places you in the default VDC and default VRF unless you specifically configure another VDC and VRF. For more information, see the Cisco Nexus 7000 Series NX-OS Virtual Device Context Configuration Guide.

BFD Interoperability

This feature enables BFD interoperability between Cisco IOS software, Cisco NX-OS software, and Cisco IOS-XR software.

Licensing Requirements for BFD

The following table shows the licensing requirements for this feature:

Product
License Requirement

Cisco NX-OS

BFD requires no license. Any feature not included in a license package is bundled with the Cisco NX-OS system images and is provided at no extra charge to you. For a complete explanation of the Cisco NX-OS licensing scheme, see the Cisco NX-OS Licensing Guide.


Prerequisites for BFD

BFD has the following prerequisites:

You must enable the BFD feature (see the "Enabling the BFD Feature" section).

For any client protocols that you want to enable BFD on, you enable BFD in that client protocol. See the "Configuring BFD for IPv6" section.

Disable Internet Control Message Protocol (ICMP) redirect messages on a BFD-enabled interfaces.

Disable the IP packet verification check for identical IP source and destination addresses in the default VDC.

See other detailed prerequisites that are listed with the configuration tasks.

Beginning with Cisco NX-OS Release 6.2(2), BFD for IPv6 is supported.

To configure the Intermediate System-to-Intermediate System (IS-IS) IPv6 client for BFD, IS-ISmust be running on all participating routers. In addition, the baseline parameters for BFD sessions must be configured on the interfaces that run BFD sessions to BFD neighbors.

To enable BFD interoperability between Cisco IOS Software, Cisco NX-OS software, and Cisco IOS-XR software, use BFD is in echo mode. In addition, configure the no ip redirect command on all the interfaces that are part of BFD and also on the peer device.

Guidelines and Limitations

BFD has the following configuration guidelines and limitations:

BFD supports BFD version 1.

In Cisco NX-OS Release 6.2(2) and later releases, BFD supports IPv4 and IPv6.

BFD supports only one session per address family (IPv4 or IPv6), per interface.

BFD supports single-hop BFD.

BFD for BGP supports single-hop EBGP and iBGP peers.

BFD supports keyed SHA-1 authentication beginning with Cisco NX-OS Release 5.2.

BFD supports the following Layer 3 interfaces—physical interfaces, port channels, subinterfaces, and VLAN interfaces.

BFD depends on a Layer 3 adjacency information to discover topology changes, including Layer 2 topology changes. A BFD session on a VLAN interface (SVI) may not be up after the convergence of the Layer 2 topology if there is no Layer 3 adjacency information available.

BFD does not support monitoring of multiple IPv6 next hops in the same subnet on a single interface.

For BFD on a static route between two devices, both devices must support BFD. If one or both of the devices do not support BFD, the static routes are not programmed in the Routing Information Base (RIB).

Port channel configuration limitations:

For Layer 3 port channels used by BFD, you must enable LACP on the port channel.

For Layer 2 port channels used by SVI sessions, you must enable LACP on the port channel.

SVI limitations:

An ASIC reset will cause traffic disruption for other ports. This event could possibly cause SVI sessions on other ports to flap. Some triggers for an ASIC reset are port moves between VDCs, reloading a VDC, or if the carrier interface is a virtual port channel (vPC), BFD is not supported over the SVI interface.

When you change the topology (for example, add or delete a link into a VLAN, delete a member from a Layer 2 port channel, and so on), the SVI session could be affected. It may go down first and then come up after the topology discovery is finished.


Tip If you do not want the SVI sessions to flap and you need to change the topology, you can disable the BFD feature before making the changes and reenable BFD after the changes have been made. You can also configure the BFD timer to be a large value (for example, 5 seconds), and change it back to a fast timer after the above events complete.


BFD over VLAN interfaces that have member ports only on a N7K-F132XL-15 module are not supported. You should disable BFD over any VLAN with member ports only on a N7K-F132XL-15 module.


Note If you enable BFD at the router level (for example, from OSPF), any BFD sessions over a N7K-F132XL-15 linecard will not come up. See the Cisco Nexus 7000 Series NX-OS Unicast Routing Configuration Guide for information about OSPF and other routing protocols.


When you configure the BFD Echo function on the distributed Layer 3 port channels, reloading a member module flaps the BFD session hosted on that module, which results in a packet loss.

If you connect the BFD peers directly without a Layer 2 switch in between, you can use the BFD per-link mode as an alternative solution.


Note Using BFD per-link mode and subinterface optimization simultaneously on a Layer 3 port channel is not supported.


The BFD echo function is not supported when using IPv6 link-local addresses.

HSRP for IPv4 is supported with BFD.

HSRP for IPv6, VRRPv3 for IPv6, and static IPv6 routes are not supported with BFD.

BFD packets generated by supported the Cisco NX-OS device linecards are sent with COS 6/DSCP CS6. The DSCP/COS values for BFD packets are not user configurable.

Default Settings

Table 5-1 lists the default settings for BFD parameters.

Table 5-1 Default BFD Parameters 

Parameters
Default

BFD feature

Disabled

Required minimum receive interval

50 milliseconds

Desired minimum transmit interval

50 milliseconds

Detect multiplier

3

Echo function

Enabled

Mode

Asynchronous

Port channel

Logical mode (one session per source-destination pair address).

Slow timer

2000 milliseconds

Subinterface optimization

Disabled


Configuring BFD

This section includes the following topics:

Configuration Hierarchy

Task Flow for Configuring BFD

Enabling the BFD Feature

Configuring Global BFD Parameters

Configuring BFD on an Interface

Configuring BFD on a Port Channel

Configuring BFD Echo Function

Optimizing BFD on Subinterfaces

Configuring BFD for IPv6

Configuring BFD Support for Routing Protocols

Configuring BFD Interoperability

Configuration Hierarchy

You can configure BFD at the global level and at the interface or subinterface level (for physical interfaces and port channels). The interface or subinterface configuration overrides the global configuration. On supported interfaces, the subinterface-level configuration overrides the interface or port channel configuration unless subinterface optimization is enabled. See the "Optimizing BFD on Subinterfaces" section for more information.


Note Using BFD per-link mode and subinterface optimization simultaneously on a Layer 3 port channel is not supported.


For physical ports that are members of a port channel, the member port inherits the master port channel BFD configuration. The member port subinterfaces can override the master port channel BFD configuration, unless subinterface optimization is enabled.

Task Flow for Configuring BFD

Follow these steps to configure BFD:


Step 1 Enabling the BFD Feature.

Step 2 Configuring Global BFD Parameters or Configuring BFD on an Interface.

Step 3 Configuring BFD for IPv6.


Enabling the BFD Feature

You must enable the BFD feature before you can configure BFD on an interface and protocol within a device (VDC).

BEFORE YOU BEGIN

Ensure that you are in the correct VDC (or use the switchto vdc command).

SUMMARY STEPS

1. configure terminal

2. feature bfd

3. (Optional) show feature | include bfd

4. (Optional) copy running-config startup-config

DETAILED STEPS

 
Command
Purpose

Step 1 

configure terminal

Example:

switch# configure terminal

switch(config)#

Enters global configuration mode.

Step 2 

feature bfd

Example:

switch(config)# feature bfd

Enables the BFD feature.

Step 3 

show feature | include bfd

Example:

switch(config)# show feature | include bfd

(Optional) Displays enabled and disabled features.

Step 4 

copy running-config startup-config

Example:

switch(config)# copy running-config startup-config

(Optional) Saves this configuration change.

Use the no feature bfd command to disable the BFD feature and remove all associated configuration.

Command
Purpose

no feature bfd

Example:

switch(config)# no feature bfd

Disables the BFD feature and removes all associated configuration.


Configuring Global BFD Parameters

You can configure the BFD session parameters for all BFD sessions on the device. The BFD session parameters are negotiated between the BFD peers in a three-way handshake.

See the "Configuring BFD on an Interface" section to override these global session parameters on an interface.

BEFORE YOU BEGIN

Ensure that you are in the correct VDC (or use the switchto vdc command).

Enable the BFD feature. See the "Enabling the BFD Feature" section.

SUMMARY STEPS

1. configure terminal

2. bfd interval mintx min_rx msec multiplier value

3. bfd slow-timer [interval]

4. bfd echo-interface loopback interface number

5. (Optional) show running-config bfd

6. (Optional) copy running-config startup-config

DETAILED STEPS

 
Command
Purpose

Step 1 

configure terminal

Example:

switch# configure terminal

switch(config)#

Enters global configuration mode.

Step 2 

bfd interval mintx min_rx msec multiplier value

Example:

switch(config)# bfd interval 50 min_rx 50 multiplier 3

Configures the global BFD session parameters on the device. This command overwrites the configuration for all BFD sessions using the global BFD session parameters.

This command does not override the values configured on individual interfaces for BFD session parameters.

The mintx and msec range is from 50 to 999 milliseconds and the default is 50. The multiplier range is from 1 to 50. The multiplier default is 3.

Step 3 

bfd slow-timer [interval]

Example:

switch(config)# bfd slow-timer 2000.

Configures the slow timer used in the echo function.This value determines how fast BFD starts up a new session and at what speed the asynchronous sessions use for BFD control packets when the echo function is enabled. The slow-timer value is used as the new control packet interval, while the echo packets use the configured BFD intervals. The echo packets are used for link failure detection, while the control packets at the slower rate maintain the BFD session. The range is from 1000 to 30000 milliseconds. The default is 2000.

Step 4 

bfd echo-interface loopback interface number

Example:

switch(config-if)# bfd echo-interface loopback 1 3

Configures the interface used for Bidirectional Forwarding Detection (BFD) echo frames. This command changes the source address for the echo packets to the one configured on the specified loopback interface. The interface number range is from 0 to 1023.

Step 5 

show running-config bfd

Example:

switch(config)# show running-config bfd

(Optional) Displays the BFD running configuration.

Step 6 

copy running-config startup-config

Example:

switch(config)# copy running-config startup-config

(Optional) Saves this configuration change.

Configuring BFD on an Interface

You can configure the BFD session parameters for all BFD sessions on an interface. The BFD session parameters are negotiated between the BFD peers in a three-way handshake.

This configuration overrides the global session parameters for the configured interface.

BEFORE YOU BEGIN

Ensure that you are in the correct VDC (or use the switchto vdc command).

Enable the BFD feature. See the "Enabling the BFD Feature" section.

SUMMARY STEPS

1. configure terminal

2. interface int-if

3. bfd interval mintx min_rx msec multiplier value

4. (Optional) bfd authentication keyed-sha1 keyid id key ascii_key

5. (Optional) show running-config bfd

6. (Optional) copy running-config startup-config

DETAILED STEPS

 
Command
Purpose

Step 1 

configure terminal

Example:

switch# configure terminal

switch(config)#

Enters global configuration mode.

Step 2 

interface int-if

Example:

switch(config)# interface ethernet 2/1

switch(config-if)#

Enters interface configuration mode. Use the ? keyword to display the supported interfaces.

Step 3 

bfd interval mintx min_rx msec multiplier value

Example:

switch(config-if)# bfd interval 50 min_rx 50 multiplier 3

Configures the BFD session parameters for all BFD sessions on the interface. This overrides the global BFD session parameters. The mintx and msec range is from 50 to 999 milliseconds and the default is 50. The multiplier range is from 1 to 50. The multiplier default is 3.

Step 4 

bfd authentication keyed-sha1 keyid id key ascii_key

Example:

switch(config-if)# bfd authentication keyed-sha1 keyid 1 ascii_key cisco123

(Optional) Configures SHA-1 authentication for all BFD sessions on the interface. The ascii_key string is a secret key shared among BFD peers. The id value, a number between 0 and 255, is assigned to this particular ascii_key. BFD packets specify the key by id, allowing the use of multiple active keys.

To disable SHA-1 authentication on the interface, use the no form of the command.

Step 5 

show running-config bfd

Example:

switch(config-if)# show running-config bfd

(Optional) Displays the BFD running configuration.

Step 6 

copy running-config startup-config

Example:

switch(config-if)# copy running-config startup-config

(Optional) Saves this configuration change.

Configuring BFD on a Port Channel

You can configure the BFD session parameters for all BFD sessions on a port channel. If per-link mode is used for Layer 3 port channels, BFD creates a session for each link in the port channel and provides an aggregate result to client protocols. For example, if the BFD session for one link on a port channel is up, BFD informs client protocols, such as OSPF, that the port channel is up. The BFD session parameters are negotiated between the BFD peers in a three-way handshake.

This configuration overrides the global session parameters for the configured port channel. The member ports of the port channel inherit the port channel BFD session parameters, unless you configure subinterface-level BFD parameters on a member port. In that case, the member port subinterface uses the subinterface BFD configuration if subinterface optimization is not enabled. See the "Optimizing BFD on Subinterfaces" section for more information.

BEFORE YOU BEGIN

Ensure that you are in the correct VDC (or use the switchto vdc command).

Ensure that you enable LACP on the port channel before you enable BFD.

Enable the BFD feature. See the "Enabling the BFD Feature" section.

SUMMARY STEPS

1. configure terminal

2. interface port-channel number

3. bfd per-link

4. (Optional) bfd interval mintx min_rx msec multiplier value

5. (Optional) bfd authentication keyed-sha1 keyid id key ascii_key

6. (Optional) show running-config bfd

7. (Optional) copy running-config startup-config

DETAILED STEPS

 
Command
Purpose

Step 1 

configure terminal

Example:

switch# configure terminal

switch(config)#

Enters global configuration mode.

Step 2 

interface port-channel number

Example:

switch(config)# interface port-channel 2

switch(config-if)#

Enters port channel configuration mode. Use the ? keyword to display the supported number range.

Step 3 

bfd per-link

Example:

switch(config-if)# bfd per-link

Configures the BFD sessions for each link in the port channel.

Step 4 

bfd interval mintx min_rx msec multiplier value

Example:

switch(config-if)# bfd interval 50 min_rx 50 multiplier 3

(Optional) Configures the BFD session parameters for all BFD sessions on the port channel. This overrides the global BFD session parameters. The mintx and msec range is from 50 to 999 milliseconds and the default is 50. The multiplier range is from 1 to 50. The multiplier default is 3.

Step 5 

bfd authentication keyed-sha1 keyid id key ascii_key

Example:

switch(config-if)# bfd authentication keyed-sha1 keyid 1 ascii_key cisco123

(Optional) Configures SHA-1 authentication for all BFD sessions on the interface. The ascii_key string is a secret key shared among BFD peers. The id value, a number between 0 and 255, is assigned to this particular ascii_key. BFD packets specify the key by id, allowing the use of multiple active keys.

To disable SHA-1 authentication on the interface, use the no form of the command.

Step 6 

show running-config bfd

Example:

switch(config-if)# show running-config bfd

(Optional) Displays the BFD running configuration.

Step 7 

copy running-config startup-config

Example:

switch(config-if)# copy running-config startup-config

(Optional) Saves this configuration change.

Configuring BFD Echo Function

You can configure the BFD echo function on one or both ends of a BFD-monitored link. The echo function slows down the required minimum receive interval, based on the configured slow timer. The RequiredMinEchoRx BFD session parameter is set to zero if the echo function is disabled. The slow timer becomes the required minimum receive interval if the echo function is enabled.

BEFORE YOU BEGIN

Ensure that you are in the correct VDC (or use the switchto vdc command).

Enable the BFD feature. See the "Enabling the BFD Feature" section.

Configure the BFD session parameters. See the "Configuring Global BFD Parameters" section or the "Configuring BFD on an Interface" section.

Ensure that Internet Control Message Protocol (ICMP) redirect messages are disabled on BFD-enabled interfaces. Use the no ip redirects command on the interface.

Ensure that the IP packet verification check for identical IP source and destination addresses is disabled. Use the no hardware ip verify address identical command in the default VDC. See the Cisco Nexus 7000 Series NX-OS Unicast Routing Configuration Guide for more information about this command.

SUMMARY STEPS

1. configure terminal

2. bfd slow-timer echo-interval

3. interface int-if

4. bfd echo

5. (Optional) show running-config bfd

6. (Optional) copy running-config startup-config

DETAILED STEPS

 
Command
Purpose

Step 1 

configure terminal

Example:

switch# configure terminal

switch(config)#

Enters global configuration mode.

Step 2 

bfd slow-timer echo-interval

Example:

switch(config)# bfd slow-timer 2000

Configures the slow timer used in the echo function. This value determines how fast BFD starts up a new session and is used to slow down the asynchronous sessions when the BFD echo function is enabled. This value overwrites the required minimum receive interval when the echo function is enabled. The range is from 1000 to 30000 milliseconds. The default is 2000.

Step 3 

interface int-if

Example:

switch(config)# interface ethernet 2/1

switch(config-if)#

Enters interface configuration mode. Use the ? keyword to display the supported interfaces.

Step 4 

bfd echo

Example:

switch(config-if)# bfd echo

Enables the echo function. The default is enabled.

Step 5 

show running-config bfd

Example:

switch(config-if)# show running-config bfd

(Optional) Displays the BFD running configuration.

Step 6 

copy running-config startup-config

Example:

switch(config-if)# copy running-config startup-config

(Optional) Saves this configuration change.

Optimizing BFD on Subinterfaces

You can optimize BFD on subinterfaces. BFD creates sessions for all configured subinterfaces. BFD sets the subinterface with the lowest configured VLAN ID as the master subinterface and that subinterface uses the BFD session parameters of the parent interface. The remaining subinterfaces use the slow timer. If the optimized subinterface session detects an error, BFD marks all subinterfaces on that physical interface as down.

BEFORE YOU BEGIN

Ensure that you are in the correct VDC (or use the switchto vdc command).

Enable the BFD feature. See the "Enabling the BFD Feature" section.

Configure the BFD session parameters. See the "Configuring Global BFD Parameters" section or the "Configuring BFD on an Interface" section.

Ensure that these subinterfaces connect to another Cisco NX-OS device. This feature is supported on Cisco NX-OS only.

SUMMARY STEPS

1. configure terminal

2. interface int-if

3. bfd optimize subinterface

4. (Optional) show running-config bfd

5. (Optional) copy running-config startup-config

DETAILED STEPS

 
Command
Purpose

Step 1 

configure terminal

Example:

switch# configure terminal

switch(config)#

Enters global configuration mode.

Step 2 

interface int-if

Example:

switch(config)# interface ethernet 2/1

switch(config-if)#

Enters interface configuration mode. Use the ? keyword to display the supported interfaces.

Step 3 

bfd optimize subinterface

Example:

switch(config-if)# bfd optimize subinterface

Optimizes subinterfaces on a BFD-enabled interface. The default is disabled.

Step 4 

show running-config bfd

Example:

switch(config-if)# show running-config bfd

(Optional) Displays the BFD running configuration.

Step 5 

copy running-config startup-config

Example:

switch(config-if)# copy running-config startup-config

(Optional) Saves this configuration change.

Configuring BFD for IPv6

This section includes the following topics:

Configuring Global BFD Parameters for IPv6

Configuring Per Interface BFD Parameters for IPv6

Configuring BFD on IPv6 Static Routes

Configuring BFD Echo Mode for IPv6

Configuring a BFD Echo Interface for IPv6

Configuring BFD Slow Timer for IPv6

Configuring Global BFD Parameters for IPv6

Before You Begin

You can specify either the IPv4 or the IPv6 address family when you configure BFD parameters.

SUMMARY STEPS

1. configure terminal

2. bfd [ipv4 | ipv6] interval [interval min_rx interval multiplier interval-multiplier

DETAILED STEPS

 
Command
Purpose

Step 1 

configure terminal

Example:

switch# configure terminal

switch(config)#

Enters global configuration mode.

Step 2 

bfd [ipv4 | ipv6] interval [interval min_rx milliseconds multiplier interval-multiplier

Example:

switch(config-if)# bfd ipv6 interval 50 min_rx 50 multiplier 3

Configures the BFD session parameters, in milliseconds, for all BFD session on the device.

Configuring Per Interface BFD Parameters for IPv6

Before You Begin

BFD must be enabled on the device.

SUMMARY STEPS

1. configure terminal

2. interface type number

3. bfd [ipv4 | ipv6] interval [interval min_rx milliseconds multiplier interval-multiplier

4. bfd [ipv4 | ipv6] authentication keyed-sha1 key-id id key ascii_key

DETAILED STEPS

 
Command
Purpose

Step 1 

configure terminal

Example:

switch# configure terminal

switch(config)#

Enters global configuration mode.

Step 2 

interface int-if

Example:

switch(config)# interface ethernet 2/1

switch(config-if)#

Enters interface configuration mode. Use the ? keyword to display the supported interfaces.

Step 3 

bfd [ipv4 | ipv6] interval [interval min_rx milliseconds multiplier interval-multiplier

Example:

switch(config-if)# bfd ipv6 interval 50 min_rx 50 multiplier 3

Configures the BFD session parameters for all BFD session in the specified address family on the device.

Step 4 

bfd [ipv4 | ipv6] authentication keyed-sha1 key-id id key ascii_key

Example:

switch(config-if)# bfd authentication keyed-sha1 keyid 1 ascii_key XYZ123

Configures Secure Hash Algorithm 1 (SHA-1) authentication for all BFD sessions on the specified address family.

Configuring BFD on IPv6 Static Routes

You can configure BFD for all IPv6 static routes on an interface.

Prerequisites

Ensure that you are in the correct VDC (or use the switchto vdc command).

Ensure that BFD is enabled on the devices at each end of the static route.

Ensure that the BFD session parameters are configured. See the "Configuring Global BFD Parameters for IPv6" section or the "Configuring BFD on an Interface for IPv6" section.

DETAILED STEPS

 
Command or Action
Purpose

Step 1 

switch# configure terminal

Enters global configuration mode on the host router.

Step 2 

switch(config)# vrf context vrf-name

Enters VRF configuration mode to configure BFD on an IPv6 static route.

Specify the VRF in which the route is to BFD tracked.

Step 3 

switch(config-vrf)# ipv6 route route interface {nh-address | nh-prefix}

Creates an IPv6 static route.

Specify the IPv6 address for the route argument.

Use the ? keyword to display the supported interfaces.

Specify the next hop (nh) address or prefix for this static route.

Step 4 

switch(config-vrf)# ipv6 route static bfd network-interface {nh-address | nh-prefix}

Enables BFD for all IPv6 static routes on this interface and next hop combination.

Use the ? keyword to display the supported interfaces.

Specify the next hop (nh) address or prefix for this IPv6 interface.

Step 5 

switch(config-vrf)# show bfd neighbors

Displays information about BFD neighbors.

Step 6 

switch(config-vrf)# show ipv6 route static

Displays static routes.

Step 7 

switch(config-vrf)# copy running-config startup-config

(Optional) Saves the new running configuration on the device.

This example shows how to configure BFD on an IPv6 static route between two BFD neighbors:

switch(config)# vrf context red
switch(config-vrf)# ipv6 route 1::5/64 ethernet 3/1 2::2
switch(config-vrf)# ipv6 route static bfd ethernet 3/1 2::2 <===Enables BFD on static
routes for the interface/next hop combination.

Configuring BFD Echo Mode for IPv6

The BFD echo function is not supported on devices with IPv6 link-local addresses.

The echo function is enabled by default. You can disable it for IPv4, IPv6, or all address families.

SUMMARY STEPS

1. configure terminal

2. interface type number

3. bfd [ipv4 | ipv6] echo

DETAILED STEPS

 
Command
Purpose

Step 1 

configure terminal

Example:

switch# configure terminal

switch(config)#

Enters global configuration mode.

Step 2 

interface int-if

Example:

switch(config)# interface ethernet 2/1

switch(config-if)#

Enters interface configuration mode. Use the ? keyword to display the supported interfaces.

Step 3 

bfd [ipv4 | ipv6] echo

Example:

switch(config-if)# bfd ipv6 echo

Enables the echo function for the specified address family. The default is enabled.

To disable the echo function for the specified address family, use the no form of the command.

Configuring a BFD Echo Interface for IPv6

Perform this task to configure the loopback interface as the source address for all echo frames.

SUMMARY STEPS

1. configure terminal

2. interface loopback number

3. ip address ip-address mask

4. ipv6 address {ipv6-address / prefix-length | prefix-name sub-bits / prefix-length}

DETAILED STEPS

 
Command
Purpose

Step 1 

configure terminal

Example:

switch# configure terminal

switch(config)#

Enters global configuration mode.

Step 2 

interface loopback number

Example:

switch(config)# interface loopback 50

Creates a loopback interface and enters interface configuration mode.

Step 3 

ip address ip-address mask

Example:

switch(config-if)# ip address 192.108.1.27255.255.255.0

Configures the IP address for the interface.

Step 4 

ipv6 address {ipv6-address/prefix-length | prefix-name

sub-bits / prefix-length}

Example:

switch(config-if)# ipv6 address 2001:DB8:c18:1::3/64

Configures the IPv6 address as the source address for all echo frames.

Configuring BFD Slow Timer for IPv6

Echo mode is enabled by default. You can configure the slow-timer value and disable or enable echo mode for an address family.

SUMMARY STEPS

1. configure terminal

2. interface type number

3. bfd [ipv4 | ipv6] slow-timer [interval]

DETAILED STEPS

 
Command
Purpose

Step 1 

configure terminal

Example:

switch# configure terminal

switch(config)#

Enters global configuration mode.

Step 2 

interface int-if

Example:

switch(config)# interface ethernet 2/1

switch(config-if)#

Enters interface configuration mode. Use the ? keyword to display the supported interfaces.

Step 3 

bfd [ipv4 | ipv6] slow-timer [interval]

Example:

switch(config-if)# bfd ipv6 slow-timer 6000

Configures the slow timer, in milliseconds, used in the echo function for the specified address family.

Configuring BFD Support for Routing Protocols

This section includes the following topics:

Configuring BFD on BGP

Configuring BFD on EIGRP

Configuring BFD on OSPF

Configuring BFD on OSPFv3

Configuring BFD on IS-IS

Configuring BFD on IS-ISv6

Configuring BFD on HSRP

Configuring BFD on VRRP

Configuring BFD on PIM

Configuring BFD on Static Routes

Configuring BFD on MPLS TE Fast Reroute

Disabling BFD on an Interface

Configuring BFD on BGP

You can configure BFD for the Border Gateway Protocol (BGP).

BEFORE YOU BEGIN

Ensure that you are in the correct VDC (or use the switchto vdc command).

Enable the BFD feature. See the "Enabling the BFD Feature" section.

Configure the BFD session parameters. See the "Configuring Global BFD Parameters" section or the "Configuring BFD on an Interface" section.

Enable the BGP feature. See the Cisco Nexus 7000 Series NX-OS Unicast Routing Configuration Guide for more information.

SUMMARY STEPS

1. configure terminal

2. router bgp as-number

3. neighbor {ip-address | ipv6-address} remote-as as-number

4. bfd

5. (Optional) show running-config bgp

6. (Optional) copy running-config startup-config

DETAILED STEPS

 
Command
Purpose

Step 1 

configure terminal

Example:

switch# configure terminal

switch(config)#

Enters global configuration mode.

Step 2 

router bgp as-number

Example:

switch(config)# router bgp 64496

switch(config-router)#

Enables BGP and assigns the AS number to the local BGP speaker. The AS number can be a 16-bit integer or a 32-bit integer in the form of a higher 16-bit decimal number and a lower 16-bit decimal number in xx.xx format.

Step 3 

neighbor {ip-address | ipv6-address} remote-as as-number

Example:

switch(config-router)# neighbor 209.165.201.1 remote-as 64497

switch(config-router-neighbor)#

Configures the IPv4 or IPv6 address and AS number for a remote BGP peer. The ip-address format is x.x.x.x. The ipv6-address format is A:B::C:D.

Step 4 

bfd

Example:

switch(config-router-neighbor)# bfd

Enables BFD for this BGP peer.

Step 5 

show running-config bgp

Example:

switch(config-router-neighbor)# show running-config bgp

(Optional) Displays the BGP running configuration.

Step 6 

copy running-config startup-config

Example:

switch(config-router-neighbor)# copy running-config startup-config

(Optional) Saves this configuration change.

Configuring BFD on EIGRP

You can configure BFD for the Enhanced Interior Gateway Routing Protocol (EIGRP).

BEFORE YOU BEGIN

Ensure that you are in the correct VDC (or use the switchto vdc command).

Enable the BFD feature. See the "Enabling the BFD Feature" section.

Configure the BFD session parameters. See the "Configuring Global BFD Parameters" section or the "Configuring BFD on an Interface" section.

Enable the EIGRP feature. See the Cisco Nexus 7000 Series NX-OS Unicast Routing Configuration Guide for more information.

SUMMARY STEPS

1. configure terminal

2. router eigrp instance-tag

3. bfd

4. interface int-if

5. (Optional) ip eigrp instance-tag bfd

6. (Optional) show ip eigrp [vrf vrf-name] [interfaces if]

7. (Optional) copy running-config startup-config

DETAILED STEPS

 
Command
Purpose

Step 1 

configure terminal

Example:

switch# configure terminal

switch(config)#

Enters global configuration mode.

Step 2 

router eigrp instance-tag

Example:

switch(config)# router eigrp Test1

switch(config-router)#

Creates a new EIGRP process with the configured instance tag. The instance tag can be any case-sensitive, alphanumeric string up to 20 characters.

If you configure an instance-tag that does not qualify as an AS number, you must use the autonomous-system command to configure the AS number explicitly or this EIGRP instance will remain in the shutdown state.

Step 3 

bfd

Example:

switch(config-router-neighbor)# bfd

(Optional) Enables BFD for all EIGRP interfaces.

Step 4 

interface int-if

Example:

switch(config-router-neighbor)# interface ethernet 2/1

switch(config-if)#

Enters interface configuration mode. Use the ? keyword to display the supported interfaces.

Step 5 

ip eigrp instance-tag bfd

Example:

switch(config-if)# ip eigrp Test1 bfd

(Optional) Enables or disables BFD on an EIGRP interface. The instance tag can be any case-sensitive, alphanumeric string up to 20 characters.

The default is disabled.

Step 6 

show ip eigrp [vrf vrf-name] [interfaces if]

Example:

switch(config-if)# show ip eigrp

(Optional) Displays information about EIGRP. The vrf-name can be any case-sensitive, alphanumeric string up to 32 characters.

Step 7 

copy running-config startup-config

Example:

switch(config-if)# copy running-config startup-config

(Optional) Saves this configuration change.

Configuring BFD on OSPF

You can configure BFD for the Open Shortest Path First version 2 (OSPFv2).

BEFORE YOU BEGIN

Ensure that you are in the correct VDC (or use the switchto vdc command).

Enable the BFD feature. See the "Enabling the BFD Feature" section.

Configure the BFD session parameters. See the "Configuring Global BFD Parameters" section or the "Configuring BFD on an Interface" section.

Enable the OSPF feature. See the Cisco Nexus 7000 Series NX-OS Unicast Routing Configuration Guide for more information.

SUMMARY STEPS

1. configure terminal

2. router ospf instance-tag

3. bfd

4. interface int-if

5. (Optional) if ospf bfd

6. (Optional) show ip ospf [vrf vrf-name] [interface if]

7. (Optional) copy running-config startup-config

DETAILED STEPS

 
Command
Purpose

Step 1 

configure terminal

Example:

switch# configure terminal

switch(config)#

Enters global configuration mode.

Step 2 

router ospf instance-tag

Example:

switch(config)# router ospf 201

switch(config-router)#

Creates a new OSPFv2 instance with the configured instance tag. The instance tag can be any case-sensitive, alphanumeric string up to 20 characters.

Step 3 

bfd

Example:

switch(config-router)# bfd

(Optional) Enables BFD for all OSPFv2 interfaces.

Step 4 

interface int-if

Example:

switch(config-router)# interface ethernet 2/1

switch(config-if)#

Enters interface configuration mode. Use the ? keyword to display the supported interfaces.

Step 5 

ip ospf bfd

Example:

switch(config-if)# ip ospf bfd

(Optional) Enables or disables BFD on an OSPFv2 interface. The default is disabled.

Step 6 

show ip ospf [vrf vrf-name] [interface if]

Example:

switch(config-if)# show ip ospf

(Optional) Displays information about OSPF. The vrf-name can be any case-sensitive, alphanumeric string up to 32 characters.

Step 7 

copy running-config startup-config

Example:

switch(config-if)# copy running-config startup-config

(Optional) Saves this configuration change.

Configuring BFD on OSPFv3

BFD supports Open Shortest Path First version 3 (OSPFv3), which is a link-state routing protocol for IPv6 networks.

There are two methods for enabling BFD support for OSPFv3:

You can enable BFD for all of the interfaces for which OSPFv3 is routing by entering the bfd command in router configuration mode. You can disable BFD support on individual interfaces by entering the the ospfv3 bfd disable command in interface configuration mode.

You can enable BFD for a subset of the interfaces for which OSPFv3 is routing by entering the ospfv3 bfd command in interface configuration mode.


Note OSPF will only initiate BFD sessions for OSPF neighbors that are in the FULL state.


Configuring BFD Session Parameters on the Interface

SUMMARY STEPS

1. configure terminal

2. interface type number

3. bfd interval milliseconds min_rx milliseconds multiplier interval-multiplier

4. end

DETAILED STEPS

 
Command
Purpose

Step 1 

configure terminal

Example:

switch# configure terminal

switch(config)#

Enters global configuration mode.

Step 2 

interface int-if

Example:

switch(config)# interface ethernet 2/1

switch(config-if)#

Enters interface configuration mode. Use the ? keyword to display the supported interfaces.

Step 3 

bfd interval milliseconds min_rx milliseconds multiplier interval-multiplier

Example:

switch(config-if)# bfd interval 50 min_rx 50 multiplier 5

Enables BFD on the interface.

Step 4 

end

Example:

switch(config-if)# end

Exits interface configuration mode and returns to global configuration mode.

Configuring BFD for OSPFv3 for All Interfaces

Before You Begin

OSPFv3 must be running on all participating devices. The baseline parameters for BFD sessions on the interfaces over which you want to run BFD sessions to BFD neighbors must be configured.

SUMMARY STEPS

1. configure terminal

2. router ospf process-id

3. bfd

4. exit

5. show bfd neighbors [details]

6. show ospfv3 [process-id]

DETAILED STEPS

 
Command
Purpose

Step 1 

configure terminal

Example:

switch# configure terminal

switch(config)#

Enters global configuration mode.

Step 2 

router ospf process-id

Example:

switch(config)# router ospf 2

Configures an OSFPv3 routing process.

Step 3 

bfd

Example:

switch(config-router)# bfd

Enables BFD for all interfaces participating in the routing process.

Step 4 

exit

Example:

switch(config-router)# exit

Enter this command twice to return to EXEC mode.

Step 5 

show bfd neighbors [details]

Example:

switch# show bfd neighbors details

(Optional) Displays a line-by-line listing of existing BFD adjancencies.

Step 6 

show ospfv3 [process-id]

Example:

switch# show ospfv3

(Optional) Displays general information about OSPFv3 routing processes.

Configuring BFD for OSPFv3 on One or More Interfaces

BEFORE YOU BEGIN

OSPFv3 must be running on all participating devices. The baseline parameters for BFD sessions on the interfaces over which you want to run BFD sessions to BFD neighbors must be configured.

SUMMARY STEPS

1. configure terminal

2. interface type number

3. ospfv3 bfd [disable]

4. exit

5. show bfd neighbors [details]

6. show ospfv3 [process-id]

DETAILED STEPS

 
Command
Purpose

Step 1 

configure terminal

Example:

switch# configure terminal

switch(config)#

Enters global configuration mode.

Step 2 

interface int-if

Example:

switch(config)# interface Ethernet 2/1

Specifies an interface type and number, and places the device in interface configuration mode.

Step 3 

ospfv3 bfd [disable]

Example:

switch(config-router)# ospfv3 bfd

Enables BFD on a per-interface basis for one or more interfaces associated with the OSPFv3 routing process.

Step 4 

exit

Example:

switch(config-if)# exit

Enter this command twice to return to EXEC mode.

Step 5 

show bfd neighbors [details]

Example:

switch# show bfd neighbors details

(Optional) Displays a line-by-line listing of existing BFD adjancencies.

Step 6 

show ospfv3 [process-id]

Example:

switch# show ospfv3

(Optional) Displays general information about OSPFv3 routing processes.

Configuring BFD on IS-IS

You can configure BFD for the Intermediate System-to-Intermediate System (IS-IS) protocol.

BEFORE YOU BEGIN

Ensure that you are in the correct VDC (or use the switchto vdc command).

Enable the BFD feature. See the "Enabling the BFD Feature" section.

Configure the BFD session parameters. See the "Configuring Global BFD Parameters" section or the "Configuring BFD on an Interface" section.

Enable the IS-IS feature. See the Cisco Nexus 7000 Series NX-OS Unicast Routing Configuration Guide for more information.

SUMMARY STEPS

1. configure terminal

2. router isis instance-tag

3. bfd

4. interface int-if

5. (Optional) isis bfd

6. (Optional) show isis [vrf vrf-name] [interface if]

7. (Optional) copy running-config startup-config

DETAILED STEPS

 
Command
Purpose

Step 1 

configure terminal

Example:

switch# configure terminal

switch(config)#

Enters global configuration mode.

Step 2 

router isis instance-tag

Example:

switch(config)# router isis Enterprise

switch(config-router)#

Creates a new IS-IS instance with the configured instance tag.

Step 3 

bfd

Example:

switch(config-router)# bfd

(Optional) Enables BFD for all OSPFv2 interfaces.

Step 4 

interface int-if

Example:

switch(config-router)# interface ethernet 2/1

switch(config-if)#

Enters interface configuration mode. Use the ? keyword to display the supported interfaces.

Step 5 

isis bfd

Example:

switch(config-if)# isis bfd

(Optional) Enables or disables BFD on an IS-IS interface. The default is disabled.

Step 6 

show isis [vrf vrf-name] [interface if]

Example:

switch(config-if)# show isis

(Optional) Displays information about IS-IS. The vrf-name can be any case-sensitive, alphanumeric string up to 32 characters.

Step 7 

copy running-config startup-config

Example:

switch(config-if)# copy running-config startup-config

(Optional) Saves this configuration change.

Configuring BFD on IS-ISv6

When BFD support is configured with IS-IS as a registered protocol with BFD, IS-IS receives forwarding path detection failure messages from BFD. BFD support for IS-IS can be configured in either router address-family configuration mode or interface configuration mode. IS-IS IPv6 runs in single-topology mode.

IS-IS BFD supports both IPv4 and IPv6 on the same adjacency for single-topology mode. If BFD is enabled for both IPv4 and IPv6, IS-IS sends two BFD session creation requests to BFD. For single-topology mode, the IS-IS adjacency state can only be up if both BFD sessions are up. If either of the BFD sessions is down, the associated IS-IS adjacency state is also down.

When IS-IS BFD IPv6 is disabled on an interface, IS-IS removes related BFD sessions for IPv6 from the adjacent device. When the IS-IS adjacency entry is deleted, all BFD sessions are also deleted. IS-IS requests BFD to remove each BFD session that it has requested when any of the following events occur:

The IS-IS instance is deleted or un-configured.

The IS-IS adjacency entry is deleted.

IS-IS BFD is disabled on the next hop interface for an address-family.

Configuring IS-IS IPv6 Client Support on an Interface

BEFORE YOU BEGIN

IS-IS requests a BFD session for the interface and the IPv6 address of the neighboring device when all of the following conditions are met:

An IS-IS adjacency entry exists.

The Address Family Identifier (AFI) specific peer interface address is known.

IS-IS BFD is enabled for that AFI on an interface.

IS-IS is enabled for that AFI on the local interface.

If the neighboring device supports RFC 6213, BFD must be enabled for the specified Network Layer Protocol Identifier (NLPID).

SUMMARY STEPS

1. configure terminal

2. interface type number

3. isis ipv6 bfd

4. end

5. show isis interface type number

DETAILED STEPS

 
Command
Purpose

Step 1 

configure terminal

Example:

switch# configure terminal

switch(config)#

Enters global configuration mode.

Step 2 

interface int-if

Example:

switch(config)# interface ethernet 2/1

switch(config-if)#

Enters interface configuration mode. Use the ? keyword to display the supported interfaces.

Step 3 

isis ipv6 bfd

Example:

switch(config-if)# isis ipv6 bfd

Enables IPv6 BFD on a specific interface that is configured for IS-IS.

Step 4 

end

Example:

switch(config-if)# end

Exits interface configuration mode and returns to globacl configuration mode.

Step 5 

show isis interface int-if

switch(config)# isis interface ethernet 2/1

(Optional) Displays interface information about IS-IS.

Configuring IS-IS IPv6 Client Support for BFD on All Interfaces

SUMMARY STEPS

1. configure terminal

2. router isis process-id

3. metric-style transition

4. address-family ipv6 unicast

5. bfd

6. end

7. show isis [process-id]

DETAILED STEPS

 
Command
Purpose

Step 1 

configure terminal

Example:

switch# configure terminal

switch(config)#

Enters global configuration mode.

Step 2 

router isis process-id

Example:

switch(config)# router isis 4

switch(config-if)#

Enables the IS-IS routing protocol and enters router configuration mode.

Step 3 

metric-style transition

Example:

switch(config-if)# metric-style transition

(Optional) Configures a device that is running IS-IS so that it generates and accepts only new style, type, length, value objects (TLVs).

Step 4 

addresss-family ipv6 unicast

Example:

switch(config-router)# address-family ipv6 unicast

Enters address family configuration mode for configuring IS-IS routing session that use standard IPv6 address prefixes.

Step 5 

bfd

Example:

switch(config-router-af)# bfd

Enables BFD for all interfaces that are participating in the routing process.

Step 6 

end

Example:

switch(config-router-af)# end

Exits address family configuration mode and returns to global configuration mode.

Step 7 

show isis process-id

Example:

switch(config)# show isis 4

(Optional) Displays interface information about IS-IS.

Configuring BFD on HSRP

You can configure BFD for the Hot Standby Router Protocol (HSRP). The active and standby HSRP routers track each other through BFD. If BFD on the standby HSRP router detects that the active HSRP router is down, the standby HSRP router treats this event as an active time rexpiry and takes over as the active HSRP router.

The show hsrp detail will show this event as BFD@Act-down or BFD@Sby-down.

BEFORE YOU BEGIN

Ensure that you are in the correct VDC (or use the switchto vdc command).

Enable the BFD feature. See the "Enabling the BFD Feature" section.

Configure the BFD session parameters. See the "Configuring Global BFD Parameters" section or the "Configuring BFD on an Interface" section.

Enable the HSRP feature. See the Cisco Nexus 7000 Series NX-OS Unicast Routing Configuration Guide for more information.

SUMMARY STEPS

1. configure terminal

2. hsrp bfd all-interfaces

3. interface int-if

4. (Optional) hsrp bfd

5. (Optional) show running-config hsrp

6. (Optional) copy running-config startup-config

DETAILED STEPS

 
Command
Purpose

Step 1 

configure terminal

Example:

switch# configure terminal

switch(config)#

Enters global configuration mode.

Step 1 

hsrp bfd all-interfaces

Example:

switch# hsrp bfd all-interfaces

(Optional) Enables or disables BFD on all HSRP interfaces. The default is disabled.

Step 2 

interface int-if

Example:

switch(config)# interface ethernet 2/1

switch(config-if)#

Enters interface configuration mode. Use the ? keyword to display the supported interfaces.

Step 3 

hsrp bfd

Example:

switch(config-if)# hsrp bfd

(Optional) Enables or disables BFD on an HSRP interface. The default is disabled.

Step 4 

show running-config hsrp

Example:

switch(config-if)# show running-config hsrp

(Optional) Displays the HSRP running configuration.

Step 5 

copy running-config startup-config

Example:

switch(config-if)# copy running-config startup-config

(Optional) Saves this configuration change.

Configuring BFD on VRRP

You can configure BFD for the Virtual Router Redundancy Protocol (VRRP). The active and standby VRRP routers track each other through BFD. If BFD on the standby VRRP router detects that the active VRRP router is down, the standby VRRP router treats this event as an active time rexpiry and takes over as the active VRRP router.

The show vrrp detail will show this event as BFD@Act-down or BFD@Sby-down.

BEFORE YOU BEGIN

Ensure that you are in the correct VDC (or use the switchto vdc command).

Enable the BFD feature. See the "Enabling the BFD Feature" section.

Configure the BFD session parameters. See the "Configuring Global BFD Parameters" section or the "Configuring BFD on an Interface" section.

Enable the VRRP feature. See the Cisco Nexus 7000 Series NX-OS Unicast Routing Configuration Guide for more information.

SUMMARY STEPS

1. configure terminal

2. interface int-if

3. vrrp group-no

4. vrrp bfd address

5. (Optional) show running-config vrrp

6. (Optional) copy running-config startup-config

DETAILED STEPS

 
Command
Purpose

Step 1 

configure terminal

Example:

switch# configure terminal

switch(config)#

Enters global configuration mode.

Step 2 

interface int-if

Example:

switch(config)# interface ethernet 2/1

switch(config-if)#

Enters interface configuration mode. Use the ? keyword to display the supported interfaces.

Step 3 

vrrp group-no

Example:

switch(config-if)# vrrp group-no

Specifies the VRRP group number.

Step 4 

vrrp bfd address

Example:

switch(config-if)# vrrp bfd

Enables or disables BFD on an VRRP interface. The default is disabled.

Step 5 

show running-config vrrp

Example:

switch(config-if)# show running-config vrrp

(Optional) Displays the VRRP running configuration.

Step 6 

copy running-config startup-config

Example:

switch(config-if)# copy running-config startup-config

(Optional) Saves this configuration change.

Configuring BFD on PIM

You can configure BFD for the Protocol Independent Multicast (PIM) protocol.

BEFORE YOU BEGIN

Ensure that you are in the correct VDC (or use the switchto vdc command).

Enable the BFD feature. See the "Enabling the BFD Feature" section.

Enable the PIM feature. See the Cisco Nexus 7000 Series NX-OS Multicast Routing Configuration Guide for more information.

SUMMARY STEPS

1. configure terminal

2. ip pim bfd

3. interface if-type

4. (Optional) ip pim bfd-instance [disable]

5. (Optional) show running-config pim

6. (Optional) copy running-config startup-config

DETAILED STEPS

 
Command
Purpose

Step 1 

configure terminal

Example:

switch# configure terminal

switch(config)#

Enters global configuration mode.

Step 2 

ip pim bfd

Example:

switch(config)# ip pim bfd

Enables BFD for PIM.

Step 3 

interface int-if

Example:

switch(config)# interface ethernet 2/1

switch(config-if)#

Enters interface configuration mode. Use the ? keyword to display the supported interfaces.

Step 4 

ip pim bfd-instance [disable]

Example:

switch(config-if)# ip pim bfd-instance

(Optional) Enables or disables BFD on a PIM interface. The default is disabled.

Step 5 

show running-config pim

Example:

switch(config)# show running-config pim

(Optional) Displays the PIM running configuration.

Step 6 

copy running-config startup-config

Example:

switch(config)# copy running-config startup-config

(Optional) Saves this configuration change.

Configuring BFD on Static Routes

You can configure BFD for static routes on an interface. You can optionally configure BFD on a static route within a virtual routing and forwarding (VRF) instance.

BEFORE YOU BEGIN

Ensure that you are in the correct VDC (or use the switchto vdc command).

Enable the BFD feature. See the "Enabling the BFD Feature" section.

SUMMARY STEPS

1. configure terminal

2. (Optional) vrf context vrf-name

3. ip route route interface if {nh-address | nh-prefix}

4. ip route static bfd interface {nh-address | nh-prefix}

5. (Optional) show ip route static [vrf vrf-name]

6. (Optional) copy running-config startup-config

DETAILED STEPS

 
Command
Purpose

Step 1 

configure terminal

Example:

switch# configure terminal

switch(config)#

Enters global configuration mode.

Step 2 

vrf context vrf-name

Example:

switch(config)# vrf context Red

switch(config-vrf)#

(Optional) Enters VRF configuration mode.

Step 3 

ip route route interface {nh-address | nh-prefix}

Example:

switch(config-vrf)# ip route 192.0.2.1 ethernet 2/1 192.0.2.4

Creates a static route Use the ? keyword to display the supported interfaces.

Step 4 

ip route static bfd interface {nh-address | nh-prefix}

Example:

switch(config-vrf)# ip route static bfd ethernet 2/1 192.0.2.4

Enables BFD for all static routes on an interface. Use the ? keyword to display the supported interfaces.

Step 5 

show ip route static[vrf vrf-name]

Example:

switch(config-vrf)# show ip route static vrf Red

(Optional) Displays the static routes.

Step 6 

copy running-config startup-config

Example:

switch(config-vrf)# copy running-config startup-config

(Optional) Saves this configuration change.

Configuring BFD on MPLS TE Fast Reroute

MPLS Traffic Engineering (TE) uses BFD accelerate the detection of node failures and to provide fast forwarding path failure detection times. BFD for MPLS TE fast reroute is configured automatically when you enable the fast reroute on a tunnel. See the "Configuring MPLS TE Fast Reroute Link and Node Protection" chapter in the Cisco Nexus 7000 Series NX-OS MPLS Configuration Guide for more information.

Disabling BFD on an Interface

You can selectively disable BFD on an interface for a routing protocol that has BFD enabled at the global or VRF level.

To disable BFD on an interface, use one of the following commands in interface configuration mode:

Command
Purpose

ip eigrp instance-tag bfd disable

Example:

switch(config-if)# ip eigrp Test1 bfd disable

Disables BFD on an EIGRP interface. The instance tag can be any case-sensitive, alphanumeric string up to 20 characters.

ip ospf bfd disable

Example:

switch(config-if)# ip ospf bfd disable

Disables BFD on an OSPFv2 interface.

isis bfd disable

Example:

switch(config-if)# isis bfd disable

Disables BFD on an IS-IS interface.


Configuring BFD Interoperability

This section includes the following topics:

Configuring BFD Interoperability in Cisco NX-OS Devices in a Point-to-Point Link

Configuring BFD Interoperability in Cisco NX-OS Devices in a Switch Virtual Interface

Configuring BFD Interoperability in Cisco NX-OS Devices in Logical Mode

Verifying BFD Interoperability in a Cisco Nexus 7000 Series Device

Configuring BFD Interoperability in Cisco NX-OS Devices in a Point-to-Point Link

SUMMARY STEPS

1. configuration terminal

2. interface if-type

3. ip ospf bfd

4. no ip redirect

5. bfd interval mintx min_rx msec multiplier value

6. exit

DETAILED STEPS

 
Command
Purpose

Step 1 

configure terminal

Example:

switch# configure terminal

switch(config)#

Enters global configuration mode.

Step 2 

interface int-if

Example:

switch(config)# interface ethernet 2/1

switch(config-if)#

Enters interface configuration mode. Use the ? keyword to display the supported interfaces.

Step 3 

ip ospf bfd

Example:

switch(config-if)# ip ospf bfd

Enables BFD on an OSPFv2 interface. The default is disabled.

OSPF is used as an example. You can enable BFD of any of the supported protocols.

Step 4 

no ip redirects

Example:

switch(config-if)# no ip redirects

Prevents the device from sending redirects.

Step 5 

bfd interval mintx min_rx msec multiplier value

Example:

switch(config-if)# bfd interval 50 min_rx 50 multiplier 3

Configures the BFD session parameters for all BFD sessions on the device. The mintx and msec range is from 50 to 999 milliseconds and the default is 50. The multiplier range is from 1 to 50. The multiplier default is 3.

Step 6 

exit

Example:

switch(config-if)# exit

Exits interface configuration mode and returns to EXEC mode.

Configuring BFD Interoperability in Cisco NX-OS Devices in a Switch Virtual Interface

SUMMARY STEPS

1. configuration terminal

2. interface vlan vlan-id

3. bfd interval mintx min_rx msec multiplier value

4. no ip redirect

5. ip address ip-address/length

6. ip ospf bfd

7. exit

DETAILED STEPS

 
Command
Purpose

Step 1 

configure terminal

Example:

switch# configure terminal

switch(config)#

Enters global configuration mode.

Step 2 

interface vlan vlan-id

Example:

switch(config)# interface vlan 998

switch(config-if)#

Creates a dynamic Switch Virtual Interface (SVI).

Step 3 

bfd interval mintx min_rx msec multiplier value

Example:

switch(config-if)# bfd interval 50 min_rx 50 multiplier 3

Configures the BFD session parameters for all BFD sessions on the device. The mintx and msec range is from 50 to 999 milliseconds and the default is 50. The multiplier range is from 1 to 50. The multiplier default is 3.

Step 4 

no ip redirects

Example:

switch(config-if)# no ip redirects

Prevents the device from sending redirects.

Step 5 

ip address ip-address/length

Example:

switch(config-if)# ip address 10.1.0.253/24

Configures an IP address for this interface.

Step 6 

ip ospf bfd

Example:

switch(config-if)# ip ospf bfd

Enables or disables BFD on an OSPFv2 interface. The default is disabled.

Step 7 

exit

Example:

switch(config-if)# exit

Exits interface configuration mode and returns to EXEC mode.

Configuring BFD Interoperability in Cisco NX-OS Devices in Logical Mode

SUMMARY STEPS

1. configuration terminal

2. interface type number.subinterface-id

3. bfd interval mintx min_rx msec multiplier value

4. no ip redirect

5. ip ospf bfd

6. exit

DETAILED STEPS

 
Command
Purpose

Step 1 

configure terminal

Example:

switch# configure terminal

switch(config)#

Enters global configuration mode.

Step 2 

interface type number.subinterface-id

Example:

switch(config)# interface port-channel 50.2

Enters port channel configuration mode. Use the ? keyword to display the supported number range.

Step 3 

bfd interval mintx min_rx msec multiplier value

Example:

switch(config-if)# bfd interval 50 min_rx 50 multiplier 3

Configures the BFD session parameters for all BFD sessions on the device. The mintx and msec range is from 50 to 999 milliseconds and the default is 50. The multiplier range is from 1 to 50. The multiplier default is 3.

Step 4 

no ip redirects

Example:

switch(config-if)# no ip redirects

Prevents the device from sending redirects.

Step 5 

ip ospf bfd

Example:

switch(config-if)# ip ospf bfd

Enables or disables BFD on an OSPFv2 interface. The default is disabled.

Step 6 

exit

Example:

switch(config-if)# exit

Exits interface configuration mode and returns to EXEC mode.

Verifying BFD Interoperability in a Cisco Nexus 7000 Series Device

The following example shows how to verify BFD interoperability in a Cisco Nexus 7000 Series device.

switch# show bfd neighbors details
OurAddr NeighAddr LD/RD RH/RS Holdown(mult) State Int
Vrf
10.1.1.1 10.1.1.2 1140850707/2147418093 Up 6393(4) Up Vlan2121
default
Session state is Up and using echo function with 50 ms interval
Local Diag: 0, Demand mode: 0, Poll bit: 0, Authentication: None
MinTxInt: 50000 us, MinRxInt: 2000000 us, Multiplier: 3
Received MinRxInt: 2000000 us, Received Multiplier: 4
Holdown (hits): 8000 ms (0), Hello (hits): 2000 ms (108)
Rx Count: 92, Rx Interval (ms) min/max/avg: 347/1996/1776 last: 1606 ms ago
Tx Count: 108, Tx Interval (ms) min/max/avg: 1515/1515/1515 last: 1233 ms ago
Registered protocols: ospf
Uptime: 0 days 0 hrs 2 mins 44 secs
Last packet: Version: 1 - Diagnostic: 0
State bit: Up - Demand bit: 0
Poll bit: 0 - Final bit: 0
Multiplier: 4 - Length: 24
My Discr.: 2147418093 - Your Discr.: 1140850707
Min tx interval: 2000000 - Min rx interval: 2000000
Min Echo interval: 1000 - Authentication bit: 0
Hosting LC: 10, Down reason: None, Reason not-hosted: None
 
   
switch# show bfd neighbors details
OurAddr NeighAddr LD/RD RH/RS Holdown(mult) State Int
Vrf
10.0.2.1 10.0.2.2 1140850695/131083 Up 270(3) Up Po14.121
default
Session state is Up and not using echo function
Local Diag: 0, Demand mode: 0, Poll bit: 0, Authentication: None
MinTxInt: 50000 us, MinRxInt: 50000 us, Multiplier: 3
Received MinRxInt: 100000 us, Received Multiplier: 3
Holdown (hits): 300 ms (0), Hello (hits): 100 ms (3136283)
Rx Count: 2669290, Rx Interval (ms) min/max/avg: 12/1999/93 last: 29 ms ago
Tx Count: 3136283, Tx Interval (ms) min/max/avg: 77/77/77 last: 76 ms ago
Registered protocols: ospf
Uptime: 2 days 21 hrs 41 mins 45 secs
Last packet: Version: 1 - Diagnostic: 0
State bit: Up - Demand bit: 0
Poll bit: 0 - Final bit: 0
Multiplier: 3 - Length: 24
My Discr.: 131083 - Your Discr.: 1140850695
Min tx interval: 100000 - Min rx interval: 100000
Min Echo interval: 0 - Authentication bit: 0
Hosting LC: 8, Down reason: None, Reason not-hosted: None

Verifying the BFD Configuration

To display BFD configuration information, perform one of the following tasks:

Command
Purpose

show running-config bfd

Displays the running BFD configuration.

show startup-config bfd

Displays the BFD configuration that will be applied on the next system startup.


For detailed information about the fields in the output from these commands, see the Cisco Nexus 7000 Series NX-OS Interfaces Command Reference.

Monitoring BFD

Use the following commands to display BFD:

Command
Purpose

show bfd neighbors [application name] [details]

Displays information about BFD for a supported application, such as BGP or OSPFv2.

show bfd neighbors [interface int-if] [details]

Displays information about BGP sessions on an interface.

show bfd neighbors [dest-ip ip-address] [src-ip ip-address][details]

Displays information about the specified BGP session on an interface.

show bfd neighbors [vrf vrf-name] [details]

Displays information about BFD for a VRF.


For detailed information about the fields in the output from these commands, see the Cisco Nexus 7000 Series NX-OS Interfaces Command Reference.

Configuration Examples for BFD

This example shows how to configure BFD for OSPFv2 on Ethernet 2/1, using the default BFD session parameters:

feature bfd
feature ospf
router ospf Test1
interface ethernet 2/1
  ip ospf bfd
  no shutdown
 
   
 
   

This example shows how to configure BFD for all EIGRP interfaces, using the default BFD session parameters:

feature bfd
feature eigrp
bfd interval 100 min_rx 100 multiplier 4
router eigrp Test2
 bfd

Additional References

For additional information related to implementing BFD, see the following sections:

Related Documents

RFCs

Feature History for BFD

Related Documents

Related Topic
Document Title

BFD commands

See the Cisco Nexus 7000 Series NX-OS Unicast Routing Configuration Guide for more information.


RFCs

RFC
Title

RFC 5880

Bidirectional Forwarding Detection (BFD)

RFC 5881

BFD for IPv4 and IPv6 (Single Hop)


Feature History for BFD

Table 5-2 lists the release history for this feature.

Table 5-2 Feature History for BFD 

Feature Name
Releases
Feature Information

BFD on IPv6 StaticRoutes

6.2(2a)

Added support for configuring BFD on all IPv6 static routes on an interface.

BFD Interoperability

6.2(2)

Added support for configuring BFD interoperability with Cisco NX-OS and Cisco IOS software.

BFD on IPv6

6.2(2)

Added support for BFD on IPv6.

BFD on OSPFv3

6.2(2)

Added support for BFD on OPSPv3.

BFD on IS-ISv6

6.2(2)

Added support for BFD on IS-ISv6.

BFD on M2 and F2 modules

6.1(1)

Added a note on M2 and F2 module support

BFD Authentication

5.2(1)

Keyed SHA-1 authentication is supported on BFD packets.

BFD for VRRP

5.2(1)

Added support for BFD in VRRP.

BFD

5.0(2)

This feature was introduced.