Hello,

This is probably fairly trivial but how can I tell bird (or Linux) that 
"connected routes" should have higher precedence than the routes from OSPF 
(even if they may be more specific)?

I have the following issue: I have a bunch of connected routers, connected via 
/31 links. There is also a loop.

Now a Mikrotik OSPF node sends me a route (that it can reach) for a station 
that's actually directly connected. Unfortunately the system takes the OSPF 
route. But of course, the directly connected interface route should always be 
preferred.

Example:

# birdc show ospf neigh
BIRD 1.6.8 ready.
edge1:
Router ID       Pri          State      DTime   Interface  Router IP
203.0.113.193      1     Full/PtP        00:36   gre1      203.0.113.255
203.0.113.194      1     Full/PtP        00:37   wg1       203.0.113.225

# birdc show route | grep '203.0.113.22\(4\|5\)'
203.0.113.224/32    dev wg1 [edge1 2021-11-12] * I (150/0) [192.168.164.183]
203.0.113.225/32    via 203.0.113.255 on gre1 [edge1 06:18:20] * I (150/110) 
[203.0.113.194]

# ip route list | grep '203.0.113.22\(4\|5\)'
203.0.113.224/31 dev wg1 proto kernel scope link src 203.0.113.224
203.0.113.225 via 203.0.113.255 dev gre1 proto bird


Here we can see that to reach 203.0.113.225 (my desired endpoint), there are 
two routes: 203.0.113.224/31 which is the "connected route" set up 
automatically by Linux when I create the interface.

And "203.0.113.225 via 203.0.113.255" which I receive via OSPF from a Mikrotik 
router which can also see this node.

Even if the OSPF one is more specific, of course, I want the local connected 
route to have preference.

Thanks!





Reply via email to