On Tue, 22 Aug 2023 15:29:52 +1000 David Gibson <david(a)gibson.dropbear.id.au> wrote:In tap6_handler() saddr is initialized to the IPv6 source address from the incoming packet. However part way through, but before organizing the packet into a "sequence" we set it unconditionally to the guest's assigned address. We don't do anything equivalent for IPv4.This was there from the beginning, and the reason, if I recall correctly, is that a guest, depending on how far it got in its configuration, might suddenly switch from using a link-local to a global unicast address -- and we didn't handle that in TCP routines. This should be fixed now, though, and:This doesn't make a lot of sense: if the guest is using a different source address it makes sense to consider these different sequences of packets and we shouldn't try to combine them together....right, that would be the wrong place anyway. -- Stefano