OSPF-v3 with NBMA semi-broken

I am trying to use NBMA with OSPF-v3 in RouterOS 5.0rc7.

To make a long story as short as possible, you have to use link-local addresses to communicate with your OSPFv3 NBMA neighbor, so when setting up /routing ospf-v3 nbma-neighbor you must use the link-local fe80::XXXX:XXXX:XXXX:XXXX type of address of your neighbor that you intend to talk to. Unfortunately it takes slightly over 3 minutes for OSPF-v3 NBMA neighbors to find each other with this setup, so I don’t really want to use it in production.

This would probably work great if you could use fe80::XXXX:XXXX:XXXX:XXXX%ether3 as your NBMA neighbor, but the %interfacename part is not accepted in RouterOS anywhere that I’ve found except by the /ping command which does work fine:

[admin@MikroTik] /routing ospf-v3> /ping fe80::20c:ffff:ff75:ff8a
HOST                                    SIZE  TTL TIME  STATUS
... (hangs forever here until you CTRL-C)

[admin@MikroTik] /routing ospf-v3> /ping fe80::20c:ffff:ff75:ff8a%ether3
HOST                                    SIZE  TTL TIME  STATUS
fe80::20c:ffff:ff75:ff8a                56    64  3ms   echo reply

I am only guessing here, but without specifying the %interfacename in your NBMA neighbor address it is probably taking 3 minutes to figure out which interface that fe80:: neighbor could be on. I am surprised that it succeeds in finding it at all.


I also just encountered another strange behavior that I’ll just roll into this post, I just reproduced it twice in a row on two different routers one after another. It seems I can’t remove ospf-v3 nbma neighbors from my configuration unless it is done immediately after a print command:

[admin@MikroTik] /routing ospf-v3> nbma-neighbor remove 0
no such item (4)
[admin@Mikrotik] /routing ospf-v3> nbma-neighbor remove 0
no such item (4)
[admin@MikroTik] /routing ospf-v3> nbma-neighbor print
Flags: X - disabled
 #   ADDRESS                                 POLL-INTERVAL        PRIORITY
 0   fe80::20c:ffff:ff75:ff8a                10s                  0
[admin@MikroTik] /routing ospf-v3> nbma-neighbor remove 0
[admin@MikroTik] /routing ospf-v3>

It seems I can’t remove ospf-v3 nbma neighbors from my configuration unless it is done immediately after a print command:

That is how console works. You have to ‘print’ item number are written in buffer and only then those numbers can be used.

Ok, that is just a result of my being relatively new to RouterOS, my apologies on that one.

The rest of the post should still hopefully be useful, though.