On Mon, 18 Dec 2023 14:08:04 +0100
Claudio Jeker <cje...@diehard.n-r-g.com> wrote:

> On Mon, Dec 18, 2023 at 01:53:50PM +0100, Marko Cupać wrote:
> > What OpenBSD FAQ https://www.openbsd.org/faq/faq6.html#Multipath
> > says for a bit different scenario applies to some extent for this
> > one as well:
> > 
> > "It's worth noting that if an interface used by a multipath route
> > goes down (i.e., loses carrier), the kernel will still try to
> > forward packets using the route that points to that interface. This
> > traffic will of course be blackholed and end up going nowhere. It's
> > highly recommended to use ifstated(8) to check for unavailable
> > interfaces and adjust the routing table accordingly."
> 
> Uhm. This is not accurate. The kernel tracks interface state on
> routes and will not select a multipath route that is not considered
> UP. There is a smaller issue when there is no other multipath route.
> The lookup will select the route and not fall back to a less specific
> one that is still up.
> 
> Could please someone update the FAQ?

I would like to contribute to the FAQ, but I'm not sure in which way to
go. According to my tests, above is not literally correct in described
case (route goes down on lost carrier). However, in frequent scenario
where interface is up, route is valid, but ISP's side won't route our
packets (which is perceived as "link is down" by a user), a mechanism
is still needed to prevent sending packets over that interface.

Would "It's worth noting that if an interface used by a multipath route
loses data link while physical link is active..." be more appropriate?

More radical option would be to describe rdomain-based solution instead
of current examples in both:
https://www.openbsd.org/faq/faq6.html#Multipath
https://www.openbsd.org/faq/pf/pools.html#outgoing

Best regards,

-- 
Before enlightenment - chop wood, draw water.
After  enlightenment - chop wood, draw water.

Marko Cupać
https://www.mimar.rs/

Reply via email to