<div dir="ltr">Hi,<div><br></div><div>I have multihop BGP peering with BFD setup on it. One of the peers is a switch that runs Linux. I've run into situation where after link flap on interface that switch connects to BFD protocol after successfully detecting that flap BFD session cannot reestablich because switch side stops sending BFD packets. I'm suspecting that this is due to switch behavior that removes IP address of link when it goes down (BGP and BFD are using interface ip address to connect). Bird is trying to bind to IP address that is no longer available and that causes the issue.</div><div><br></div><div>Logs below show following events</div><div>1. Correct BFD packet exchange</div><div>2. Link flaps at 14:07:38</div><div>3. Link is back up, starts receiving BFD packets from peer and state changes from Down to Init at 14:07:45. Note that no BFD packets are being generated, where they should be.</div><div>4. Removing 'bfd;' line and reconfiguring at 14:08:31</div><div>5. Adding 'bfd; line and reconfiguring at 14:08:47 which successfully restart BFD.</div><div><br></div><div><div>2018-08-24 14:07:37 <TRACE> bfd1: CTL received from 172.30.2.1 [Up A]</div><div>2018-08-24 14:07:37 <TRACE> bfd1: Sending CTL to 172.30.2.1 [Up A]</div><div>2018-08-24 14:07:38 <TRACE> bfd1: Sending CTL to 172.30.2.1 [Up A]</div><div>2018-08-24 14:07:38 <TRACE> bfd1: CTL received from 172.30.2.1 [Up A]</div><div>2018-08-24 14:07:38 <TRACE> bfd1: Sending CTL to 172.30.2.1 [Up A]</div><div>2018-08-24 14:07:38 <TRACE> bfd1: CTL received from 172.30.2.1 [Up A]</div><div>2018-08-24 14:07:38 <TRACE> bfd1: Sending CTL to 172.30.2.1 [Up A]</div><div>2018-08-24 14:07:38 <TRACE> bfd1: Sending CTL to 172.30.2.1 [Up A]</div><div>2018-08-24 14:07:38 <ERR> bfd1: Socket error: Invalid argument</div><div>2018-08-24 14:07:38 <TRACE> bfd1: Sending CTL to 172.30.2.1 [Up A]</div><div>2018-08-24 14:07:38 <ERR> bfd1: Socket error: Invalid argument</div><div>2018-08-24 14:07:38 <TRACE> bfd1: Sending CTL to 172.30.2.1 [Up A]</div><div>2018-08-24 14:07:38 <ERR> bfd1: Socket error: Invalid argument</div><div>2018-08-24 14:07:38 <TRACE> bfd1: Sending CTL to 172.30.2.1 [Up A]</div><div>2018-08-24 14:07:38 <ERR> bfd1: Socket error: Invalid argument</div><div>2018-08-24 14:07:38 <TRACE> bfd1: Sending CTL to 172.30.2.1 [Up A]</div><div>2018-08-24 14:07:38 <ERR> bfd1: Socket error: Invalid argument</div><div>2018-08-24 14:07:38 <TRACE> bfd1: Session to 172.30.2.1 expired</div><div>2018-08-24 14:07:38 <TRACE> bfd1: Session to 172.30.2.1 changed state from Up to Down</div><div>2018-08-24 14:07:38 <TRACE> bgp_gw_rs_1: BFD session down</div><div>2018-08-24 14:07:38 <TRACE> bfd1: Session to 172.30.2.1 removed</div><div>2018-08-24 14:07:38 <ERR> bfd1: Socket error: bind: Cannot assign requested address</div><div>2018-08-24 14:07:38 <TRACE> bfd1: Session to 172.30.2.1 added</div><div>2018-08-24 14:07:44 <TRACE> bfd1: CTL received from 172.30.2.1 [Down A]</div><div>2018-08-24 14:07:44 <TRACE> bfd1: Session to 172.30.2.1 changed state from Down to Init</div><div>2018-08-24 14:07:45 <TRACE> bfd1: CTL received from 172.30.2.1 [Down A]</div><div>2018-08-24 14:07:46 <TRACE> bfd1: CTL received from 172.30.2.1 [Down A]</div><div>2018-08-24 14:07:46 <TRACE> bfd1: CTL received from 172.30.2.1 [Down A]</div><div>2018-08-24 14:07:47 <TRACE> bfd1: CTL received from 172.30.2.1 [Down A]</div></div><div>...</div><div><div>2018-08-24 14:08:30 <TRACE> bfd1: CTL received from 172.30.2.1 [Down A]</div><div>2018-08-24 14:08:31 <TRACE> bfd1: CTL received from 172.30.2.1 [Down A]</div><div>2018-08-24 14:08:31 <TRACE> bfd1: Session to 172.30.2.1 removed</div><div>2018-08-24 14:08:31 <TRACE> bfd1: Reconfigured</div><div>2018-08-24 14:08:47 <TRACE> bfd1: Session to 172.30.2.1 added</div><div>2018-08-24 14:08:47 <TRACE> bfd1: Session to 172.30.2.1 reconfigured</div><div>2018-08-24 14:08:47 <TRACE> bfd1: Reconfigured</div><div>2018-08-24 14:08:47 <TRACE> bfd1: CTL received from 172.30.2.1 [Down A]</div><div>2018-08-24 14:08:47 <TRACE> bfd1: Session to 172.30.2.1 changed state from Down to Init</div><div>2018-08-24 14:08:47 <TRACE> bfd1: Sending CTL to 172.30.2.1 [Init A]</div><div>2018-08-24 14:08:47 <TRACE> bfd1: CTL received from 172.30.2.1 [Up PA]</div><div>2018-08-24 14:08:47 <TRACE> bfd1: Session to 172.30.2.1 changed state from Init to Up</div><div>2018-08-24 14:08:47 <TRACE> bfd1: Sending CTL to 172.30.2.1 [Up FA]</div><div>2018-08-24 14:08:47 <TRACE> bfd1: Sending CTL to 172.30.2.1 [Up PA]</div><div>2018-08-24 14:08:47 <TRACE> bfd1: CTL received from 172.30.2.1 [Up FA]</div><div>2018-08-24 14:08:47 <TRACE> bfd1: CTL received from 172.30.2.1 [Up A]</div><div>2018-08-24 14:08:47 <TRACE> bfd1: Sending CTL to 172.30.2.1 [Up A]</div><div>2018-08-24 14:08:47 <TRACE> bfd1: CTL received from 172.30.2.1 [Up A]</div><div>2018-08-24 14:08:47 <TRACE> bfd1: Sending CTL to 172.30.2.1 [Up A]</div></div><div><br></div><div><br></div><div>Kuba Nowacki</div></div>