ABR sets E-bit (and B-bit) in router LSA
I have a setup as in the attached drawing. I can see that the bird ABR node (R2) sets the E-bit and the B-bit in the router LSA. The B-bit seems correct as it is the ABR, but it is not an ASBR. Below is a tcpdump captured on R1 Frame 11347: 124 bytes on wire (992 bits), 124 bytes captured (992 bits) Linux cooked capture v2 PPP-over-Ethernet Session Point-to-Point Protocol Internet Protocol Version 4, Src: 10.210.138.69, Dst: 224.0.0.5 Open Shortest Path First OSPF Header Version: 2 Message Type: LS Update (4) Packet Length: 76 Source OSPF Router: 10.210.138.69 Area ID: 0.0.0.0 (Backbone) Checksum: 0x9d61 [correct] Auth Type: Null (0) Auth Data (none): 0000000000000000 LS Update Packet Number of LSAs: 1 LSA-type 1 (Router-LSA), len 48 .000 0000 0000 0001 = LS Age (seconds): 1 0... .... .... .... = Do Not Age Flag: 0 Options: 0x42, O, (E) External Routing 0... .... = DN: Not set .1.. .... = O: Set ..0. .... = (DC) Demand Circuits: Not supported ...0 .... = (L) LLS Data block: Not Present .... 0... = (N) NSSA: Not supported .... .0.. = (MC) Multicast: Not capable .... ..1. = (E) External Routing: Capable .... ...0 = (MT) Multi-Topology Routing: No LS Type: Router-LSA (1) Link State ID: 10.210.138.69 Advertising Router: 10.210.138.69 Sequence Number: 0x80000075 Checksum: 0x180f Length: 48 Flags: 0x03, (E) AS boundary router, (B) Area border router 0... .... = (H) flag: No ...0 .... = (N) flag: No .... 0... = (W) Wild-card multicast receiver: No .... .0.. = (V) Virtual link endpoint: No .... ..1. = (E) AS boundary router: Yes .... ...1 = (B) Area border router: Yes Number of Links: 2 Type: Stub ID: 10.210.138.69 Data: 255.255.255.255 Metric: 0 Type: PTP ID: 10.210.138.66 Data: 10.210.138.69 Metric: 10 The Cisco router sees these bird routers as ASBR routers as well R3-Cisco>show ip ospf border-routers OSPF Router with ID (10.210.138.65) (Process ID 1) Base Topology (MTID 0) Internal Router Routing Table Codes: i - Intra-area route, I - Inter-area route i 10.210.138.66 [1] via 10.210.138.66, GigabitEthernet0/0/1, ASBR, Area 0.0.0.0, SPF 77 i 10.210.138.69 [11] via 10.210.138.66, GigabitEthernet0/0/1, ABR/ASBR, Area 0.0.0.0, SPF 77 I 10.210.138.73 [21] via 10.210.138.66, GigabitEthernet0/0/1, ASBR, Area 0.0.0.0, SPF 77 R3-Cisco> R3-Cisco>show ip ospf database OSPF Router with ID (10.210.138.65) (Process ID 1) Router Link States (Area 0.0.0.0) Link ID ADV Router Age Seq# Checksum Link count 10.210.138.65 10.210.138.65 870 0x800000DE 0x0091B0 2 10.210.138.66 10.210.138.66 828 0x800000AC 0x00DBB2 3 10.210.138.69 10.210.138.69 828 0x8000009F 0x00C339 2 Net Link States (Area 0.0.0.0) Link ID ADV Router Age Seq# Checksum 10.210.138.65 10.210.138.65 870 0x80000035 0x003F26 Summary Net Link States (Area 0.0.0.0) Link ID ADV Router Age Seq# Checksum 10.210.138.73 10.210.138.69 591 0x8000002D 0x002465 Summary ASB Link States (Area 0.0.0.0) Link ID ADV Router Age Seq# Checksum 10.210.138.73 10.210.138.69 591 0x8000002D 0x001672 Type-5 AS External Link States Link ID ADV Router Age Seq# Checksum Tag 0.0.0.0 10.210.138.65 1650 0x80000034 0x004EA1 1 R3-Cisco>
On Fri, Jan 27, 2023 at 02:18:36PM +0000, Kenth Eriksson wrote:
I have a setup as in the attached drawing. I can see that the bird ABR node (R2) sets the E-bit and the B-bit in the router LSA. The B-bit seems correct as it is the ABR, but it is not an ASBR.
Hi It depends on config. if route export to OSPF is allowed, it is marked as ASBR, even if no route is currently exported. See ospf_proto_finish(): /* Route export or NSSA translation (RFC 3101 3.1) */ | cf->asbr = (proto_cf_main_channel(this_proto)->out_filter != FILTER_REJECT) || (nssa && cf->abr); -- Elen sila lumenn' omentielvo Ondrej 'Santiago' Zajicek (email: santiago@crfreenet.org) OpenPGP encrypted e-mails preferred (KeyID 0x11DEADC3, wwwkeys.pgp.net) "To err is human -- to blame it on a computer is even more so."
My export filter says reject, you are saying export filter keyword is enough to hit that business logic? export filter { if (source = RTS_STATIC) then { ospf_metric2=20; reject; } if (net = 0.0.0.0/0) then { ospf_metric1=1000; reject; } reject; }; ________________________________ From: Ondrej Zajicek <ondrej.zajicek@nic.cz> Sent: Friday, January 27, 2023 16:32 To: Kenth Eriksson <Kenth.Eriksson@infinera.com> Cc: bird-users@network.cz <bird-users@network.cz> Subject: Re: ABR sets E-bit (and B-bit) in router LSA CAUTION: This email originated from outside of the organization. Do not click links or open attachments unless you recognize the sender and know the content is safe. On Fri, Jan 27, 2023 at 02:18:36PM +0000, Kenth Eriksson wrote:
I have a setup as in the attached drawing. I can see that the bird ABR node (R2) sets the E-bit and the B-bit in the router LSA. The B-bit seems correct as it is the ABR, but it is not an ASBR.
Hi It depends on config. if route export to OSPF is allowed, it is marked as ASBR, even if no route is currently exported. See ospf_proto_finish(): /* Route export or NSSA translation (RFC 3101 3.1) */ | cf->asbr = (proto_cf_main_channel(this_proto)->out_filter != FILTER_REJECT) || (nssa && cf->abr); -- Elen sila lumenn' omentielvo Ondrej 'Santiago' Zajicek (email: santiago@crfreenet.org) OpenPGP encrypted e-mails preferred (KeyID 0x11DEADC3, wwwkeys.pgp.net) "To err is human -- to blame it on a computer is even more so."
participants (2)
-
Kenth Eriksson -
Ondrej Zajicek