Micro BFD configured with AE interface's IP address as neighbor and local-address, after AE interface flap, BFD session stays down.
The Micro BFD feature before 16.1 requires the user to configure a loopback interface with a IP address which is used as local-address for exchange of the BFD packets with the peer.
MX1(ae 101)------(ae 101)MX2 Two MX's Configuration
user@mx1> show configuration interfaces ae101 aggregated-ether-options { bfd-liveness-detection { neighbor 10.0.0.2; <-- Here is the peer side ae interface address local-address 10.0.0.1; <-- Here is the local ae interface address } } user@mx2> show configuration interfaces ae101 aggregated-ether-options { bfd-liveness-detection { neighbor 10.0.0.1; <-- Here is peer side ae interface address local-address 10.0.0.2; <-- Here is local ae interface address } }
user@mx1> show interfaces terse | match ae101 ge-1/3/0.0 up up aenet --> ae101.0 ge-1/3/1.0 up up aenet --> ae101.0 ae101 up up ae101.0 up up inet user@mx1> show bfd session Detect Transmit Address State Interface Time Interval Multiplier 10.0.0.2 Up ge-1/3/1 0.500 0.100 5 10.0.0.2 Up ge-1/3/0 0.500 0.100 5 user@mx2> show interfaces terse | match ae101 ge-2/3/8.0 up up aenet --> ae101.0 ge-2/3/9.0 up up aenet --> ae101.0 ae101 up up ae101.0 up up inet 10.0.0.2/31 user@mx2> show bfd session Detect Transmit Address State Interface Time Interval Multiplier 10.0.0.1 Up ge-2/3/9 0.500 0.100 5 10.0.0.1 Up ge-2/3/8 0.500 0.100 5
user@mx1> show interfaces terse | match ae101 ge-1/3/0.0 up up aenet --> ae101.0 ge-1/3/1.0 up up aenet --> ae101.0 ae101 up down ae101.0 up down inet 10.0.0.1/31 user@mx1> show bfd session Detect Transmit Address State Interface Time Interval Multiplier 10.0.0.2 Down ge-1/3/1 0.500 0.100 5 10.0.0.2 Down ge-1/3/0 0.500 0.100 5 user@mx2> show interfaces terse | match ae101 ge-2/3/8.0 up up aenet --> ae101.0 ge-2/3/9.0 up up aenet --> ae101.0 ae101 up down ae101.0 up down inet 10.0.0.2/31 user@mx2> show bfd session Detect Transmit Address State Interface Time Interval Multiplier 10.0.0.1 Down ge-2/3/9 0.500 0.100 5 10.0.0.1 Down ge-2/3/8 0.500 0.100 5
Before 16.1 version, the loopback interface is created and its IP is used as a local address for BFD packet exchange. Loopback interfaces are considered to be logically in up state as long as they are administratively up. The IP address configured on the loopback interfaces is always up and present in the forwarding table. In the ingress direction, the destination address of BFD packets arriving on the AE interface matches the loopback address programmed in the forwarding table and the packets are punted to RE for further processing.
This is not the case with AE Interface’s IP address. They are in reject state untill the interface comes up. The state of the interface is dependent on the state of the BFD. The interface will come up only if BFD control packets are exchanged and the BFD comes up. So a mechanism is needed to somehow validate destination address, protocol type and UDP port numbers of the initial set of BFD packets so that they can be punted to RE so that the BFD and the interface can come up.
For this case, the BFD session configured under the condition of AE interface is up. So the BFD session can be up. But if the AE interface becomes down, the BFD packet will be discarded (before 16.1) on PFE and the BFD session can't be up anymore.
The feature, 'BFD over LAG with Interface's IP as local BFD IP address' is supported after Junos release 16.1. Make sure both sides of the Junos version is higher than 16.1 if you want to use AE interface's addresses for neighbor and local-address.
If one of the versions is lower than 16.1, you can only use loopback interface as neighbor and local-address. Or upgrade both devices to 16.1 or higher.