(Forwarding this because I accidentally fat-fingered the "Reject"
button in hyperkitty)
----- Forwarded message from Stefano Brivio <sbrivio(a)redhat.com> -----
Date: Tue, 24 Jun 2025 15:31:45 +0200
From: Stefano Brivio <sbrivio(a)redhat.com>
To: "Richard W.M. Jones" <rjones(a)redhat.com>
Cc: "Aithal, Srikanth" <sraithal(a)amd.com>, guestfs(a)lists.libguestfs.org
Subject: Re: appliance not getting ipv4 assigned when host kernel has
CONFIG_IPV6_SIT builtin
On Tue, 24 Jun 2025 14:03:17 +0100
"Richard W.M. Jones" <rjones(a)redhat.com> wrote:
On Tue, Jun 24, 2025 at 02:33:43PM +0200, Stefano Brivio wrote:
> On Tue, 24 Jun 2025 13:15:58 +0100
> "Richard W.M. Jones" <rjones(a)redhat.com> wrote:
> > If passt is like slirp, then it would originate connections itself
> > (ie. calling connect(2) on the host side), so I don't understand how
> > the address family would be relevant.
>
> Indeed, it does that, but it needs to pass an address (including family)
> to connect(2), and that's the destination address of the original
> connection as seen from the guest. You can't connect to 88.198.0.164
> using IPv6.
OK I see, thanks. Isn't there some IPv4-in-IPv6 thing passt could do
in this case?
CLAT (once implemented), but not in this case, because there's no IPv6
connectivity on the host, and no IPv6 connectivity in the guest either
(because init/appliance is missing the 'ip link $iface up' I mentioned).
Or could passt choose the right address family to use
in connect(2) based on the address that the appliance passes across?
It already does that... nothing would work otherwise. But here passt is
getting no traffic at all.
I think also we're confusing what happens on the host with what
happens in the appliance a bit (or maybe I am). Inside the appliance
I'd like to go for this simple change:
- iface=$(ls -I all -I default -I lo /proc/sys/net/ipv4/conf)
+ iface=$(ls -I all -I default -I lo -I sit0 /proc/sys/net/ipv4/conf)
Is there anything that needs to happen on the host side?
No, not really.
--
Stefano
----- End forwarded message -----
--
Richard Jones, Virtualization Group, Red Hat
http://people.redhat.com/~rjones
Read my programming and virtualization blog:
http://rwmj.wordpress.com
libguestfs lets you edit virtual machines. Supports shell scripting,
bindings from many languages.
http://libguestfs.org