KRT: Received route with strange next-hop
I'm trying to figure out why BIRD is throwing this error every time it scans the kernel routing table: <ERR> KRT: Received route 216.155.132.254/32 with strange next-hop 45.63.4.188 <WARN> Netlink: File exists I have two routes relevant to this one: # ip route | grep 45.63.4.188 45.63.4.188 dev veth0 scope link 216.155.132.254 via 45.63.4.188 dev veth0 proto bird The 45.63.4.188 route was added by me (manually), the 216.155.132.254 was added via BIRD (BIRD learned it via BGP). So, to me this looks like bird adding the route to the kernel, then getting confused why the route exists. Aside from this warning, everything appears to be working fine. Linux routes the traffic properly, BIRD readvertises this route properly. Any thoughts here? I think I can probably suppress this warning by removing the 'ng->scope == SCOPE_HOST' check from netlink.c, but I'm not entirely sure why that's there to begin with.
On Wed, Nov 18, 2015 at 01:01:44PM -0500, Brian Rak wrote:
I'm trying to figure out why BIRD is throwing this error every time it scans the kernel routing table:
<ERR> KRT: Received route 216.155.132.254/32 with strange next-hop 45.63.4.188 <WARN> Netlink: File exists
I have two routes relevant to this one:
# ip route | grep 45.63.4.188 45.63.4.188 dev veth0 scope link 216.155.132.254 via 45.63.4.188 dev veth0 proto bird
The 45.63.4.188 route was added by me (manually), the 216.155.132.254 was added via BIRD (BIRD learned it via BGP).
Hi Generally, BIRD expects that the next hop address is reachable by interface address prefix. In your case you just add device route for 45.63.4.188/32 instead of adding peer address of 45.63.4.188 to veth0. It is true that for the kernel the difference does not matter in this regard and that the warning is not important in this case. -- Elen sila lumenn' omentielvo Ondrej 'Santiago' Zajicek (email: santiago@crfreenet.org) OpenPGP encrypted e-mails preferred (KeyID 0x11DEADC3, wwwkeys.pgp.net) "To err is human -- to blame it on a computer is even more so."
On 11/19/2015 2:52 AM, Ondrej Zajicek wrote:
On Wed, Nov 18, 2015 at 01:01:44PM -0500, Brian Rak wrote:
I'm trying to figure out why BIRD is throwing this error every time it scans the kernel routing table:
<ERR> KRT: Received route 216.155.132.254/32 with strange next-hop 45.63.4.188 <WARN> Netlink: File exists
I have two routes relevant to this one:
# ip route | grep 45.63.4.188 45.63.4.188 dev veth0 scope link 216.155.132.254 via 45.63.4.188 dev veth0 proto bird
The 45.63.4.188 route was added by me (manually), the 216.155.132.254 was added via BIRD (BIRD learned it via BGP). Hi
Generally, BIRD expects that the next hop address is reachable by interface address prefix. In your case you just add device route for 45.63.4.188/32 instead of adding peer address of 45.63.4.188 to veth0. It is true that for the kernel the difference does not matter in this regard and that the warning is not important in this case.
What do you mean by 'device route'? I'm not sure how that differs from what I have, and not finding a lot of references to that phrase online.
On Thu, Nov 19, 2015 at 08:25:01AM -0500, Brian Rak wrote:
Generally, BIRD expects that the next hop address is reachable by interface address prefix. In your case you just add device route for 45.63.4.188/32 instead of adding peer address of 45.63.4.188 to veth0. It is true that for the kernel the difference does not matter in this regard and that the warning is not important in this case.
What do you mean by 'device route'? I'm not sure how that differs from what I have, and not finding a lot of references to that phrase online.
Hi Sorry for late answer, 'device route' i call a route for directly attached network prefix, with associated iface but without associated gateway IP. Perhaps there is a better / more established term for such routes. -- Elen sila lumenn' omentielvo Ondrej 'Santiago' Zajicek (email: santiago@crfreenet.org) OpenPGP encrypted e-mails preferred (KeyID 0x11DEADC3, wwwkeys.pgp.net) "To err is human -- to blame it on a computer is even more so."
On 11/25/2015 5:51 AM, Ondrej Zajicek wrote:
On Thu, Nov 19, 2015 at 08:25:01AM -0500, Brian Rak wrote:
Generally, BIRD expects that the next hop address is reachable by interface address prefix. In your case you just add device route for 45.63.4.188/32 instead of adding peer address of 45.63.4.188 to veth0. It is true that for the kernel the difference does not matter in this regard and that the warning is not important in this case. What do you mean by 'device route'? I'm not sure how that differs from what I have, and not finding a lot of references to that phrase online. Hi
Sorry for late answer, 'device route' i call a route for directly attached network prefix, with associated iface but without associated gateway IP. Perhaps there is a better / more established term for such routes.
Sorry, my spam filter was delaying this. That's what I have I think? I have the '45.63.4.188 dev veth0 scope link' route, I'm not aware of any other way to add this (and it doesn't use a gateway IP). Are you talking about the '216.155.132.254 via 45.63.4.188 dev veth0 proto bird' route? If so, I have no way to change that. BIRD itself is adding that route based on information from BGP. AFAIK, there is no way to specify the next hop is an interface via BGP.
On Sat, Nov 28, 2015 at 04:16:54PM -0500, Brian Rak wrote:
Sorry for late answer, 'device route' i call a route for directly attached network prefix, with associated iface but without associated gateway IP. Perhaps there is a better / more established term for such routes.
Sorry, my spam filter was delaying this.
That's what I have I think? I have the '45.63.4.188 dev veth0 scope link' route, I'm not aware of any other way to add this (and it doesn't use a gateway IP).
Well, the recommended way is to add ptp address: ip addr add A.B.C.D peer 45.63.4.188 dev veth0 instead of just the route (when ptp address is added, the route is also added by the kernel) -- Elen sila lumenn' omentielvo Ondrej 'Santiago' Zajicek (email: santiago@crfreenet.org) OpenPGP encrypted e-mails preferred (KeyID 0x11DEADC3, wwwkeys.pgp.net) "To err is human -- to blame it on a computer is even more so."
participants (2)
-
Brian Rak -
Ondrej Zajicek