Community discussions

MikroTik App
 
User avatar
cpbruton
just joined
Topic Author
Posts: 16
Joined: Fri Jun 07, 2013 4:23 am
Location: Pasadena, California, USA
Contact:

OSPF multiple areas - routes not appearing in non-backbone area

Fri Mar 25, 2022 10:07 pm

I'm having trouble with a seemingly very simple two-area topology. Not sure if I'm misunderstanding how to configure OSPF in RouterOS v7 or what. I am running 7.2rc5 but I had the same problem in 7.1.

Three routers (R1, R2, R3) and two OSPF areas (backbone, area 99). R1 and R2 both have their loopback interfaces in the backbone area. R3 has its loopback in area99. Diagram:
ospf2 example.png
R1 and R2 seem fine - they both have a route to all three loopback addresses in their routing tables. I would expect to see the same on R3, but R3 has no OSPF routes appearing at all. Am I missing something obvious? I had no issues with this kind of topology in ROS v6.

R1 configuration:
/interface bridge
add name=loopback protocol-mode=none
/routing ospf instance
add disabled=no name=ospf-instance router-id=10.0.0.1
/routing ospf area
add disabled=no instance=ospf-instance name=backbone
/ip address
add address=10.1.1.1/24 interface=ether1 network=10.1.1.0
add address=10.0.0.1 interface=loopback network=10.0.0.1
/routing ospf interface-template
add area=backbone cost=10 disabled=no interfaces=ether1
add area=backbone cost=10 disabled=no interfaces=loopback passive

R2 configuration:
/interface bridge
add name=loopback protocol-mode=none
/routing ospf instance
add disabled=no name=ospf-instance router-id=10.0.0.2
/routing ospf area
add disabled=no instance=ospf-instance name=backbone
add area-id=0.0.0.99 disabled=no instance=ospf-instance name=area99
/ip address
add address=10.1.1.2/24 interface=ether1 network=10.1.1.0
add address=10.2.2.2/24 interface=ether2 network=10.2.2.0
add address=10.0.0.2 interface=loopback network=10.0.0.2
/routing ospf interface-template
add area=backbone cost=10 disabled=no interfaces=ether1 priority=64
add area=backbone cost=10 disabled=no interfaces=loopback passive
add area=area99 cost=10 disabled=no interfaces=ether2

R3 configuration:
/interface bridge
add name=loopback protocol-mode=none
/routing ospf instance
add disabled=no name=ospf-instance router-id=10.0.0.3
/routing ospf area
add disabled=no instance=ospf-instance name=backbone
add area-id=0.0.0.99 disabled=no instance=ospf-instance name=area99
/ip address
add address=10.2.2.3/24 interface=ether2 network=10.2.2.0
add address=10.0.0.3 interface=loopback network=10.0.0.3
/routing ospf interface-template
add area=area99 cost=10 disabled=no interfaces=ether2 priority=64
add area=area99 cost=10 disabled=no interfaces=loopback passive

R1's routing table, OSPF interfaces, and neighbors:
[admin@R1] /ip/route> print
Flags: D - DYNAMIC; A - ACTIVE; c, o, y - COPY
Columns: DST-ADDRESS, GATEWAY, DISTANCE
    DST-ADDRESS  GATEWAY          DISTANCE
DAc 10.0.0.1/32  loopback                0
DAo 10.0.0.2/32  10.1.1.2%ether1       110
DAo 10.0.0.3/32  10.1.1.2%ether1       110
DAc 10.1.1.0/24  ether1                  0
DAo 10.2.2.0/24  10.1.1.2%ether1       110

[admin@R1] > /routing/ospf/interface/print
Flags: D - dynamic
 0 D address=10.1.1.1%ether1 area=backbone state=dr network-type=broadcast bdr=10.1.1.2 cost=10
     priority=128 retransmit-interval=5s transmit-delay=1s hello-interval=10s dead-interval=40s

 1 D address=10.0.0.1%loopback area=backbone state=passive network-type=broadcast cost=10
     priority=128 retransmit-interval=5s transmit-delay=1s hello-interval=10s dead-interval=40s
[admin@R1] > /routing/ospf/neighbor/print
Flags: V - virtual; D - dynamic
 0  D instance=ospf-instance area=backbone address=10.1.1.2 priority=64 router-id=10.0.0.2
      dr=10.1.1.1 bdr=10.1.1.2 state="Full" state-changes=12 adjacency=53m13s timeout=39s

R2's routing table, OSPF interfaces, and neighbors:
[admin@R2] /ip/route> print
Flags: D - DYNAMIC; A - ACTIVE; c, o, y - COPY
Columns: DST-ADDRESS, GATEWAY, DISTANCE
    DST-ADDRESS  GATEWAY          DISTANCE
DAo 10.0.0.1/32  10.1.1.1%ether1       110
DAc 10.0.0.2/32  loopback                0
DAo 10.0.0.3/32  10.2.2.3%ether2       110
DAc 10.1.1.0/24  ether1                  0
DAc 10.2.2.0/24  ether2                  0

[admin@R2] > /routing/ospf/interface/print
Flags: D - dynamic
 0 D address=10.1.1.2%ether1 area=backbone state=bdr network-type=broadcast dr=10.1.1.1 cost=10
     priority=64 retransmit-interval=5s transmit-delay=1s hello-interval=10s dead-interval=40s

 1 D address=10.2.2.2%ether2 area=area99 state=bdr network-type=broadcast dr=10.2.2.3 cost=10
     priority=128 retransmit-interval=5s transmit-delay=1s hello-interval=10s dead-interval=40s

 2 D address=10.0.0.2%loopback area=backbone state=passive network-type=broadcast cost=10
     priority=128 retransmit-interval=5s transmit-delay=1s hello-interval=10s dead-interval=40s
[admin@R2] > /routing/ospf/neighbor/print
Flags: V - virtual; D - dynamic
 0  D instance=ospf-instance area=backbone address=10.1.1.1 priority=128 router-id=10.0.0.1
      dr=10.1.1.1 bdr=10.1.1.2 state="Full" state-changes=6 adjacency=52m30s timeout=33s

 1  D instance=ospf-instance area=area99 address=10.2.2.3 priority=64 router-id=10.0.0.3
      dr=10.2.2.3 bdr=10.2.2.2 state="Full" state-changes=6 adjacency=52m30s timeout=33s

R3's routing table, OSPF interfaces, and neighbors. I expect to see OSPF routes to 10.0.0.1 and 10.0.0.2 listed here. But they are missing:
[admin@R3] /ip/route> print
Flags: D - DYNAMIC; A - ACTIVE; c, y - COPY
Columns: DST-ADDRESS, GATEWAY, DISTANCE
    DST-ADDRESS  GATEWAY   DISTANCE
DAc 10.0.0.3/32  loopback         0
DAc 10.2.2.0/24  ether2           0

[admin@R3] > /routing/ospf/interface/print
Flags: D - dynamic
 0 D address=10.2.2.3%ether2 area=area99 state=dr network-type=broadcast bdr=10.2.2.2 cost=10
     priority=64 retransmit-interval=5s transmit-delay=1s hello-interval=10s dead-interval=40s

 1 D address=10.0.0.3%loopback area=area99 state=passive network-type=broadcast cost=10
     priority=128 retransmit-interval=5s transmit-delay=1s hello-interval=10s dead-interval=40s
[admin@R3] > /routing/ospf/neighbor/print
Flags: V - virtual; D - dynamic
 0  D instance=ospf-instance area=area99 address=10.2.2.2 priority=128 router-id=10.0.0.2
      dr=10.2.2.3 bdr=10.2.2.2 state="Full" state-changes=12 adjacency=49m35s timeout=37s

R3 does appear to be receiving inter-area LSAs - so why are no routes calculated and added to the routing table?:
[admin@R3] /routing/ospf/lsa> print without-paging
Flags: S - self-originated, F - flushing, W - wraparound; D - dynamic
 0  D instance=ospf-instance area=area99 type="router" originator=10.0.0.2 id=10.0.0.2
      sequence=0x80000004 age=653 checksum=0xB359 body=
        bits=B
            type=network id=10.2.2.3 data=10.2.2.2 metric=10

 1 SD instance=ospf-instance area=area99 type="router" originator=10.0.0.3 id=10.0.0.3
      sequence=0x80000007 age=634 checksum=0x4996 body=
        bits=B
            type=network id=10.2.2.3 data=10.2.2.3 metric=10
            type=stub id=10.0.0.3 data=255.255.255.255 metric=10

 2  D instance=ospf-instance area=area99 type="router" originator=10.2.2.2 id=10.2.2.2
      sequence=0x8000000A age=2449 checksum=0x4EB2 body=
        bits=
            type=network id=10.2.2.2 data=10.2.2.2 metric=10

 3 SD instance=ospf-instance area=area99 type="network" originator=10.0.0.3 id=10.2.2.3
      sequence=0x80000002 age=573 checksum=0x37EA body=
        netmask=255.255.255.0
            router-id=10.0.0.2
            router-id=10.0.0.3

 4  D instance=ospf-instance area=area99 type="inter-area-prefix" originator=10.0.0.2 id=10.0.0.1
      sequence=0x80000002 age=653 checksum=0x3FF1 body=
        netmask=255.255.255.255
        metric=20

 5  D instance=ospf-instance area=area99 type="inter-area-prefix" originator=10.0.0.2 id=10.0.0.2
      sequence=0x80000002 age=655 checksum=0xD069 body=
        netmask=255.255.255.255
        metric=10

 6  D instance=ospf-instance area=area99 type="inter-area-prefix" originator=10.0.0.2 id=10.1.1.0
      sequence=0x80000002 age=640 checksum=0xCD6C body=
        netmask=255.255.255.0
        metric=10

 7 SD instance=ospf-instance area=backbone type="router" originator=10.0.0.3 id=10.0.0.3
      sequence=0x80000002 age=706 checksum=0x73D3 body=bits=B

 8 SD instance=ospf-instance area=backbone type="inter-area-prefix" originator=10.0.0.3 id=10.0.0.3
      sequence=0x80000002 age=706 checksum=0xC077 body=
        netmask=255.255.255.255
        metric=10

 9 SD instance=ospf-instance area=backbone type="inter-area-prefix" originator=10.0.0.3 id=10.2.2.0
      sequence=0x80000002 age=662 checksum=0xB086 body=
        netmask=255.255.255.0
        metric=10


Any and all help is appreciated.
You do not have the required permissions to view the files attached to this post.
 
User avatar
jprietove
Trainer
Trainer
Posts: 212
Joined: Fri Jun 03, 2016 3:00 pm
Location: Cádiz, Spain
Contact:

Re: OSPF multiple areas - routes not appearing in non-backbone area

Fri Mar 25, 2022 10:55 pm

If R1 has two areas, it's then an ABR Area Border Router. It's configuration is wrong.

Put all is networks in the same area.

Same apply to RE.

So only R2 is the ABR.
 
User avatar
cpbruton
just joined
Topic Author
Posts: 16
Joined: Fri Jun 07, 2013 4:23 am
Location: Pasadena, California, USA
Contact:

Re: OSPF multiple areas - routes not appearing in non-backbone area

Fri Mar 25, 2022 11:29 pm

Thanks for the suggestion - I disabled the backbone area on R3 and all the routes are now appearing correctly. But this is different behavior compared to v6? On v6, a router would only be an ABR if it actually had interfaces in multiple areas. It seems in v7 that a router thinks it is an ABR just by the fact that multiple areas are configured, even if all interfaces are in a single area.

New (working) OSPF config on R3:
/routing ospf instance
add disabled=no name=ospf-instance router-id=10.0.0.3
/routing ospf area
add disabled=yes instance=ospf-instance name=backbone
add area-id=0.0.0.99 disabled=no instance=ospf-instance name=area99
/routing ospf interface-template
add area=area99 cost=10 disabled=no interfaces=ether2 priority=64
add area=area99 cost=10 disabled=no interfaces=loopback passive

Side note: Is there a way to list ABRs and ASBRs in v7? In v6 we had /routing ospf area-border-router and /routing ospf as-border-router.

Who is online

Users browsing this forum: No registered users and 17 guests