From: Nico Schottelius <nico.schottelius@ungleich.ch>
To: "Daniel Gröber" <dxld@darkboxed.org>
Cc: Nico Schottelius <nico.schottelius@ungleich.ch>,
Roman Mamedov <rm@romanrm.net>, tlhackque <tlhackque@yahoo.com>,
wireguard@lists.zx2c4.com
Subject: Re: Src addr code review (Was: Source IP incorrect on multi homed systems)
Date: Mon, 20 Feb 2023 10:47:36 +0100 [thread overview]
Message-ID: <87leksbr5n.fsf@ungleich.ch> (raw)
In-Reply-To: <20230219224200.g5mwcaybee4hujov@House.clients.dxld.at>
Hey Daniel,
thanks a lot for diving in ...
Daniel Gröber <dxld@darkboxed.org> writes:
> Let's look at the code (heavily culled):
>
> struct flowi4 fl = {
> .saddr = endpoint->src4.s_addr,
> };
> if (cache)
> rt = dst_cache_get_ip4(cache, &fl.saddr);
What I am wondering is, how did it get into the cache in the first place?
> [...]
>
> @Nico could it perhaps simply be that you're hitting one of these zero'ing
> cases and that's why it's using regular kernel src addr selection instead
> of the cached endpoint src4 address?
That could absolutely be the case. What is funky is that I see the
problem on two very different systems, but maybe it's a good time to
elaborate on this:
- System A:
- Wireguard module loaded on the host
- Wireguard wg-quick used within a kubernetes pods that has
permissions for managing wireguard
- The same pod also runs bird for BGP peering
- System B:
- Wireguard running as wireguard-go on OpnSense / FreeBSD
- BGP running with frr
Both systems exhibit the behaviour, but maybe it's better to focus on
System A first, as this seems to be more the "upstream" source.
Best regards,
Nico
--
Sustainable and modern Infrastructures by ungleich.ch
next prev parent reply other threads:[~2023-02-20 9:55 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-02-18 20:14 Source IP incorrect on multi homed systems Nico Schottelius
[not found] ` <CAHx9msc1cNV80YU7HRmQ9gsjSEiVZ=pb31aYqfP62hy8DeuGZA@mail.gmail.com>
2023-02-18 22:34 ` Nico Schottelius
2023-02-19 0:45 ` Mike O'Connor
2023-02-19 8:01 ` Nico Schottelius
2023-02-19 9:19 ` Mikma
2023-02-19 12:04 ` Nico Schottelius
2023-02-19 12:10 ` Nico Schottelius
2023-02-19 18:59 ` Peter Linder
[not found] ` <2ed829aaed9fec59ac2a9b32c4ce0a9005b8d8b850be81c81a226791855fe4eb@mu.id>
2023-02-19 12:13 ` Nico Schottelius
2023-02-19 14:39 ` Christoph Loesch
2023-02-19 16:32 ` David Kerr
2023-02-19 16:54 ` Sebastian Hyrvall
2023-02-19 18:04 ` Janne Johansson
2023-02-19 18:08 ` Sebastian Hyrvall
2023-02-19 20:11 ` Nico Schottelius
2023-02-19 17:05 ` tlhackque
2023-02-19 18:37 ` David Kerr
2023-02-19 18:52 ` tlhackque
2023-02-19 18:42 ` tlhackque
2023-02-19 20:18 ` Nico Schottelius
2023-02-19 20:42 ` Roman Mamedov
2023-02-19 21:19 ` Nico Schottelius
2023-02-19 22:06 ` tlhackque
2023-02-19 22:42 ` Src addr code review (Was: Source IP incorrect on multi homed systems) Daniel Gröber
2023-02-20 0:28 ` 曹煜
2023-02-20 10:40 ` Nico Schottelius
2023-02-20 11:21 ` 曹煜
2023-02-20 9:47 ` Nico Schottelius [this message]
2023-02-20 20:43 ` dxld
2023-02-19 21:39 ` Source IP incorrect on multi homed systems tlhackque
[not found] ` <CADGd2DoE6TCtCxxWL7JWyNW5+yy_Pe+9MNzHznbudMWLTXQreA@mail.gmail.com>
2023-02-19 18:30 ` Fwd: " John Lauro
2023-02-19 22:28 ` tlhackque
2023-02-20 0:58 ` Luiz Angelo Daros de Luca
2023-02-19 20:02 ` Nico Schottelius
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87leksbr5n.fsf@ungleich.ch \
--to=nico.schottelius@ungleich.ch \
--cc=dxld@darkboxed.org \
--cc=rm@romanrm.net \
--cc=tlhackque@yahoo.com \
--cc=wireguard@lists.zx2c4.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.