OSPF will use different IP addresses for the next hop depending on the network type that you use. This can be confusing when you try configuring OSPF on top of a frame-relay network. In this short lesson, I want to show you the difference between the next-hop IP address and the OSPF network type that we use.
There are 5 OSPF network types:
- Non-Broadcast
- Broadcast
- Point-to-Multipoint
- Point-to-Multipoint Non-Broadcast
- Point-to-Point
I made non-broadcast and broadcast blue because these two network types have something in common. They both require a DR/BDR election and basically, you are telling OSPF that you have a multi-access network. In other words…every router can reach any other router. This can be challenging with frame-relay because this is not always the case if you have a partial mesh or hub and spoke configuration.
Point-to-multipoint, point-to-multipoint non-broadcast, and point-to-point are in red because they have one thing in common: We tell OSPF that we have a “bunch of point-to-point” links. As you will see in my demonstration, the “blue” network types have different next-hop behavior from the “red” network types.
Let’s take a look at a configuration so I can demonstrate it to you:

Above you see a frame-relay hub and spoke network. We have two PVCs, but there is only a single subnet, so this is a frame-relay point-to-multipoint network. You can also see that router Spoke1 has network 2.2.2.0 /24 behind it. We will advertise this network into OSPF and see what the next hop IP address is like. Let’s configure our routers:
Hub(config)#interface serial 0/0
Hub(config-if)#ip address 192.168.123.1 255.255.255.0
Hub(config-if)#encapsulation frame-relay
Hub(config-if)#ip ospf network broadcast
Hub(config-if)#exit
Hub(config)#router ospf 1
Hub(config-router)#network 192.168.123.0 0.0.0.255 area 0
Spoke1(config)#interface serial 0/0
Spoke1(config-if)#ip address 192.168.123.2 255.255.255.0
Spoke1(config-if)#encapsulation frame-relay
Spoke1(config-if)#ip ospf network broadcast
Spoke1(config-if)#ip ospf priority 0
Spoke1(config-if)#exit
Spoke1(config)#router ospf 1
Spoke1(config-router)#network 192.168.123.0 0.0.0.255 area 0
Spoke2(config)#interface serial 0/0
Spoke2(config-if)#ip address 192.168.123.3 255.255.255.0
Spoke2(config-if)#encapsulation frame-relay
Spoke2(config-if)#ip ospf network broadcast
Spoke2(config-if)#ip ospf priority 0
Spoke2(config-if)#exit
Spoke2(config)#router ospf 1
Spoke2(config-router)#network 192.168.123.0 0.0.0.255 area 0
Above you see my configuration for the hub and spoke routers. I configured frame-relay, used the broadcast network type, and made sure that the spoke routers won’t become the DR/BDR with the priority 0
command. Now let’s advertise network 2.2.2.0 /24 in OSPF on router Spoke1:
Spoke1(config)#interface loopback 0
Spoke1(config-if)#ip address 2.2.2.2 255.255.255.0
Spoke1(config-if)#exit
Spoke1(config)#router ospf 1
Spoke1(config-router)#network 2.2.2.0 0.0.0.255 area 0
We will add a loopback interface to advertise the network in OSPF. Let’s check router Spoke2 to see what it looks like in the routing table:
Spoke2#show ip route ospf
2.0.0.0/32 is subnetted, 1 subnets
O 2.2.2.2 [110/65] via 192.168.123.2, 00:00:38, Serial0/0
Above, we see the entry in the routing table of router Spoke2. Take a close look at the next hop IP address. 192.168.123.2 is the IP address of router Spoke1. Since we are using the broadcast network type, OSPF thinks that each router can reach any other router. In reality, there is only a PVC between the Hub and Spoke1 and between the Hub and Spoke2. What happens when we try to reach this network? Let’s find out!
Spoke2#ping 2.2.2.2
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2.2.2.2, timeout is 2 seconds:
.....
Success rate is 0 percent (0/5)
We can’t reach it…why? First, check if the next hop IP address is reachable:
Spoke2#ping 192.168.123.2
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.123.2, timeout is 2 seconds:
.....
Success rate is 0 percent (0/5)
The next hop IP address is unreachable. Let me show you why:
Spoke2#show frame-relay map
Serial0/0 (up): ip 192.168.123.1 dlci 301(0x12D,0x48D0), dynamic,
broadcast,, status defined, active
There’s only a frame-relay map for the hub router, so the spoke routers have no clue how to reach each other. In order to fix this, we’ll have to create two additional frame-relay maps.
Spoke1(config)#interface serial 0/0
Spoke1(config-if)#frame-relay map ip 192.168.123.3 201
Spoke2(config)#interface serial 0/0
Spoke2(config-if)#frame-relay map ip 192.168.123.2 301
This will help the spoke routers to reach each other.
Spoke2#ping 2.2.2.2
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2.2.2.2, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 8/10/20 ms
There we go…problem solved! Now let’s switch our OSPF network type to one of the “point” types to see the difference with the next hop IP address:
Hub(config)#interface serial 0/0
Hub(config-if)#ip ospf network point-to-multipoint
Spoke1(config)#interface serial 0/0
Spoke1(config-if)#ip ospf network point-to-multipoint
Spoke2(config)#interface serial 0/0
Spoke2(config-if)#ip ospf network point-to-multipoint
I will use the point-to-multipoint network type. Now let’s check the next hop IP address to see if there’s a difference:
Spoke2#show ip route ospf | include 2.2.2.2
O 2.2.2.2 [110/129] via 192.168.123.1, 00:09:37, Serial0/0
The next hop IP address is now the Hub router. To emphasize this, let me put the two next-hop IP addresses below each other.
Broadcast:
Spoke2#show ip route ospf
2.0.0.0/32 is subnetted, 1 subnets
O 2.2.2.2 [110/65] via 192.168.123.2, 00:00:38, Serial0/0
Point-to-Multipoint:
Spoke2#show ip route ospf | include 2.2.2.2
O 2.2.2.2 [110/129] via 192.168.123.1, 00:09:37, Serial0/0
So, in short…the “broadcast” and “non-broadcast” network types will use the next hop IP address of the router advertising the network, and you might have to create additional frame-relay maps to solve reachability issues. The “point” network types will use the next hop IP address of the router from which we received the information.
That’s all for now! I hope you enjoyed this lesson, if you have any questions just leave a comment.
Unit 1: Introduction to OSPF
- Introduction to OSPF
- Basic OSPF Configuration
- OSPF Multi Area Configuration
- OSPF Reference Bandwidth
- OSPF Plain Text Authentication
- OSPF MD5 Authentication
- OSPF SHA-HMAC Authentication
- OSPF TTL Security Check
- OSPF Default Route
Unit 2: OSPF Neighbor Adjacency
- OSPF LSA Types
- OSPF LSAs and LSDB Flooding
- OSPF Hello and Dead Interval
- OSPF Router ID
- OSPF Packets and Neighbor Discovery
- OSPF DR/BDR Election
- OSPF Passive Interface
- Troubleshooting OSPF Neighbor Adjacency
Unit 3: OSPF Network Types
- OSPF Non-Broadcast Network Type
- OSPF Broadcast Network Type
- OSPF Point-to-Multipoint Network Type
- OSPF Point-to-Multipoint Non-Broadcast Network Type
- OSPF Point-to-Point Network Type
- OSPF Next Hop with Network Types
Unit 4: OSPF Stub Areas
- Introduction to OSPF Stub Areas
- How to configure OSPF Stub Area
- How to configure OSPF Totally Stub
- How to configure OSPF NSSA (Not So Stubby) Area
- How to configure OSPF Totally NSSA (Not So Stubby) Area
- OSPF NSSA P-bit explained
Unit 5: Advanced OSPF Topics
- OSPF Summarization
- OSPF Distribute-List Filtering
- OSPF LSA Type 3 Filtering
- OSPF LSA Type 5 Filtering
- OSPF Virtual Link
- OSPF Virtual Link Authentication
- OSPF Path Selection Explained
- How to read the OSPF Database
- OSPFv3 for IPv4
- Troubleshooting OSPF Route Advertisement
- OSPF SPF Scheduling and Throttling
- OSPF LSA Throttling
- OSPF Incremental SPF
- OSPF Prefix Suppression
- OSPF Stub Router
- OSPF Graceful Shutdown
- OSPF Graceful Restart
- OSPF Loop-Free Alternate (LFA) Fast Reroute (FRR)
- OSPF Remote Loop-Free Alternate (LFA) Fast Reroute (FRR)