we call area 0 the backbone, but this is nothing but a best a practice, the problem i see there is that MX4 sees one of his two areas as his "backbone" breaking the leak of routes. this isnt because of the NSSA, but rather because he is not attached to area 0.
from section 3.1:
Virtual links can be configured between any two backbone routers
that have an interface to a common non-backbone area. Virtual
links belong to the backbone. The protocol treats two routers
joined by a virtual link as if they were connected by an
unnumbered point-to-point backbone network. On the graph of the
backbone, two such routers are joined by arcs whose costs are
the intra-area distances between the two routers. The routing
protocol traffic that flows along the virtual link uses intra-
area routing only.
concept of an ABR
3.3. Classification of routers
Area border routers
A router that attaches to multiple areas. Area border
routers run multiple copies of the basic algorithm, one copy
for each attached area. Area border routers condense the
topological information of their attached areas for
distribution to the backbone. The backbone in turn
distributes the information to the other areas.
------------------------------
GABRIEL FLORES
------------------------------
Original Message:
Sent: 08-23-2021 13:10
From: ANTON GOLOVIN
Subject: OSPF Router with interfaces in area 1 and area 2 become ABR
Hi Gabriel,
Thank you for your reply.
As i see, the MX4 shouldn't be an ABR, as written in Juniper Documentation (Area Border Routers):
Routing devices that belong to more than one area and connect one or more OSPF areas to the backbone area are called
area border routers (ABRs). At least one interface is within the backbone while another interface is in another area. ABRs also maintain a separate topological database for each area to which they are connected.
Same information are written in RFC2328 - Section 3.1:
The OSPF backbone always contains all area border routers. The backbone is responsible for distributing routing
information between non-backbone areas.
And in Section 3.2:
When routing a packet between two non-backbone areas the backbone is used.
------------------------------
ANTON GOLOVIN
Original Message:
Sent: 08-23-2021 03:06
From: GABRIEL FLORES
Subject: OSPF Router with interfaces in area 1 and area 2 become ABR
Hi Anton,
pretty sure MX4 is expected to be an ABR, it has interfaces in more than one area.
I ignore why you would need a design like this, but in a normal scenario when you are working with a router that is an ABR and is not attached to area 0 you would use a virtual link, but since this is an NSSA the device wont support, i bet that even if you remove the NSSA the behavior will remain the same, MX 1 wont be able to receive the external until you either connect disable one interface in MX4, or merged area 1 and 2 into a single area.
------------------------------
GABRIEL FLORES
Original Message:
Sent: 08-21-2021 17:00
From: ANTON GOLOVIN
Subject: OSPF Router with interfaces in area 1 and area 2 become ABR
Hi everyone.
I have the following topology:
My configuration:
MX1:set system host-name MX1
set interfaces ge-0/0/0 unit 0 family inet address 10.0.0.0/31
set interfaces ge-0/0/1 unit 0 family inet address 11.0.0.0/31
set interfaces lo0 unit 0 family inet address 1.1.1.1/32
set protocols ospf area 0.0.0.0 interface ge-0/0/0.0 interface-type p2p
set protocols ospf area 0.0.0.0 interface ge-0/0/1.0 interface-type p2p
MX2:set system host-name MX2
set interfaces ge-0/0/0 unit 0 family inet address 10.0.0.1/31
set interfaces ge-0/0/1 unit 0 family inet address 12.0.0.0/31
set interfaces ge-0/0/2 unit 0 family inet address 20.0.0.0/31
set interfaces lo0 unit 0 family inet address 2.2.2.2/32
set protocols ospf area 0.0.0.0 interface ge-0/0/0.0 interface-type p2p
set protocols ospf area 0.0.0.0 interface ge-0/0/2.0 interface-type p2p
set protocols ospf area 0.0.0.1 nssa default-lsa default-metric 1
set protocols ospf area 0.0.0.1 nssa default-lsa metric-type 1
set protocols ospf area 0.0.0.1 nssa no-summaries
set protocols ospf area 0.0.0.1 interface ge-0/0/1.0 interface-type p2p
MX3:set system host-name MX3
set interfaces ge-0/0/0 unit 0 family inet address 13.0.0.0/31
set interfaces ge-0/0/1 unit 0 family inet address 11.0.0.1/31
set interfaces ge-0/0/2 unit 0 family inet address 20.0.0.1/31
set protocols ospf area 0.0.0.0 interface ge-0/0/1.0 interface-type p2p
set protocols ospf area 0.0.0.0 interface ge-0/0/2.0 interface-type p2p
set protocols ospf area 0.0.0.2 nssa default-lsa default-metric 1
set protocols ospf area 0.0.0.2 nssa default-lsa metric-type 1
set protocols ospf area 0.0.0.2 nssa no-summaries
set protocols ospf area 0.0.0.2 interface ge-0/0/0.0 interface-type p2p
MX4:set system host-name MX4
set interfaces ge-0/0/0 unit 0 family inet address 13.0.0.1/31
set interfaces ge-0/0/1 unit 0 family inet address 12.0.0.1/31
set interfaces lo0 unit 0 family inet address 100.100.100.100/32
set protocols ospf export external-route-to-lo0
set protocols ospf area 0.0.0.1 nssa
set protocols ospf area 0.0.0.1 interface ge-0/0/1.0 interface-type p2p
set protocols ospf area 0.0.0.2 nssa
set protocols ospf area 0.0.0.2 interface ge-0/0/0.0 interface-type p2p
set policy-options policy-statement external-route-to-lo0 from protocol direct
set policy-options policy-statement external-route-to-lo0 from interface lo0.0
set policy-options policy-statement external-route-to-lo0 then external type 1
set policy-options policy-statement external-route-to-lo0 then accept
So, my question:
I have no 100.100.100.100/32 route on MX1. This happens due to external route not advertised by MX2 and MX3, because they don't tanslate LSA7 to LSA5. This role was taken by MX4 due to highest Router ID (rfc1587 - Section 4.1). But, MX4 shouldn't be ABR (rfc2328 - Section 3.1).
Why MX4 becomes ABR and how to disable this feature?
------------------------------
ANTON GOLOVIN
------------------------------