cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
893
Views
0
Helpful
5
Replies

If it will be called a routing loop ?

Ahmed Mamoon
Level 1
Level 1

Dear Experts,

I have recently done CCNA and now preparing for CCNP Routing Exam. I came across a problem which I think is a looping issue. Below is my network

diagram.

Network Topology.jpg

R4 is sending LSA Type 3 about some loopbacks it received from R9. These loopbacks are from (172.16.101.0 to 172.16.107.0) However when I do SHOW IP OSPF DATABASE on R9, it show me below output about the Type 3 LSAs of Area 1.

                Summary Net Link States (Area 1)

Link ID         ADV Router      Age         Seq#       Checksum
172.16.13.0     3.3.3.3         1074        0x80000001 0x001248
172.16.13.0     4.4.4.4         1068        0x80000001 0x00769F
172.16.14.0     3.3.3.3         1065        0x80000001 0x00898F
172.16.14.0     4.4.4.4         1113        0x80000001 0x000718
172.16.18.0     3.3.3.3         1080        0x80000001 0x005DB7
172.16.18.0     4.4.4.4         1052        0x80000002 0x003DD2
172.16.48.0     3.3.3.3         1080        0x80000001 0x008BDD
172.16.48.0     4.4.4.4         1113        0x80000001 0x008629
172.16.49.0     3.3.3.3         605         0x80000001 0x009B17
172.16.49.0     4.4.4.4         604         0x80000001 0x009662
172.16.80.0     3.3.3.3         1080        0x80000001 0x00CC06
172.16.80.0     4.4.4.4         1052        0x80000002 0x002AE3
172.16.81.0     3.3.3.3         1080        0x80000001 0x00C110
172.16.81.0     4.4.4.4         1052        0x80000002 0x001FED
172.16.82.0     3.3.3.3         1080        0x80000001 0x00B61A
172.16.82.0     4.4.4.4         1052        0x80000002 0x0014F7
172.16.83.0     3.3.3.3         1080        0x80000001 0x00AEA0
172.16.84.0     3.3.3.3         1080        0x80000001 0x00A3AA
172.16.85.0     3.3.3.3         1082        0x80000001 0x0098B4
172.16.101.0    3.3.3.3         540         0x80000001 0x006716
172.16.101.0    4.4.4.4         538         0x80000001 0x006261
172.16.102.0    3.3.3.3         540         0x80000001 0x005F9C
172.16.102.0    4.4.4.4         538         0x80000001 0x005AE7
172.16.103.0    3.3.3.3         540         0x80000001 0x00D5E4
172.16.103.0    4.4.4.4         538         0x80000001 0x00D030
172.16.104.0    3.3.3.3         540         0x80000001 0x008B0E
172.16.104.0    4.4.4.4         543         0x80000001 0x008659
172.16.105.0    3.3.3.3         544         0x80000001 0x00E0A7
172.16.105.0    4.4.4.4         543         0x80000001 0x00DBF2
172.16.106.0    3.3.3.3         544         0x80000001 0x000679
172.16.106.0    4.4.4.4         543         0x80000001 0x0001C4
172.16.107.0    3.3.3.3         544         0x80000001 0x001367
172.16.107.0    4.4.4.4         543         0x80000001 0x000EB2

Now it says that it have received the info of 172.16.101.0 to 172.16.107.0 both from ABR 3.3.3.3 (R3) and ABR 4.4.4.4 (R4). Whereas, as per my understanding only R4 is supposed to be the one advertising about these Routes and and not R3. So if this is a routing loop occured in the network ? Or it is normal. Can someone explain please. And if it is a routing loop, then how it can be handled ?

Regards,

Fraz

2 Accepted Solutions

Accepted Solutions

Hi,

Oh I see.

In that case, the behavior is correct - and it is not a routing loop. What happens is that R4 learns about internal networks from Area 3 and because it is an ABR, it injects them as LSA-3 into other areas. In your case, those are areas 0 and 1.

R3 is an ABR between areas 0 and 1. Every ABR uses only LSA-3 received via area 0 to compute its routing table, so even if there are LSA-3 known via area 1, R3 ignores them (the same will be valid for R4). So R3 computes its routing table using internal information from area 0 and LSA-3 received via area 0, and it will inject the contents of the routing table (internal and intra-area routes) as LSA-3 to the area 1. That is the reason why R4 can see both its own LSA-3 and R3's LSA-3 about the same networks in its own LSDB. However, as mentioned earlier, an ABR uses only LSA-3 received in backbone area 0 to compute its routing table. While the LSA-3 received via area 1 are known to R4, they will be ignored during the SPF computation. Hence, no routing loop can ensue - which is also exactly the reason why OSPF does not allow you to daisy-chain areas: ABRs would not accept LSA-3 received via non-backbone areas.

Does this make more sense now? Feel welcome to ask further!

Best regards,

Peter

View solution in original post

Hello,

You are almost correct.

each ABR will learn the LSAs from one area e.g. Area 0

More precisly, each ABR learns LSAs from all areas it is attached to. When computing its routing table:

  • All received LSA-1 and LSA-2 are used
  • Only LSA-3 and LSA-4 received via backbone area 0 are used
  • All received LSA-5 are used

and will advertise by makeing them a Type 3 LSA to other areas like Area 1 by using its own RID as the Advertising Router ID

More precisely, only intra-area and inter-area routes known to ABR are advertised using LSA-3. External routes are known via LSA-5, and these will remain advertised via LSA-5.

it will always prefer advertisments of same Subnets learned from Area 0 over other Areas.

If the router in question is an ABR, it is not about preferences anymore: an ABR will use only LSA-3 received via area 0, and will never use LSA-3 received over non-backbone areas - in other words, as long as that router acts as an ABR, it will never fall back to using LSA-3 received via non-backbone areas, even if they were the only source of information about some inter-area routes.

Best regards,

Peter

View solution in original post

5 Replies 5

Peter Paluch
Cisco Employee
Cisco Employee

Hello Fraz,

This is strange. R9 should not have received any LSA-3 from R3, as R3 is not in R9's area at all. LSA-3 are originated and reoriginated by ABRs - there is no way how R9 can learn about LSA-3 from R3. Is it by any means possible that R9 has some other connection to R3? Alternatively, is it possible you have changed your topology recently, and R3 and R9 were in the same area?

I also believe that show ip ospf database summary adv-router 3.3.3.3 will say to each LSA-3 something along the lines "adv-router not reachable" or "routing bit not set".

Best regards,

Peter

Hi Peter,

Sorry it was typo. I meant to say R4 not R9. So the summary net link states shown above are not of R9 but of R4. So if it is still correct that only R4 should be the one to advertise about these summary nets, but R3 is also advertising them. Is it normal ?

Hi,

Oh I see.

In that case, the behavior is correct - and it is not a routing loop. What happens is that R4 learns about internal networks from Area 3 and because it is an ABR, it injects them as LSA-3 into other areas. In your case, those are areas 0 and 1.

R3 is an ABR between areas 0 and 1. Every ABR uses only LSA-3 received via area 0 to compute its routing table, so even if there are LSA-3 known via area 1, R3 ignores them (the same will be valid for R4). So R3 computes its routing table using internal information from area 0 and LSA-3 received via area 0, and it will inject the contents of the routing table (internal and intra-area routes) as LSA-3 to the area 1. That is the reason why R4 can see both its own LSA-3 and R3's LSA-3 about the same networks in its own LSDB. However, as mentioned earlier, an ABR uses only LSA-3 received in backbone area 0 to compute its routing table. While the LSA-3 received via area 1 are known to R4, they will be ignored during the SPF computation. Hence, no routing loop can ensue - which is also exactly the reason why OSPF does not allow you to daisy-chain areas: ABRs would not accept LSA-3 received via non-backbone areas.

Does this make more sense now? Feel welcome to ask further!

Best regards,

Peter

So it means, that each ABR will learn the LSAs from one area e.g. Area 0 and will advertise by makeing them a Type 3 LSA to other areas like Area 1 by using its own RID as the Advertising Router ID, and it will always prefer advertisments of same Subnets learned from Area 0 over other Areas.

If this is the concept, then it is cleared now.

Thanx.

Hello,

You are almost correct.

each ABR will learn the LSAs from one area e.g. Area 0

More precisly, each ABR learns LSAs from all areas it is attached to. When computing its routing table:

  • All received LSA-1 and LSA-2 are used
  • Only LSA-3 and LSA-4 received via backbone area 0 are used
  • All received LSA-5 are used

and will advertise by makeing them a Type 3 LSA to other areas like Area 1 by using its own RID as the Advertising Router ID

More precisely, only intra-area and inter-area routes known to ABR are advertised using LSA-3. External routes are known via LSA-5, and these will remain advertised via LSA-5.

it will always prefer advertisments of same Subnets learned from Area 0 over other Areas.

If the router in question is an ABR, it is not about preferences anymore: an ABR will use only LSA-3 received via area 0, and will never use LSA-3 received over non-backbone areas - in other words, as long as that router acts as an ABR, it will never fall back to using LSA-3 received via non-backbone areas, even if they were the only source of information about some inter-area routes.

Best regards,

Peter

Getting Started

Find answers to your questions by entering keywords or phrases in the Search bar above. New here? Use these resources to familiarize yourself with the community:

Innovations in Cisco Full Stack Observability - A new webinar from Cisco