Date: Mon, 15 Sep 2025 19:28:51 +0200 From: Michael Tuexen <michael.tuexen@lurchi.franken.de> To: Karl Denninger <karl@denninger.net> Cc: freebsd-net@freebsd.org Subject: Re: IPv6 networking problems in 14.3 Message-ID: <85063FCE-0FCE-4E4D-B03D-2B67FCCC21B7@lurchi.franken.de> In-Reply-To: <d6c1831f-fa17-4518-8b04-dfda99ac4066@denninger.net> References: <4C00D174-21FE-47C4-A30A-A382138571A5@keehole.org> <A9EBD993-D77D-49F9-9FFB-0E42EA0BEE6E@keehole.org> <DC84D8EC-B084-4AF1-B3F4-413323DA613A@distal.com> <dfa7af0c-334f-4b36-86dc-b2d75d1477d3@denninger.net> <E06E4F40-0E2C-4C4E-9C27-3BCF086347FA@distal.com> <6fce77fb-9ba8-4c7b-bb9b-0e337d91f278@denninger.net> <1780EFAC-DA9C-4593-BE37-28E7FFCE4388@distal.com> <6e7a8fc6-12c8-4097-ad70-bcb1e4967ade@denninger.net> <092f8b7a-9b98-4e2a-b6c5-361b40549cce@denninger.net> <75B331C2-856A-4977-ADCD-D7FA6854AA03@FreeBSD.org> <d6c1831f-fa17-4518-8b04-dfda99ac4066@denninger.net>
next in thread | previous in thread | raw e-mail | index | archive | help
> On 15. Sep 2025, at 19:16, Karl Denninger <karl@denninger.net> wrote: >=20 > On 9/15/2025 13:00, Michael Tuexen wrote: >>> On 15. Sep 2025, at 14:59, Karl Denninger <karl@denninger.net> = wrote: >>>=20 >>> Hmmmmm.... just came in via git pull: >>> commit ffd956a3918cd5e64c8850eb77247428a29f7221 >>> Author: Michael Tuexen <tuexen@FreeBSD.org> >>> Date: Wed Sep 10 17:13:35 2025 +0200 >>>=20 >>> dhclient: improve UDP checksum handling >>>=20 >>> When sending UDP packets: >>> * compute the checksum in the correct order. This only has an impact >>> if the length of the payload is odd. >>> * don't send packet with a checksum of zero, use 0xffff instead as >>> required. >>> When receiving UDP packets: >>> * don't do any computations when the checksum is zero. >>> * compute the checksum in the correct order. This only has an impact >>> if the length of the payload is odd. >>> * when computing the checksum, store the pseudo header checksum >>> * if the checksum is computed as zero, use 0xffff instead. >>> * also accept packets, when the checksum in the packet is the pseudo >>> header checksum. >>> The last point fixes a problem when the DHCP client runs in a VM, >>> the DHCP server runs on the host serving the VM and the network >>> interface supports transmit checksum offloading. Since dhclient >>> doesn't use UDP sockets but bpf devices to read the packets, the >>> checksum will be incorrect and only contain the checksum of the >>> pseudo header. >>>=20 >>> This could potentially apply to other bpf-using things -- which = includes dhcpcd. And you have tso/lro turned on. >>>=20 >> Hi Karl, >>=20 >> this is true. Do we have an dhcpd in-tree? Or are you aware of other = in-tree >> programs which use UDP via bpf and not via the socket interface? >>=20 >> Best regards >> Michael > dhclient uses it in base but dhcp6c is, I believe, out of = packages/ports (as is dhcpcd which replaces both dhclient and dhcp6c in = terms of functionality.) OK. But this is not something I can easily investigate and possibly fix, = since that software is not in the tree I can make changes to. I think fixes to = ports should go upstream. Best regards Michael > One of dhcp6c or dhcpcd is necessary to get a delegation from an ISP; = you can get a SLACC address without either simply by enabling it such = as: > ifconfig_mce0_ipv6=3D"inet6 accept_rtadv" > rtsold_enable=3D"YES" > That is sufficient on a client machine if your gateway hands out = addresses based on SLACC, but the gateway then has to get the upstream = delegation (and run rtadvd in order to send the routing data out on the = local side so your SLACC client can pick it up) so unless you have that = delegation hard-coded in your edge device on the outside interface one = of the above has to be running on the gateway, presuming its a FreeBSD = gateway of course. > --=20 > Karl Denninger > karl@denninger.net > The Market Ticker > [S/MIME encrypted email preferred]
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?85063FCE-0FCE-4E4D-B03D-2B67FCCC21B7>