public inbox for passt-dev@passt.top
 help / color / mirror / code / Atom feed
* [PATCH v2 00/10] Optionally copy all routes and addresses for pasta, allow gateway-less routes
@ 2023-05-21 23:42 Stefano Brivio
  2023-05-21 23:42 ` [PATCH v2 01/10] netlink: Fix comment about response buffer size for nl_req() Stefano Brivio
                   ` (9 more replies)
  0 siblings, 10 replies; 23+ messages in thread
From: Stefano Brivio @ 2023-05-21 23:42 UTC (permalink / raw)
  To: passt-dev; +Cc: Callum Parsey, me, David Gibson, lemmi, Andrea Arcangeli

This series, along with pseudo-related fixes, enables:

- optional copy of all routes from selected interface in outer
  namespace, to fix the issue reported by Callum at:
    https://github.com/containers/podman/issues/18539

- optional copy of all addresses, mostly for consistency. It doesn't,
  however, enable assignment of multiple addresses in the sense
  requested at:
    https://bugs.passt.top/show_bug.cgi?id=47

  because the addresses still need to be present on the host, and
  the "outer" address isn't selected depending on the address used
  inside the container

- operation without a gateway address. This is related to:
    https://bugs.passt.top/show_bug.cgi?id=49

  but Wireguard endpoints established outside the container
  can't be used yet as outbound interface (without the workaround
  reported there) for a number of reasons I'm still investigating.
  In any case, the correct route is now configured in the container,
  even without a default gateway on the corresponding host route,
  so we're a bit closer to support that configuration out of the box.

v2:

- in 3/10, repeat the netlink request once for each RTM_NEWROUTE we're
  going to send as part of the request: routes might depend on each
  other, and this is a somewhat rudimentary, but seemingly robust
  approach to insert all the routes we can insert, without explicitly
  calculating dependencies

- Cc: Andrea, reporter for the issue fixed in 4/10


Stefano Brivio (10):
  netlink: Fix comment about response buffer size for nl_req()
  pasta: Improve error handling on failure to join network namespace
  netlink: Add functionality to copy routes from outer namespace
  conf: --config-net option is for pasta mode only
  conf, pasta: With --config-net, copy all routes by default
  Revert "conf: Adjust netmask on mismatch between IPv4 address/netmask
    and gateway"
  conf: Don't exit if sourced default route has no gateway
  netlink: Add functionality to copy addresses from outer namespace
  conf, pasta: With --config-net, copy all addresses by default
  passt.h: Fix description of pasta_ifi in struct ctx

 conf.c    |  81 +++++++++++++++++++-------------
 netlink.c | 135 +++++++++++++++++++++++++++++++++++++++++-------------
 netlink.h |  13 ++++--
 passt.1   |  25 +++++++++-
 passt.h   |   8 +++-
 pasta.c   |  26 +++++++----
 6 files changed, 207 insertions(+), 81 deletions(-)

-- 
2.39.2


^ permalink raw reply	[flat|nested] 23+ messages in thread

end of thread, other threads:[~2023-05-27  2:26 UTC | newest]

Thread overview: 23+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-05-21 23:42 [PATCH v2 00/10] Optionally copy all routes and addresses for pasta, allow gateway-less routes Stefano Brivio
2023-05-21 23:42 ` [PATCH v2 01/10] netlink: Fix comment about response buffer size for nl_req() Stefano Brivio
2023-05-21 23:42 ` [PATCH v2 02/10] pasta: Improve error handling on failure to join network namespace Stefano Brivio
2023-05-21 23:42 ` [PATCH v2 03/10] netlink: Add functionality to copy routes from outer namespace Stefano Brivio
2023-05-22  8:42   ` David Gibson
2023-05-22  9:58     ` Stefano Brivio
2023-05-23  3:08       ` David Gibson
2023-05-23  6:14         ` Stefano Brivio
2023-05-27  2:06           ` David Gibson
2023-05-21 23:42 ` [PATCH v2 04/10] conf: --config-net option is for pasta mode only Stefano Brivio
2023-05-21 23:42 ` [PATCH v2 05/10] conf, pasta: With --config-net, copy all routes by default Stefano Brivio
2023-05-22  8:44   ` David Gibson
2023-05-22  9:59     ` Stefano Brivio
2023-05-21 23:42 ` [PATCH v2 06/10] Revert "conf: Adjust netmask on mismatch between IPv4 address/netmask and gateway" Stefano Brivio
2023-05-21 23:42 ` [PATCH v2 07/10] conf: Don't exit if sourced default route has no gateway Stefano Brivio
2023-05-22  8:48   ` David Gibson
2023-05-22 15:29     ` Stefano Brivio
2023-05-21 23:42 ` [PATCH v2 08/10] netlink: Add functionality to copy addresses from outer namespace Stefano Brivio
2023-05-22  8:51   ` David Gibson
2023-05-21 23:42 ` [PATCH v2 09/10] conf, pasta: With --config-net, copy all addresses by default Stefano Brivio
2023-05-22  8:53   ` David Gibson
2023-05-22 15:30     ` Stefano Brivio
2023-05-21 23:42 ` [PATCH v2 10/10] passt.h: Fix description of pasta_ifi in struct ctx Stefano Brivio

Code repositories for project(s) associated with this public inbox

	https://passt.top/passt

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for IMAP folder(s).