Hands-On Lab: Configuring OSPF on Non-Broadcast Networks

This hands-on lab configures OSPF over a non-broadcast multi-access topology using manually specified neighbor statements, since this network type cannot rely on multicast hello packets to automatically discover neighbors.

OSPF Non-Broadcast Network TypeManual Neighbor StatementNBMA Configuration

~3 min read · Updated Sep 22, 2026

Lab Objective

Configure OSPF across a non-broadcast multi-access (NBMA) topology using the neighbor command to manually define adjacencies, since automatic multicast-based discovery does not function on this network type.

Lab Purpose

Unlike the broadcast network type covered in an earlier lab, NBMA networks (historically Frame Relay, still relevant conceptually for hub-and-spoke topologies) cannot rely on OSPF's normal multicast hello mechanism to discover neighbors automatically, requiring administrators to manually specify who the neighbors are.

Lab Topology

Hub-and-spoke NBMA topology:

R1 (hub): 172.20.100.1/24
R2 (spoke): 172.20.100.2/24
R3 (spoke): 172.20.100.3/24

All three share the same logical subnet but
R2 and R3 have no direct connectivity to each
other, only to R1 (a defining NBMA characteristic)

Task 1: Configure Basic Addressing

Configure all three routers with their addresses on the shared subnet.

Task 2: Enable OSPF and Set the Network Type

Enable OSPF on all three routers, explicitly setting the interface network type to non-broadcast.

Task 3: Manually Define Neighbors on the Hub

On R1, manually specify both R2 and R3 as OSPF neighbors.

Task 4: Manually Define the Neighbor on Each Spoke

On R2 and R3, manually specify R1 as their OSPF neighbor.

Task 5: Verify Adjacencies Form Correctly

Confirm R1 forms adjacencies with both spokes, and that R2 and R3 correctly point only toward R1.

Solution and Verification

R1(config)# interface serial0/0/0
R1(config-if)# ip address 172.20.100.1 255.255.255.0
R1(config-if)# ip ospf network non-broadcast
R1(config-if)# no shutdown

R2(config)# interface serial0/0/0
R2(config-if)# ip address 172.20.100.2 255.255.255.0
R2(config-if)# ip ospf network non-broadcast
R2(config-if)# no shutdown

R3(config)# interface serial0/0/0
R3(config-if)# ip address 172.20.100.3 255.255.255.0
R3(config-if)# ip ospf network non-broadcast
R3(config-if)# no shutdown

R1(config)# router ospf 1
R1(config-router)# network 172.20.100.0 0.0.0.255 area 0
R1(config-router)# neighbor 172.20.100.2
R1(config-router)# neighbor 172.20.100.3

-- Since non-broadcast networks still elect a
-- DR/BDR like broadcast networks, but cannot
-- discover neighbors via multicast, R1's
-- higher priority makes it the natural DR
-- choice for this hub-and-spoke design

R2(config)# router ospf 1
R2(config-router)# network 172.20.100.0 0.0.0.255 area 0
R2(config-router)# neighbor 172.20.100.1

R3(config)# router ospf 1
R3(config-router)# network 172.20.100.0 0.0.0.255 area 0
R3(config-router)# neighbor 172.20.100.1

R1# show ip ospf neighbor

Neighbor ID     Pri   State           Address
172.20.100.2     1     FULL/DROTHER    172.20.100.2
172.20.100.3     1     FULL/DROTHER    172.20.100.3
-- R1 correctly sees both spokes as full
-- neighbors, despite R2 and R3 having no
-- direct connectivity to each other

Key Takeaway

The neighbor command exists specifically because NBMA networks cannot use multicast hello discovery — without it, no adjacency would ever form regardless of how correctly everything else is configured, since OSPF simply has no other way to learn who its potential neighbors are on this network type.

Written & researched by Dr. Shahin Siami

Related Articles

Hands-On Lab: Configuring Standard Numbered ACLs

This hands-on lab configures a standard numbered ACL to permit traffic from a specific subnet while denying everything else, applies it to the correct interface and direction, and verifies both permitted and denied traffic behave as expected.

Continue

Hands-On Lab: Configuring VRRP

This hands-on lab configures VRRP between two routers as the open-standard alternative to HSRP, using a real interface address as the virtual IP, and verifies Master/Backup roles and automatic failover behavior.

Continue

Hands-On Lab: Configure GLBP Redundancy

This hands-on lab configures GLBP between two routers to achieve load balancing across both routers simultaneously, verifying that different hosts receive different virtual MAC addresses and therefore route through different physical gateways.

Continue

Hands-On Lab: Implementing HSRP

This hands-on lab configures HSRP between two routers sharing a virtual gateway address, sets priority and preempt to control which router is active, and verifies automatic failover when the active router fails.

Continue

Hands-On Lab: Verifying the EIGRP Database

This hands-on lab examines the EIGRP topology table directly, identifying the successor and feasible successor for a destination network, and demonstrates how this underlying data explains what appears in the IP routing table.

Continue

Hands-On Lab: Summarizing Routes with EIGRP

This hands-on lab manually configures interface-level route summarization in EIGRP, advertising a single aggregated route instead of several specific subnets, and verifies the automatically created Null0 discard route that prevents summarization-related loops.

Continue