OSPFv3 - NBMA

I’m trying to use OSPFv3 with NBMA. But it seems very problematic. System version 6.15 on x86.

Only way, to achieve Full state (situation, when two routers actually exchange routing informations) is this:

R1 (Router ID 0.0.0.1)
Instances => interface=ether1, priority=1, network type=nbma
NBMA Neighbors => address= fe80::link-local-address-r2, priority=1, enabled

R2 (Router ID 0.0.0.2)
Instances => interface=ether1, priority=0, network type=nbma
NBMA Neighbors => address=fe80::link-local-address-r1, priority=1, disabled

Now, I have in R2 Neighbors
RouterID=0.0.0.1, address=address=fe80::link-local-address-r1, interface=ether1

In R1 Neighbors (wrongly!)
RouterID=0.0.0.0, address=address= fe80::link-local-address-r2,interface=ether1

Now, I have to enable NBMA Neighbor of R2 and next disable NBMA Neighbor of R1
Now is in R1 Neighbors
RouterID=0.0.0.2, address=address= fe80::link-local-address-r2,interface=ether1

And routing information are exchanged… really is this only way, to setup OSPFv3 with NBMA? I need to avoid broadcast. OSPFv2 seems to work fine.

10 hours of trying, I’m desperate. Please, help! :frowning:

NBMA is a ‘simulation’ of a real broadcast network with hard-wired adjacencies.

All OSPF communications on a broadcast network are between the DR and the other routers.
One router can be the backup DR to speed reconvergence if DR becomes isolated or goes down.
It also communicates with everyone. All non (B)DR routers don’t talk to each other directly.

Here’s a drawing from Cisco’s learning page:
7039-spf8.gif
On an ethernet switch, it doesn’t matter so much which router becomes DR (except for CPU load).

On wireless, it is considerably less efficient and more error-prone of the DR is behind a station and there are other routers on other stations. As such, you should set priorities so that the central router at the AP side becomes the DR for the network. Since this is NBMA, you have to define all of the relationships manually. Make the adjacencies look like the picture above.

To force the DR to be R1 (assumed to be the router at the AP site):

Make every neighbor in R1’s configuration have priority=0 (never becomes DR) and on every other neighbor, just configure R1 with priority 10. If you want a backup DR (make sure it’s upstream from the AP if at all possible) then make everyone assign it a priority of 5. It should assign R1 a 10, and all others a 0.

This should get you going.

p.s. - NBMA doesn’t completely remove the multicast (ospf doesn’t broadcast) behavior of OSPF. It removes the multicast neighbor discovery portion: NBMA defines a type of behavior that is appropriate when the underlying network does not support broadcasts. (frame relay, X.25, and ATM are classic examples)

Thank you for answer.

On OSPFv2 with NBMA works everything as you displayed.

But… on OSPFv3 with NBMA I have to use this:

Setup:

Now, you have in Log this:

Solution?

Disable and after it finds Neighbor re-enable NBMA Neighbor on R2, next on R1

Now, It’s working




But after restart, doesn’t work. I could solve it with script, which disables and enables interface, but … it’s really neccessary? :frowning:

My communication with Mikrotik Support, so I will wait for future update…

--------- QUESTION ---------
Hi!

Is OSPFv3 with network type nbma fully operational?

Thank you

--------- ANSWER ---------

Hello Jan,

It might not work properly.

Regards,
Sergejs