Note: You must perform Lab 0 for loading the initial configurations before starting this lab.
● Configure OSPF in area 12345 over the DMVPN cloud, between R1 and R5.
✓ Use an OSPF network type of point-to-multipoint non-broadcast.
✓ Advertise Loopback0 prefixes in area 12345.
● Configure OSPF in area 0 between R5 and R8
Configuration
R1 - R5:
!
enable configure terminal
!
interface Tunnel0 ip ospf 1 area 12345 ip ospf network point-to-multipoint non-broadcast
!
interface Loopback0 ip ospf 1 area 12345
!
end
!
write
!
R5:
!
enable configure terminal
!
router ospf 1 neighbor 177.1.0.1 neighbor 177.1.0.2 neighbor 177.1.0.3 neighbor 177.1.0.4
!
interface GigabitEthernet0/2 ip ospf 1 area 0
!
end
!
write
!
R8:
!
enable configure terminal
!
interface GigabitEthernet0/0 ip ospf 1 area 0
!
end
!
write
!
Verifications
OSPF network type point-to-multipoint non-broadcast is essentially the same as network type point-to-multipoint, with one exception: Point-to-multipoint network type uses multicast hellos, whereas point-to-multipoint non-broadcast uses unicast hellos. Additionally, in non-broadcast mode, you can configure per-neighbor OSPF cost using the command neighbor <IP_ADDRESS> cost <value>, which is helpful in hub and-spoke topology, allowing the hub to use different costs per spoke, although all spokes are attached to the same interface from the hub perspective.
Both do not support the DR/BDR election, automatically update the next-hop value of routes learned on partially meshed networks to the directly connected neighbor, and advertise the network as a set of endpoints instead of a transit network. The show ip ospf neighbor output is identical between the two network types. In this case, we can see that the spokes are adjacent with R5, the hub, and the hub is adjacent with the spokes. The null field under the State field indicates that no DR/BDR election has occurred.
R1#show ip ospf neighbor
Neighbor ID Pri State Dead Time Address Interface
177.1.5.5 0 FULL/ - 00:01:47 177.1.0.5 Tunnel0
R2#show ip ospf neighbor
Neighbor ID Pri State Dead Time Address Interface
177.1.5.5 0 FULL/ - 00:01:55 177.1.0.5 Tunnel0
R3#show ip ospf neighbor
Neighbor ID Pri State Dead Time Address Interface
177.1.5.5 0 FULL/ - 00:01:41 177.1.0.5 Tunnel0
R4#show ip ospf neighbor
Neighbor ID Pri State Dead Time Address Interface
177.1.5.5 0 FULL/ - 00:01:54 177.1.0.5 Tunnel0
R5#show ip ospf neighbor tunnel 0
Neighbor ID Pri State Dead Time Address Interface
170.1.4.4 0 FULL/ - 00:01:58 177.1.0.4 Tunnel0
170.1.3.3 0 FULL/ - 00:01:58 177.1.0.3 Tunnel0
170.1.2.2 0 FULL/ - 00:01:58 177.1.0.2 Tunnel0
170.1.1.1 0 FULL/ - 00:01:58 177.1.0.1 Tunnel0
Verify that the change is OSPF network-type. Note that it appears as point-to-multipoint, which can be both broadcast and non-broadcast; there is no clear differentiation in the outputs between the two.
R5#show ip ospf interface tunnel 0
Tunnel0 is up, line protocol is up
Internet Address 177.1.0.5/24, Area 12345, Attached via Interface Enable
Process ID 1, Router ID 177.1.5.5, Network Type POINT_TO_MULTIPOINT, Cost: 1000
Topology-MTID Cost Disabled Shutdown Topology Name
0 1000 no no Base
Enabled by interface config, including secondary ip addresses
Transmit Delay is 1 sec, State POINT_TO_MULTIPOINT
Interface PID Area IP Address/Mask Cost State Nbrs F/C
Gi0/2 1 0 177.1.58.5/24 1 BDR 1/1
Lo0 1 12345 170.1.5.5/32 1 LOOP 0/0
Tu0 1 12345 177.1.0.5/24 1000 P2MP 4/4
The routing table processing is the same between both network types. For example, take R1 which has a next-hop of the hub for all OSPF-learned routes:
R1#show ip route ospf
Codes: L - local, C - connected, S - static, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2
i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
ia - IS-IS inter area, * - candidate default, U - per-user static route
o - ODR, P - periodic downloaded static route, H - NHRP, l - LISP
a - application route
+ - replicated route, % - next hop override, p - overrides from PfR
Gateway of last resort is not set
170.1.0.0/32 is subnetted, 5 subnets
O 170.1.2.2 [110/2001] via 177.1.0.5, 00:03:01, Tunnel0
O 170.1.3.3 [110/2001] via 177.1.0.5, 00:02:15, Tunnel0
O 170.1.4.4 [110/2001] via 177.1.0.5, 00:02:15, Tunnel0
O 170.1.5.5 [110/1001] via 177.1.0.5, 00:03:11, Tunnel0
177.1.0.0/16 is variably subnetted, 11 subnets, 2 masks
O 177.1.0.2/32 [110/2000] via 177.1.0.5, 00:03:01, Tunnel0
O 177.1.0.3/32 [110/2000] via 177.1.0.5, 00:02:15, Tunnel0
O 177.1.0.4/32 [110/2000] via 177.1.0.5, 00:02:15, Tunnel0
O 177.1.0.5/32 [110/1000] via 177.1.0.5, 00:03:11, Tunnel0
O IA 177.1.58.0/24 [110/1001] via 177.1.0.5, 00:03:11, Tunnel0
Entries in the OSPF database and LSA contents are the same as in the point-to-multipoint case, for example, R1:
R1#show ip ospf database router self-originate
OSPF Router with ID (170.1.1.1) (Process ID 1)
Router Link States (Area 12345)
LS age: 191
Options: (No TOS-capability, DC)
LS Type: Router Links
Link State ID: 170.1.1.1
Advertising Router: 170.1.1.1
LS Seq Number: 80000007
Checksum: 0x4FA5
Length: 60
Number of Links: 3
Link connected to: a Stub Network
(Link ID) Network/subnet number: 170.1.1.1
(Link Data) Network Mask: 255.255.255.255
Number of MTID metrics: 0
TOS 0 Metrics: 1
Link connected to: another Router (point-to-point)
(Link ID) Neighboring Router ID: 177.1.5.5
(Link Data) Router Interface address: 177.1.0.1
Number of MTID metrics: 0
TOS 0 Metrics: 1000
Link connected to: a Stub Network
(Link ID) Network/subnet number: 177.1.0.1
(Link Data) Network Mask: 255.255.255.255
Number of MTID metrics: 0
TOS 0 Metrics: 0
Like point-to-multipoint, when neighbors outside area 12345 see this segment, it appears as a collection of endpoints, not the transit subnet itself.
R8#show ip route 177.1.0.0 255.255.255.0
% Subnet not in table
R8#show ip route ospf | i 177.1.0.
177.1.0.0/16 is variably subnetted, 11 subnets, 2 masks
O IA 177.1.0.1/32 [110/1001] via 177.1.58.5, 00:04:07, GigabitEthernet0/0
O IA 177.1.0.2/32 [110/1001] via 177.1.58.5, 00:04:07, GigabitEthernet0/0
O IA 177.1.0.3/32 [110/1001] via 177.1.58.5, 00:04:07, GigabitEthernet0/0
O IA 177.1.0.4/32 [110/1001] via 177.1.58.5, 00:04:07, GigabitEthernet0/0
The difference between the two types can be seen in the debug ip packet output. R5 sends multicast hellos to 224.0.0.5 out its LAN interface to R8 that uses network type broadcast. Out the DMVPN link running point-to-multipoint non-broadcast, R5 sends unicast hellos. This implies that the neighbor statement must be configured under the OSPF process, like the non-broadcast network type, to tell the router which devices to send hellos to.
R5#debug ip ospf hello
OSPF hello debugging is on
OSPF-1 HELLO Gi0/2: Send hello to 224.0.0.5 area 0 from 177.1.58.5
OSPF-1 HELLO Tu0: Send hello to 177.1.0.4 area 12345 from 177.1.0.5
OSPF-1 HELLO Tu0: Send hello to 177.1.0.3 area 12345 from 177.1.0.5
OSPF-1 HELLO Tu0: Send hello to 177.1.0.2 area 12345 from 177.1.0.5
OSPF-1 HELLO Tu0: Send hello to 177.1.0.1 area 12345 from 177.1.0.5
OSPF-1 HELLO Tu0: Rcv hello from 170.1.4.4 area 12345 177.1.0.4
OSPF-1 HELLO Tu0: Rcv hello from 170.1.3.3 area 12345 177.1.0.3
OSPF-1 HELLO Tu0: Rcv hello from 170.1.2.2 area 12345 177.1.0.2
OSPF-1 HELLO Tu0: Rcv hello from 170.1.1.1 area 12345 177.1.0.1
OSPF-1 HELLO Gi0/2: Rcv hello from 177.1.8.8 area 0 177.1.58.8
OSPF-1 HELLO Gi0/2: Send hello to 224.0.0.5 area 0 from 177.1.58.5
OSPF-1 HELLO Gi0/2: Rcv hello from 177.1.8.8 area 0 177.1.58.8
OSPF-1 HELLO Gi0/2: Send hello to 224.0.0.5 area 0 from 177.1.58.5
OSPF-1 HELLO Gi0/2: Rcv hello from 177.1.8.8 area 0 177.1.58.8
OSPF-1 HELLO Gi0/2: Send hello to 224.0.0.5 area 0 from 177.1.58.5