Cisco Nexus 6000 Series NX-OS Interfaces Configuration Guide, Release 7.x
Configuring Bidirectional Forwarding Detection
Downloads: This chapterpdf (PDF - 1.5MB) The complete bookPDF (PDF - 3.7MB) | The complete bookePub (ePub - 616.0KB) | Feedback

Contents

Configuring Bidirectional Forwarding Detection

This chapter contains the following sections:

Information About BFD

The Bidirectional Forwarding Detection (BFD) provides 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 at variable rates for different protocol hello mechanisms. BFD makes network profiling and planning easier and reconvergence time consistent and predictable.

BFD makes all routing and control plane applications less CPU intensive by offloading Layer 3 hello message adjacency detection to a single process. The BFD process runs uniformly for all applications and detects failures at subsecond intervals.

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). After 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.

The following figure shows how a BFD session is established. The figure shows a simple network with two routers running Open Shortest Path First (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 1. Establishing a BFD Neighbor Relationship



Detection of Failures

After 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.

The following figure 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 2. Tearing Down an OSPF Neighbor Relationship



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 asynchronous 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 asymmetric 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.

You can configure SHA-1 authentication of BFD packets.

Virtualization Support

BFD supports virtual routing and forwarding (VRF) instances.

Licensing Requirements for BFD

The following table shows the licensing requirements for this feature:

Product

License Requirement

Cisco NX-OS

BFD requires a LAN Base Services license. For a complete explanation of the Cisco NX-OS licensing scheme and how to obtain and apply licenses, see the Cisco NX-OS Licensing Guide.

Prerequisites

BFD has the following prerequisites:

  • You must enable the BFD feature, see Enabling the BFD Feature.
  • For any client protocols that you want to enable BFD on, enable BFD in that client protocol, see Configuring BFD Support for Routing Protocols.
  • Disable ICMPv4 redirect messages alone on Cisco Nexus 6000 Series platforms.
  • Disable the IP packet verification check for identical IP source and destination addresses in the default VRF.
  • See other detailed prerequisites that are listed with the configuration tasks.

Guidelines and Limitations

BFD has the following configuration guidelines and limitations for the Cisco Nexus 6000 Series switch:

  • BFD supports BFD version 1.
  • BFD supports IPv4.
  • BFD supports single-hop BFD.
  • BFD supports the Border Gateway Protocol (BGP).
  • BFD for BGP supports single-hop External Border Gateway Protocol (EBGP) and internal Border Gateway Protocol (iBGP) peers.
  • BFD supports the Enhanced Interior Gateway Routing Protocol (EIGRP).
  • BFD supports the Open Shortest Path First (OSPF) routing protocol.
  • BFD supports keyed SHA-1 authentication.
  • BFD supports the following Layer 3 interfaces: physical interfaces, port channels, subinterfaces, and VLAN interfaces.
  • BFD depends on 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.
  • Port-channel configuration limitations are as follows:
    • For Layer 3 port channels used by BFD, you must enable Link Aggregation Control Protocol (LACP) on the port channel.
    • For Layer 2 port channels used by SVI sessions, you must enable LACP on the port channel.
  • BFD is supported on SVI interfaces that are formed over virtual port channels (vPCs), vPC peer-links and FabricPath links.
  • SVI limitations are as follows:
    • An ASIC reset causes traffic disruption for other ports and could possibly cause SVI sessions on other ports to flap.
    • When you change the topology (for example, when you add or delete a link into a VLAN or delete a member from a Layer 2 port channel), the SVI session could be affected. The SVI session might 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 topology change is complete.


  • 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.


BFD Default Settings

The following table lists the default settings for BFD parameters.

Parameter Default

BFD feature

Disabled

Required minimum receive interval

250 milliseconds

Desired minimum transmit interval

250 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

BFD 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 global configuration. On supported interfaces, the subinterface-level configuration overrides the interface or port-channel configuration unless you enable subinterface optimization or per-link configuration on the port-channel interface. See Optimizing BFD on Subinterfaces 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

Procedure
    Step 1   Enable the BFD feature.
    Step 2   Configure global BFD parameters or configure BFD on an interface.
    Step 3   Configure BFD support for routing protocols.

    Enabling the BFD Feature

    Before You Begin

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

    Ensure that you are in the correct VRF when you are about to change the BFD configuration at the protocol global level (for example, for OSPF or BGP).

    Procedure
        Command or Action Purpose
      Step 1 switch# configure terminal 

      Enters global configuration mode.

       
      Step 2 switch(config)# feature bfd  

      Enables BFD.

       
      Step 3 switch(config)# show feature | include bfd   (Optional)

      Displays enabled and disabled features.

       
      Step 4 switch(config)# copy running-config startup-config  (Optional)

      Saves the change persistently through reboots and restarts by copying the running configuration to the startup configuration.

       

      This example shows how to enable BFD:

      switch# configure terminal
      switch(config)# feature bfd
      switch(config)# show feature | include bfd
      switch(config)# copy running-config startup-config

      Configuring Global BFD Parameters

      Before You Begin

      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 Configuring BFD on an Interface to override these global session parameters on an interface.

      Ensure that you are in the correct VRF.

      Enable the BFD feature. See Enabling the BFD Feature.

      Procedure
          Command or Action Purpose
        Step 1 switch# configure terminal 

        Enters global configuration mode.

         
        Step 2 switch(config)# bfd [fabricpath] interval mintx min_rx msec multiplier value  

        Configures the BFD session parameters for all BFD sessions on the device. You can override these values by configuring the BFD session parameters on an interface. Use the optional fabricpath keyword to configure the global parameters for fabricpath BFD sessions. The mintx and min_rx msec range is from 250 to 999 milliseconds, and the default is 250. The multiplier value range is from 3 to 50. The multiplier default is 3.

         
        Step 3 switch(config)# bfd [fabricpath] slow-timer [milliseconds]  

        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 switch(config)# bfd echo-interface loopback interface number  

        Configures the interface used for 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 switch(config)# show running-config bfd   (Optional)

        Displays the BFD running configuration.

         
        Step 6 switch(config)# copy running-config startup-config  (Optional)

        Saves the change persistently through reboots and restarts by copying the running configuration to the startup configuration.

         

        This example shows how to configure global BFD parameters:

        switch# configure terminal
        switch(config)# bfd interval 250 min_rx 250 multiplier 3
        switch(config)# bfd slow-timer 2000
        switch(config)# bfd echo-interface loopback 1 3
        switch(config-if)# show running-config bfd
        switch(config-if)# copy running-config startup-config
        

        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.


        Note


        You can use bfd [fabricpath] commands on an interface in fabricpath mode. The interface should be configured with switchport mode fabricpath to enable fabricpath mode.
        Before You Begin

        Ensure that you are in the correct VRF.

        Enable the BFD feature. See Enabling the BFD Feature.

        Procedure
            Command or Action Purpose
          Step 1 switch# configure terminal 

          Enters global configuration mode.

           
          Step 2 switch(config)# interface int-if  

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

           
          Step 3 switch(config-if)# bfd [fabricpath]   Enables fabricpath BFD at the interface level.  
          Step 4 switch(config-if)# bfd [fabricpath] interval mintx min_rx msec multiplier value  

          Configures the BFD session parameters for all BFD sessions on the interface. These values override the global BFD session parameters. Use the optional fabricpath keyword to configure the global parameters for fabricpath BFD sessions. The mintx and msec range is from 50 to 999 milliseconds and the default is 250. The multiplier range is from 3 to 50. The multiplier default is 3.

           
          Step 5 switch(config-if)# bfd [fabricpath] authentication keyed-SHA1 key-id id {hex-key hex-key | key ascii-key }   (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, which allows the use of multiple active keys. To disable SHA-1 authentication on the interface, use the no form of this command.

           
          Step 6 switch(config-if)# show running-config bfd   (Optional)

          Displays the BFD running configuration.

           
          Step 7 switch(config-if)# copy running-config startup-config  (Optional)

          Saves the change persistently through reboots and restarts by copying the running configuration to the startup configuration.

           

          This example shows how to configure BFD on an interface:

          switch# configure terminal
          switch(config)# interface ethernet 2/1
          switch(config-if)# bfd interval 250 min_rx 250 multiplier 3
          switch(config-if)# bfd authentication keyed-SHA1 key-id 1 key cisco123
          switch(config-if)# show running-config bfd
          switch(config-if)# copy running-config startup-config

          Configuring BFD on a Port Channel

          You can configure the BFD session parameters for all BFD sessions on a port channel. If you use per-link mode 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 Optimizing BFD on Subinterfaces for more information.

          Before You Begin

          Ensure that you are in the correct VRF.

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

          Enable the BFD feature. See “Enabling the BFD Feature.”

          Procedure
              Command or Action Purpose
            Step 1 switch# configure terminal 

            Enters global configuration mode.

             
            Step 2 switch(config)# interface port-channel number  

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

             
            Step 3 switch(config-if)# bfd per-link  

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

             
            Step 4 switch(config-if)# bfd fabricpath per-link  

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

             
            Step 5 switch(config-if)# bfd [fabricpath] interval mintx min_rx msec multiplier value   (Optional)

            Configures the BFD session parameters for all BFD sessions on the port channel. These values override the global BFD session parameters. Use the optional fabricpath keyword to configure the global parameters for fabricpath BFD sessions. The mintx and min_rx 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 switch(config-if)# bfd [fabricpath] authentication keyed-SHA1 key-id id {hex-key hex-key | key ascii-key }   (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, which allows the use of multiple active keys. To disable SHA-1 authentication on the interface, use the no form of this command.

             
            Step 7 switch(config-if)# show running-config bfd   (Optional)

            Displays the BFD running configuration.

             
            Step 8 switch(config-if)# copy running-config startup-config  (Optional)

            Saves the change persistently through reboots and restarts by copying the running configuration to the startup configuration.

             

            This example shows how to configure BFD on a port channel:

            switch# configure terminal
            switch(config)# interface port-channel 2
            switch(config-if)# bfd interval 250 min_rx 250 multiplier 3
            switch(config-if)# bfd authentication keyed-SHA1 key-id 1 key cisco123
            switch(config-if)# show running-config bfd
            switch(config-if)# copy running-config startup-config

            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.

            You can configure a fabricpath (L2) BFD session on any port belonging to any VLAN provided the default VLAN (VLAN 1) is configured in fabricpath mode. It is a requirement that the default VLAN 1 is in fabricpath mode for fabricpath BFD sessions to come up.


            Note


            Echo mode is not supported on fabricpath interfaces.
            Before You Begin

            Ensure that you are in the correct VRF.

            Enable the BFD feature. See Enabling the BFD Feature.

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

            Ensure that ICMP redirect messages are disabled on BFD-enabled interfaces. Use the no ip redirects command or the no ipv6 redirects command on the interface.

            Ensure that the IP packet verification check for identical IP source and destination addresses is disabled.

            Procedure
                Command or Action Purpose
              Step 1 switch# configure terminal 

              Enters global configuration mode.

               
              Step 2 switch(config)# bfd [fabricpath] slow-timer[milliseconds]  

              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 switch(config)# interface int-if  

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

               
              Step 4 switch(config-if)# bfd echo  

              Enables the echo function. The default is enabled.

               
              Step 5 switch(config-if)# show running-config bfd   (Optional)

              Displays the BFD running configuration.

               
              Step 6 switch(config-if)# copy running-config startup-config  (Optional)

              Saves the change persistently through reboots and restarts by copying the running configuration to the startup configuration.

               

              This example shows how to configure the BFD Echo Function.

              switch# configure terminal
              switch(config)# bfd slow-timer 2000
              switch(config)# interface ethernet 2/1
              switch(config-if)# bfd echo
              switch(config-if)# show running-config bgp
              switch(config-if)# copy running-config startup-config

              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 VRF.

              Enable the BFD feature. See Enabling the BFD Feature.

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

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

              Procedure
                  Command or Action Purpose
                Step 1 switch# configure terminal 

                Enters global configuration mode.

                 
                Step 2 switch(config)# interface int-if  

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

                 
                Step 3 switch(config-if)# bfd optimize subinterface  

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

                 
                Step 4 switch(config-if)# show running-config bfd   (Optional)

                Displays the BFD running configuration.

                 
                Step 5 switch(config-if)# copy running-config startup-config  (Optional)

                Saves the change persistently through reboots and restarts by copying the running configuration to the startup configuration.

                 
                This example shows how to optimize BFD on an interface:
                switch# configure terminal
                switch(config)# interface ethernet 2/1
                switch(config-if)# bfd optimize subinterface
                switch(config-if)# show running-config bfd
                switch(config-if)# copy running-config startup-config

                Configuring BFD Support for Routing Protocols

                The Cisco Nexus 6000 Series switches provide BFD support for these routing protocols:

                • Border Gateway Protocol (BGP)
                • Enhanced Interior Gateway Routing Protocol (EIGRP)
                • Open Shortest Path First Version 2 (OSPFv2)
                • Hot Standby Router Protocol (HSRP)
                • Virtual Router Redundancy Protocol (VRRP)
                • Static routes
                • Protocol-Independent Multicast (PIM)
                • FabricPath on Intermediate System to Intermediate System (IS-IS)

                Configuring BFD on BGP

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

                Before You Begin Ensure that you are in the correct VRF.

                Enable the BFD feature. See Enabling the BFD Feature.

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

                Enable the BGP feature.

                See the Cisco Nexus 6000 Series NX-OS Unicast Routing Configuration Guide, Release 6.x, for more information.

                Procedure
                    Command or Action Purpose
                  Step 1 switch# configure terminal 

                  Enters global configuration mode.

                   
                  Step 2 switch(config)# router bgp as-number   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 switch(config-router)# neighbor {ip-address} remote-as as-number   Configures the IPv4 address and AS number for a remote BGP peer. The ip-address format is x.x.x.x.  
                  Step 4 switch(config-router-neighbor)# bfd  

                  Enables BFD for this BGP peer.

                   
                  Step 5 switch(config-router-neighbor)# update-source interface-type number  

                  Brings up BFD for this BGP peer.

                   
                  Step 6 switch(config-router-neighbor)# show running-config bgp   (Optional)

                  Displays the BGP running configuration.

                   
                  Step 7 switch(config-router-neighbor)# copy running-config startup-config   (Optional)

                  Saves the change persistently through reboots and restarts by copying the running configuration to the startup configuration.

                   

                  This example shows how to configure BFD on BGP:

                  switch# configure terminal
                  switch(config)# router bgp 64496
                  switch(config-router)# neighbor 209.165.201.1 remote-as 64497
                  switch(config-router-neighbor)# bfd
                  switch(config-router-neighbor)# update-source ethernet 2/1
                  switch(config-router-neighbor)# show running-config bgp
                  switch(config-router-neighbor)# copy running-config startup-config

                  Configuring BFD on EIGRP

                  Before You Begin Ensure that you are in the correct VRF.

                  Enable the BFD feature. See Enabling the BFD Feature.

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

                  Enable the EIGRP feature.

                  See the Cisco Nexus 6000 Series NX-OS Unicast Routing Configuration Guide, Release 6.x, for more information.

                  Procedure
                      Command or Action Purpose
                    Step 1 switch# configure terminal 

                    Enters global configuration mode.

                     
                    Step 2 switch(config)# router eigrp instance-tag  

                    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 remains in the shutdown state.

                     
                    Step 3 switch(config-router)# bfd   (Optional)

                    Enables BFD for this EIGRP router.

                     
                    Step 4 switch(config-router)# interface int-if  

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

                     
                    Step 5 switch(config-if)# ip eigrp instance-tag 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 switch(config-if)# show ip eigrp [vrf vrf-name] [interface if]   (Optional)

                    Displays the EIGRP running configuration.

                     
                    Step 7 switch(config-if)# copy running-config startup-config  (Optional)

                    Saves the change persistently through reboots and restarts by copying the running configuration to the startup configuration.

                     

                    This example shows how to configure BFD on EIGRP:

                    switch# configure terminal
                    switch(config)# router eigrp Test1
                    switch(config-router)# bfd
                    switch(config-router)# interface ethernet 2/1
                    switch(config-if)# ip eigrp Test1 bfd
                    switch(config-if)# show ip eigrp
                    switch(config-if)# copy running-config startup-config

                    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 VRF.

                    Enable the BFD feature. See Enabling the BFD Feature.

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

                    Enable the OSPF feature.

                    See the Cisco Nexus 6000 Series NX-OS Unicast Routing Configuration Guide, Release 6.x, for more information.

                    Procedure
                        Command or Action Purpose
                      Step 1 switch# configure terminal 

                      Enters global configuration mode.

                       
                      Step 2 switch(config)# router ospf instance-tag  

                      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 switch(config-router)# bfd   (Optional)

                      Enables BFD for this OSPFv2 instance. Each OSPFv2 interface must also be enabled or disabled.

                       
                      Step 4 switch(config-router)# interface int-if  

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

                       
                      Step 5 switch(config-if)# ip ospf bfd   (Optional)

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

                       
                      Step 6 switch(config-if)# show ip ospf [vrf vrf-name] [interface if]   (Optional)

                      Displays the BGP running configuration.

                       
                      Step 7 switch(config-if)# copy running-config startup-config  (Optional)

                      Saves the change persistently through reboots and restarts by copying the running configuration to the startup configuration.

                       

                      This example shows how to configure BFD on OSPF:

                      switch# configure terminal
                      switch(config)# router ospf 201
                      switch(config-router)# bfd
                      switch(config-router)# interface ethernet 2/1
                      switch(config-if)# ip ospf bfd
                      switch(config-if)# show ip ospf
                      switch(config-if)# copy running-config startup-config

                      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 timer expiry and takes over as the active HSRP router. The show hsrp detail command shows this event as BFD@Act-down or BFD@Sby-down.

                      Before You Begin Ensure that you are in the correct VRF.

                      Enable the BFD feature. See Enabling the BFD Feature.

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

                      Enable the HSRP feature. See the Cisco Nexus 6000 Series NX-OS Unicast Routing Configuration Guide, Release 6.x, for more information.

                      Procedure
                          Command or Action Purpose
                        Step 1 switch# configure terminal 

                        Enters global configuration mode.

                         
                        Step 2 switch(config)# hsrp bfd all-interfaces   (Optional)

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

                         
                        Step 3 switch(config)# interface int-if  

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

                         
                        Step 4 switch(config-if)# hsrp bfd   (Optional)

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

                         
                        Step 5 switch(config-if)# show running-config hsrp   (Optional)

                        Displays the HSRP running configuration.

                         
                        Step 6 switch(config-if)# copy running-config startup-config  (Optional)

                        Saves the change persistently through reboots and restarts by copying the running configuration to the startup configuration.

                         

                        This example shows how to configure BFD on HSRP:

                        switch# configure terminal
                        switch(config)# hsrp bfd all-interfaces
                        switch(config)# interface ethernet 2/1
                        switch(config-if)# hsrp bfd
                        switch(config-if)# show running-config hsrp
                        switch(config-if)# copy running-config startup-config

                        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 timer expiry and takes over as the active VRRP router.

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

                        Before You Begin Ensure that you are in the correct VRF.

                        Enable the BFD feature. See Enabling the BFD Feature.

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

                        Enable the VRRP feature.

                        See the Cisco Nexus 6000 Series NX-OS Unicast Routing Configuration Guide, Release 6.x, for more information.

                        Procedure
                            Command or Action Purpose
                          Step 1 switch# configure terminal 

                          Enters global configuration mode.

                           
                          Step 2 switch(config)# interface int-if  

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

                           
                          Step 3 switch(config-if)# vrrp group-no  

                          Specifies the VRRP group number.

                           
                          Step 4 switch(config-if-vrrp)# vrrp bfd address  

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

                           
                          Step 5 switch(config-if-vrrp)# show running-config vrrp   (Optional)

                          Displays the VRRP running configuration.

                           
                          Step 6 switch(config-if-vrrp)# copy running-config startup-config   (Optional)

                          Saves the change persistently through reboots and restarts by copying the running configuration to the startup configuration.

                           

                          This example shows how to configure BFD on VRRP:

                          switch# configure terminal
                          switch(config)# interface ethernet 2/1
                          switch(config-if)# vrrp 1
                          switch(config-if-vrrp)# vrrp bfd 10.0.0.10
                          switch(config-if-vrrp)# show running-config vrrp
                          switch(config-if-vrrp)# copy running-config startup-config

                          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 VRF.

                          Enable the BFD feature. See Enabling the BFD Feature.

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

                          Enable the HSRP feature. See the Cisco Nexus 6000 Series NX-OS Unicast Routing Configuration Guide, Release 6.x, for more information.

                          Procedure
                              Command or Action Purpose
                            Step 1 switch# configure terminal 

                            Enters global configuration mode.

                             
                            Step 2 switch(config)# vrf context vrf-name   (Optional)

                            Enters VRF configuration mode.

                             
                            Step 3 switch(config-vrf)# ip route route interface {nh-address | nh-prefix}  

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

                             
                            Step 4 switch(config-vrf)# ip route static bfd interface {nh-address | nh-prefix}  

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

                             
                            Step 5 switch(config-vrf)# show ip route static[vrf vrf-name]   (Optional)

                            Displays the static routes.

                             
                            Step 6 switch(config-vrf)# copy running-config startup-config   (Optional)

                            Saves the configuration persistently through reboots and restarts by copying the running configuration to the startup configuration.

                             

                            This example shows how to configure BFD on static routes:

                            switch# configure terminal
                            switch(config)# vrf context Red
                            switch(config-vrf)# ip route route interface 192.0.2.1 ethernet 2/1 192.0.2.4
                            switch(config-vrf)# ip route static bfd ethernet 2/1 192.0.2.4
                            switch(config-vrf)# show ip route static vrf Red
                            switch(config-vrf)# copy running-config startup-config

                            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 VRF.

                            Enable the BFD feature. See Enabling the BFD Feature.

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

                            Enable the PIM feature. See the Cisco Nexus 6000 Series NX-OS Multicast Routing Configuration Guide, Release 6.x, for more information.

                            Procedure
                                Command or Action Purpose
                              Step 1 switch# configure terminal 

                              Enters global configuration mode.

                               
                              Step 2 switch(config)# ip pim bfd  

                              Enables BFD for PIM.

                               
                              Step 3 switch(config)# interface int-if  

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

                               
                              Step 4 switch(config-if)# ip pim bfd-instance [disable]   (Optional)

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

                               
                              Step 5 switch(config-if)# show running-config pim   (Optional)

                              Displays the PIM running configuration.

                               
                              Step 6 switch(config-if)# copy running-config startup-config   (Optional)

                              Saves the configuration persistently through reboots and restarts by copying the running configuration to the startup configuration.

                               

                              This example shows how to configure BFD on PIM:

                              switch# configure terminal
                              switch(config)# ip pim bfd
                              switch(config)# interface ethernet 2/1
                              switch(config-if)# ip pim bfd-instance
                              switch(config-if)# show running-config pim
                              switch(config-if)# copy running-config startup-config

                              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:

                              Procedure
                                  Command or Action Purpose
                                Step 1 switch(config)# ip eigrp instance-tag bfd disable

                                Example:
                                switch(config)# 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.

                                 
                                Step 2 switch(config-if)# ip ospf bfd disable

                                Example:
                                switch(config-if)# ip ospf bfd disable
                                 

                                Disables BFD on an OSPFv2 interface.

                                 

                                Configuring FabricPath BFD on All IS-IS Interfaces

                                Before You Begin

                                Ensure that you are in the correct VRF.

                                Enable the BFD feature. See Enabling the BFD Feature.

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

                                Enable the BGP feature.

                                See the Cisco Nexus 6000 Series NX-OS Unicast Routing Configuration Guide, Release 7.x, for more information.

                                Procedure
                                    Command or Action Purpose
                                  Step 1 switch# configure terminal 

                                  Enters global configuration mode.

                                   
                                  Step 2 switch(config)# fabricpath domain default   Enters the global FabricPath Layer 2 Intermediate Syste, to Intermediate System (IS-IS) configuration mode.  
                                  Step 3 switch(config-fabricpath-isis)# bfd   Enables FabricPath BFD on all IS-IS interfaces.  

                                  This example show how to configure FabricPath BFD on all IS-IS interfaces:

                                  switch# configure terminal
                                  switch(config)# fabricpath domain default
                                  switch(config-fabricpath-isis)# bfd

                                  Configuring FabricPath BFD on a Specific Interface

                                  Before You Begin

                                  Ensure that you are in the correct VRF.

                                  Enable the BFD feature. See Enabling the BFD Feature.

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

                                  Enable the BGP feature.

                                  See the Cisco Nexus 6000 Series NX-OS Unicast Routing Configuration Guide, Release 7.x, for more information.

                                  Procedure
                                      Command or Action Purpose
                                    Step 1 switch# configure terminal 

                                    Enters global configuration mode.

                                     
                                    Step 2 switch(config)# interface int-if   Enters interface configuration mode. Use the ? keyword to display the supported interfaces.  
                                    Step 3 switch(config-if)# fabricpath isis bfd   Enables the FabricPath BFD on the interface.  

                                    This example shows how to configure FabricPath BFD on a specific interface:

                                    switch# configure terminal
                                    switch(config)# interface 1/1
                                    switch(config-if)# fabricpath isis bfd

                                    Verifying the BFD Configuration

                                    Use the following commands to verify BFD:

                                    Command Purpose

                                    switch# show running-config bfd

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

                                    switch# show startup-config bfd

                                    Displays information about the BFD configuration that will be applied on startup.

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

                                    Monitoring BFD

                                    Use the following commands to monitor BFD:
                                    Command Purpose

                                    switch# show bfd neighbors [application name] [details]

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

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

                                    Displays information about BFD on a specified interface.

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

                                    Displays information about BFD on the specified session on an interface.

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

                                    Displays information about BFD for a VRF.

                                    switch# show bfd neighbors [fabricpath] [dest-ip ip-address] [src-ip ip-address] [details]

                                    Displays information about BFD on the specified session on an interface. Use the optional fabricpath keyword to display information about the specific fabricpath neighbor.

                                    For more details, see the Cisco Nexus 6000 Series NX-OS Switch 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:

                                    switch# configure terminal
                                    switch(config)# feature bfd
                                    switch(config)# feature ospf
                                    switch(config)# router ospf Test1
                                    switch(config-router)# interface ethernet 2/1
                                    switch(config-if)# ip ospf bfd
                                    switch(config-if)# no shutdown
                                    

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

                                    switch# configure terminal
                                    switch(config)# feature bfd
                                    switch(config)# feature eigrp
                                    switch(config)# bfd interval 250 min_rx 250 multiplier 4
                                    switch(config)# router eigrp Test2
                                    switch(config-router)# bfd

                                    Related Documents

                                    Related Topic Document Title

                                    BFD commands

                                    See the Cisco Nexus 6000 Series NX-OS Unicast Routing Command Reference, Release 6.x, for more information.

                                    Related Standards

                                    These industry standards cover Bidirectional Forwarding Detection.
                                    RFC Title
                                    RFC 5880 Bidirectional Forwarding Detection (BFD)
                                    RFC 5881 BFD for IPv4 and IPv6 (Single Hop)