Hi All, I have a working OSPFv2 session in Full state, between bird and flock. On restarting the ospf session from bird, while it is already in full state, following log messages were seen, which claims that bird had received a LSA with invalid checksum from flock. After a brief troubleshooting session with the flock developers, it was found that bird complains about an LSA that it itself had originated and sent to flock earlier. Flock doesn't modify anything in the LSA and sends it back in the LSUpd when it receives a LSReq Here 1.1.1.1 is flock and 100.100.100.100 is bird 2023-03-02 10:07:30.421 <TRACE> ospf1: HELLO packet received from nbr 1.1.1.1 on bird-0-0-L 2023-03-02 10:07:35.318 <TRACE> ospf1: LSREQ packet sent to nbr 1.1.1.1 on bird-0-0-L 2023-03-02 10:07:35.318 <TRACE> ospf1: length 36 2023-03-02 10:07:35.318 <TRACE> ospf1: router 100.100.100.100 2023-03-02 10:07:35.318 <TRACE> ospf1: LSR Type: 0001, Id: 100.100.100.100, Rt: 100.100.100.100 2023-03-02 10:07:35.322 <TRACE> ospf1: LSUPD packet received from nbr 1.1.1.1 on bird-0-0-L 2023-03-02 10:07:35.322 <TRACE> ospf1: length 64 2023-03-02 10:07:35.322 <TRACE> ospf1: router 1.1.1.1 2023-03-02 10:07:35.322 <TRACE> ospf1: LSA Type: 0001, Id: 100.100.100.100, Rt: 100.100.100.100, Seq: 80000003, Age: 2101, Sum: 1984 2023-03-02 10:07:35.322 <RMT> ospf1: Bad LSA (Type: 2001, Id: 100.100.100.100, Rt: 100.100.100.100) in LSUPD 2023-03-02 10:07:35.322 <RMT> ospf1: received from nbr 1.1.1.1 on bird-0-0-L - supp...@flocknetworks.com I have attached the full ospf logs from bird and the ospf packet captures using tshark along with this. Can someone have a look and check if it is possible for bird to generate LSA with wrong checksum? Bird config: ============ log "/var/log/bird.log" all; router id 100.100.100.100; protocol device { scan time 10; } ipv4 table table1; protocol bfd bfd_bird { interface "*" { interval 0 us; multiplier 3; }; } protocol ospf v2 ospf1 { area 0.0.0.0 { networks { 10.100.1.0/24; }; interface "bird-0-0-L" { hello 10; dead 40; bfd on; }; }; ipv4 { table table1; export all; import all; }; } protocol static static1 { ipv4 { table table1; export all; import all; }; route 200.1.1.1/32 via 10.100.1.11; route 200.1.1.2/32 via 10.100.1.11; route 200.1.1.3/32 via 10.100.1.11; route 200.1.1.4/32 via 10.100.1.11; route 200.1.1.5/32 via 10.100.1.11; route 200.1.1.6/32 via 10.100.1.11; route 200.1.1.7/32 via 10.100.1.11; route 200.1.1.8/32 via 10.100.1.11; route 200.1.1.9/32 via 10.100.1.11; route 200.1.1.10/32 via 10.100.1.11; } Regards Prem |
ospf.log
Description: Binary data
ospf.pcap
Description: Binary data