OSPF Database - Not Seeing Type 3 LSAs from all ABRs

Hello,
R1, R4, and R6 are OSPF neighbors in area 1. R1 and R4 are ABRs and generate type 3 LSAs into area 1. If I pick any network, 150.1.8.0/24 for example, I see that both ABRs inject a type 3 LSA into area 1 for that particular network:

R6(config)#do sh ip ospf data summ 150.1.8.0

        OSPF Router with ID (150.1.6.6) (Process ID 1)

Summary Net Link States (Area 1)

LS age: 1
Options: (No TOS-capability, DC, Upward)
LS Type: Summary Links(Network)
Link State ID: 150.1.8.0 (summary Network Number)
****Advertising Router: 150.1.1.1****
LS Seq Number: 80000001
Checksum: 0xEA2F
Length: 28
Network Mask: /24
MTID: 0 Metric: 22418

LS age: 6
Options: (No TOS-capability, DC, Upward)
LS Type: Summary Links(Network)
Link State ID: 150.1.8.0 (summary Network Number)
Advertising Router: 150.1.4.4
LS Seq Number: 80000055
Checksum: 0x9D15
Length: 28
Network Mask: /24
MTID: 0 Metric: 22431

            Summary Net Link States (Area 2)

LS age: 1940

Then I add a virtual link from R6 to R1:

R6(config-router)#router ospf 1
R6(config-router)#area 1 virtual-link 150.1.1.1
R6(config-router)#
*Dec 18 02:50:38.574: %OSPF-5-ADJCHG: Process 1, Nbr 150.1.1.1 on OSPF_VL1 from LOADING to FULL, Loading Done

Now I check the summary LSA for 150.1.8.0/24 and things are still the same for area 1:

R6(config-router)#do sh ip ospf data summ 150.1.8.0

        OSPF Router with ID (150.1.6.6) (Process ID 1)

Summary Net Link States (Area 1)

LS age: 711
Options: (No TOS-capability, DC, Upward)
LS Type: Summary Links(Network)
Link State ID: 150.1.8.0 (summary Network Number)
Advertising Router: 150.1.1.1
LS Seq Number: 80000001
Checksum: 0xEA2F
Length: 28
Network Mask: /24
MTID: 0 Metric: 22418

LS age: 716
Options: (No TOS-capability, DC, Upward)
LS Type: Summary Links(Network)
Link State ID: 150.1.8.0 (summary Network Number)
Advertising Router: 150.1.4.4
LS Seq Number: 80000055
Checksum: 0x9D15
Length: 28
Network Mask: /24
MTID: 0 Metric: 22431

What I do not understand is why R1 stops injecting a type 3 LSA for 150.1.8.0/24 after I change the cost of R4's links in area 0:

R4(config-if)#int s1/0
R4(config-if)#ip ospf cost 1
R4(config-if)#int s1/1
R4(config-if)#ip ospf cost 1

R6(config-router)#do sh ip ospf data summ 150.1.8.0

        OSPF Router with ID (150.1.6.6) (Process ID 1)

Summary Net Link States (Area 1)

LS age: 18
Options: (No TOS-capability, DC, Upward)
LS Type: Summary Links(Network)
Link State ID: 150.1.8.0 (summary Network Number)
Advertising Router: 150.1.4.4
LS Seq Number: 80000056
Checksum: 0xFBE6
Length: 28
Network Mask: /24
MTID: 0 Metric: 3002

I get that R4 is offering a better path to 150.1.8.0/24 and that OSPF's capability transit allows R6 to choose area 1 over area 0 (through the virtual link) to get there, but why would R1 stop generating its type 3 LSA? My understanding is that the OSPF database would show all possible paths and from there choose the best one and install it in the routing table

Thanks.

Comments

  • edited June 2017

    Hi ,
    because virtual link is between R6 and R1 not only R6, but also R1 uses transit capability to go 150.1.8.8 via Area1. You can see this in show ip route | inc 150.1.8.8 (next hop will be 155.1.146.4 which is in Area 1).
    And the rules says that, you can not inject type3 LSA to area from where next-hop to route recurses. (we can call this rule "split horizon for OSPF").
    Reference for rule: Alex Zinin "Cisco Ip Routing:Packet Forwarding and Intra-domain Routing Protocol" ,
    section: 9.2.4.4. Origination of Summary-LSAs
    case : b. If the route's next hops are resolvable through area A, skip this area...

    Always keep in mind that,if router does not generate type3 LSA to Area,then
    1) router is not ABR :)
    or
    2) router does not have that route in routing table (because LSA3 generated using global RIB)
    or
    3) route's next-hop recurses to area from where LSA3 is learnt

    HTH,

Sign In or Register to comment.