Friday, May 30, 2008

OSPF - point-to-multipoint with /32 routes for neighbors

For OSPF point-to-multipoint networks, host routes to the neighbors will exist in the route table
It is unusual, but as designed.

Notice the last two routes:

R6#show ip route | inc /32
2.0.0.0/32 is subnetted, 1 subnets
3.0.0.0/32 is subnetted, 1 subnets
4.0.0.0/32 is subnetted, 1 subnets
5.0.0.0/32 is subnetted, 1 subnets
6.0.0.0/32 is subnetted, 1 subnets
O 172.12.45.5/32 [110/64] via 172.12.45.5, 00:34:42, Serial1/1
O 172.12.45.4/32 [110/64] via 172.12.45.4, 00:34:42, Serial1/1

These are addresses of OSPF neighbors:

R6#show ip ospf neighbor

Neighbor ID Pri State Dead Time Address Interface
4.4.4.4 0 FULL/ - 00:01:37 172.12.45.4 Serial1/1
5.5.5.5 0 FULL/ - 00:01:37 172.12.45.5 Serial1/1
R6#

The host route is described in the router LSA for the advertising router:
(see 3rd entry)

R6#show ip ospf database router 4.4.4.4

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

Router Link States (Area 0)

Routing Bit Set on this LSA
LS age: 889
Options: (No TOS-capability, DC)
LS Type: Router Links
Link State ID: 4.4.4.4
Advertising Router: 4.4.4.4
LS Seq Number: 80000004
Checksum: 0x7CEA
Length: 72
Area Border Router
Number of Links: 4

Link connected to: another Router (point-to-point)
(Link ID) Neighboring Router ID: 5.5.5.5
(Link Data) Router Interface address: 172.12.45.4
Number of TOS metrics: 0
TOS 0 Metrics: 64

Link connected to: another Router (point-to-point)
(Link ID) Neighboring Router ID: 6.6.6.6
(Link Data) Router Interface address: 172.12.45.4
Number of TOS metrics: 0
TOS 0 Metrics: 64

Link connected to: a Stub Network
(Link ID) Network/subnet number: 172.12.45.4
(Link Data) Network Mask: 255.255.255.255
Number of TOS metrics: 0
TOS 0 Metrics: 0

Link connected to: a Stub Network
(Link ID) Network/subnet number: 4.4.4.4
(Link Data) Network Mask: 255.255.255.255
Number of TOS metrics: 0
TOS 0 Metrics: 1

The link is a stub network, however stub networks (not to be confused with stub areas) are usually only for links without OSPF neighbors.

Why are these host routes necessary?

Not really sure right now, but it is per RFC 2328, section 12.4.1.4.

3 comments:

  1. I agree with you that those two /32 routes at the end seem to be redundant. I used "distribute in" to filter out those two ospf routes in the ip routing table. After that, I still can ping the other two routes in the p-to-mp network. This is because there is a connected route for the p-to-mp subnet.

    But for routers in the OSPF domain not connected to the p-to-mp network, these /32 routes to the IP addresses in the p-to-mp network is needed. This is because according to rfc2328, OSPF will describe the p-to-mp network by each router advertising a type-3 link (stub network) for the router's own IP address in its router-lSA. The p-to-mp subnet itself is not advertised.

    I do not quite understand why RFC 2328 (12.4.1.3) specifies that a router-LSA for p-to-p network should include a type-3 link for the neighbor's IP address (option 1), instead of its own IP address. What the reason they want to make router-LSA for p-to-p and p-to-mp different in this way? Do you have any insight about this?

    Thanks,
    James Huang

    ReplyDelete
  2. Correction to my previous comment.
    The /32 routes are also needed in case of hub-and-spokes environment for communication between spokes.

    -- James Huang

    ReplyDelete
  3. Hi,

    The topology would really help,
    What kind of prefixes are these:


    R6#show ip route | inc /32
    2.0.0.0/32 is subnetted, 1 subnets
    3.0.0.0/32 is subnetted, 1 subnets
    4.0.0.0/32 is subnetted, 1 subnets
    5.0.0.0/32 is subnetted, 1 subnets
    6.0.0.0/32 is subnetted, 1 subnets

    Directly connected/ospf ?

    ReplyDelete

Note: Only a member of this blog may post a comment.