From nobody Sat May 31 00:20:03 2025 X-Original-To: net@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4b8LN34nhJz5x7p8 for ; Sat, 31 May 2025 00:20:03 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4b8LN33sh0z3cx6 for ; Sat, 31 May 2025 00:20:03 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1748650803; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=jzU4pwahqC6tUmz0CXmfSWudkntf/Lotr5J8CmJat9M=; b=wEOes5cQoOG98E2YMH6K8HByZWW1mXDMffGj6eX1hEnC9HlLm/eKCf1ra6Q/zP7G7ges70 XOv+45Kj6aXAhwq6BpLC0FM8AZgAHVrMr8GMNAn338LtDUqppYThBcjtjZmE3j2rsnPctz 2YmhjQ6eQszY11MvDjjC43Z/FupJGFKhYmyThzFhl3Au3xG57k+NbC6HF3CfQARTTXsgCA fcBvcVCF+548eOYAMJy/XoNwzn2FxP+y6hP7y45VQj6wWXEBUSJRESbSP0tIE79clT0Wug 2yFkqQVdbdLtjAoPswT9Gx0jiimGzjQodCcVcphmVCG3YxKmGaQWdMBlOeahVQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1748650803; a=rsa-sha256; cv=none; b=oegEg3ddDhAXIbfPT85399pPNryqDheMa6T8qQDUHdCwmRORtSyr4cVTkIz25Y0oUP85el 4PIDlYo5vDiKq0U8VLaPuiiTER/JIymcIroR6bm8areRpqSiK1Bse4weMu6pDMMw6+RPOK yE5M3FHtE7qD36Os+S8+VhdeO6KpfCFka/KNi/1pUJSO16gJBzp+AUQXLN4/AxadBEEFbY ahKfKG4xhPc89yB/vpPAeCko3fIG1svLGnTYi+dGGd0wX8mG5MothuRk/y2I5jZKJnW+QF CNxdqxyARucxngifYkYXr3E6TqxuSq2n+jTSK12/NsOnzLZW9Cd9U+PyNs8DCg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1748650803; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=jzU4pwahqC6tUmz0CXmfSWudkntf/Lotr5J8CmJat9M=; b=ZcRQmyjjtRV9adRKpFEdc8wr78EMFemro1H9Z3PP9icIX12cF/ZooWAkDjkyuhklpXvvgV XNdH0MZixGsmEY06t1tW9juJLY6kN7tVuDTLO/6RXGyhGeFABiqBk3wjdqM8Im5EEeRFPH nUwSkiYAFNUYVDxnYKSGwais5mSlJH+VSx1ebGA/qVpbi0Soc/UxCE88BERLNlUwppHT5E xSLSU8vgLy5/D8DXCDO+SKC+tl7cfV/GPHIRXBEuBwb3XntyxBAhB0qcmLjQwQcULWwKoJ ygZv5H97ULdbthBlC7Cn6Zmb1rtGHDlGXdNpb/WYXttAeqPGN0caOvSuzWQf0A== Received: from kenobi.freebsd.org (kenobi.freebsd.org [IPv6:2610:1c1:1:606c::50:1d]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4b8LN33RQSzD3 for ; Sat, 31 May 2025 00:20:03 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) Received: from kenobi.freebsd.org ([127.0.1.5]) by kenobi.freebsd.org (8.15.2/8.15.2) with ESMTP id 54V0K34o092293 for ; Sat, 31 May 2025 00:20:03 GMT (envelope-from bugzilla-noreply@freebsd.org) Received: (from www@localhost) by kenobi.freebsd.org (8.15.2/8.15.2/Submit) id 54V0K3Tx092291 for net@FreeBSD.org; Sat, 31 May 2025 00:20:03 GMT (envelope-from bugzilla-noreply@freebsd.org) X-Authentication-Warning: kenobi.freebsd.org: www set sender to bugzilla-noreply@freebsd.org using -f From: bugzilla-noreply@freebsd.org To: net@FreeBSD.org Subject: [Bug 286322] IPv6 doesn't work across different FIBs (epair) Date: Sat, 31 May 2025 00:20:03 +0000 X-Bugzilla-Reason: AssignedTo X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: Base System X-Bugzilla-Component: kern X-Bugzilla-Version: 14.2-STABLE X-Bugzilla-Keywords: X-Bugzilla-Severity: Affects Many People X-Bugzilla-Who: paige@paige.bio X-Bugzilla-Status: New X-Bugzilla-Resolution: X-Bugzilla-Priority: --- X-Bugzilla-Assigned-To: net@FreeBSD.org X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: Message-ID: In-Reply-To: References: Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="UTF-8" X-Bugzilla-URL: https://bugs.freebsd.org/bugzilla/ Auto-Submitted: auto-generated List-Id: Networking and TCP/IP with FreeBSD List-Archive: https://lists.freebsd.org/archives/freebsd-net List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-net@FreeBSD.org MIME-Version: 1.0 https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D286322 --- Comment #9 from Paige Thompson --- I just tested using a 2000::/3 scoped address and it's the same problem,, =E2=9E=9C ~ sudo ifconfig epair9a inet6 2001:470:B56F::2 prefixlen 64 =E2=9E=9C ~ sudo ifconfig epair9b inet6 2001:470:B56F::1 prefixlen 64 fib = 48 it has the correct address in it's assignment: epair9a: flags=3D1008843 m= etric 0 mtu 1500 options=3D8 ether 02:a8:b6:06:0f:0a inet 192.0.0.28 netmask 0xfffffffe broadcast 255.255.255.255 inet6 2001:470:b56f::2 prefixlen 64 inet6 fe80::a8:b6ff:fe06:f0a%epair9a prefixlen 64 scopeid 0x21 groups: epair media: Ethernet 10Gbase-T (10Gbase-T ) status: active nd6 options=3D21 but if you compare the route that it creates to the ipv4 address routes:=20 2001:470:b56f::/64 link#33 U epair9a 2001:470:b56f::2 link#3 UHS lo0 192.0.0.28 link#3 UHS lo0 192.0.0.28/31 link#33 U epair9a that checks out too so ... um=20 FIB 48 has the same kinda thing going on:=20 2001:470:b56f::/64 link#34 U=20=20=20= =20=20=20=20=20=20=20 epair9b 2001:470:b56f::1 link#3 UHS=20=20= =20=20=20=20=20=20=20=20=20=20 lo0 so.. I donno....=20 =E2=9E=9C ~ sudo route add -inet6 2001:470:b56f::1 -iface epair9a add host 2001:470:b56f::1: gateway epair9a fib 0 =E2=9E=9C ~ sudo route add -inet6 2001:470:b56f::2 -iface epair9b -fib 48 add host 2001:470:b56f::2: gateway epair9b fib 48 =E2=9E=9C ~ ping6 2001:470:B56F::1 PING(56=3D40+8+8 bytes) 2001:470:b56f::1 --> 2001:470:b56f::1 no ok so delete these=20 I donno this should just work, .. the way it is *shrug* yet it doesn't. Wor= ks with IPv4:=20 =E2=9E=9C ~ ping -S 192.0.0.28 192.0.0.29 PING 192.0.0.29 (192.0.0.29) from 192.0.0.28: 56 data bytes 64 bytes from 192.0.0.29: icmp_seq=3D0 ttl=3D64 time=3D0.240 ms 64 bytes from 192.0.0.29: icmp_seq=3D1 ttl=3D64 time=3D0.209 ms 64 bytes from 192.0.0.29: icmp_seq=3D2 ttl=3D64 time=3D0.225 ms 64 bytes from 192.0.0.29: icmp_seq=3D3 ttl=3D64 time=3D0.241 ms =C2=AF\_(=E3=83=84)_/=C2=AF with Linux this is like trivial: =E2=9A=A1 root@smol =EE=82=B0 /home/netcraveos =EE=82=B0 ip link add vrf1 t= ype vrf table 1000 ip link set vrf1 up ip link add veth0 type veth peer name veth1 ip link set veth1 master vrf1 ip addr add fcff::a/64 dev veth0 ip addr add fcff::b/64 dev veth1 ip link set veth0 up ip link set veth1 up =E2=9A=A1 root@smol =EE=82=B0 /home/netcraveos =EE=82=B0 ping -6 fcff::b=20= =20=20=20=20=20=20=20=20=20 PING fcff::b (fcff::b) 56 data bytes 64 bytes from fcff::b: icmp_seq=3D1 ttl=3D64 time=3D0.084 ms --- fcff::b ping statistics --- 1 packets transmitted, 1 received, 0% packet loss, time 0ms rtt min/avg/max/mdev =3D 0.084/0.084/0.084/0.000 ms =E2=9A=A1 root@smol =EE=82=B0 /home/netcraveos =EE=82=B0 ping -6 fcff::a PING fcff::a (fcff::a) 56 data bytes 64 bytes from fcff::a: icmp_seq=3D1 ttl=3D64 time=3D0.041 ms ^C --- fcff::a ping statistics --- 1 packets transmitted, 1 received, 0% packet loss, time 0ms rtt min/avg/max/mdev =3D 0.041/0.041/0.041/0.000 ms =E2=9A=A1 root@smol =EE=82=B0 /home/netcraveos =EE=82=B0 ip -6 route show t= able 1000 anycast fcff:: dev veth1 proto kernel metric 0 pref medium local fcff::b dev veth1 proto kernel metric 0 pref medium fcff::/64 dev veth1 proto kernel metric 256 pref medium anycast fe80:: dev veth1 proto kernel metric 0 pref medium local fe80::502d:fff:fec3:6a38 dev veth1 proto kernel metric 0 pref medium fe80::/64 dev veth1 proto kernel metric 256 pref medium multicast ff00::/8 dev veth1 proto kernel metric 256 pref medium The only actual difference between VRF and what freeBSD has is that the FIB that an interface is assigned to is set by the FIB parameter; Linux interfa= ces don't have a way to specify a FIB association; VRF acts like a bridge but t= he only thing it bridges are what routing tables the interfaces it enslaves are assigned to.=20 I donno if I put them both on fib 0:=20 =E2=9E=9C ~ sudo ifconfig epair9a inet6 2001:470:B56F::2 prefixlen 64 =E2=9E=9C ~ sudo ifconfig epair9b inet6 2001:470:B56F::1 prefixlen 64 fib 0 then of course it actually works=20 =E2=9E=9C sq ping6 -S 2001:470:b56f::2 2001:470:b56f::1 PING(56=3D40+8+8 bytes) 2001:470:b56f::2 --> 2001:470:b56f::1 16 bytes from 2001:470:b56f::1, icmp_seq=3D0 hlim=3D64 time=3D0.278 ms 16 bytes from 2001:470:b56f::1, icmp_seq=3D1 hlim=3D64 time=3D0.223 ms and I can even move epair9b to FIB 48 and it still works:=20 =E2=9E=9C sq ifconfig epair9b fib 48 =E2=9E=9C sq ping6 -S 2001:470:b56f::2 2001:470:b56f::1 PING(56=3D40+8+8 bytes) 2001:470:b56f::2 --> 2001:470:b56f::1 16 bytes from 2001:470:b56f::1, icmp_seq=3D0 hlim=3D64 time=3D0.273 ms ^C --- 2001:470:b56f::1 ping statistics --- 1 packets transmitted, 1 packets received, 0.0% packet loss round-trip min/avg/max/stddev =3D 0.273/0.273/0.273/0.000 ms 2001:470:b56f::/64 link#33 U epair9a 2001:470:b56f::1 link#3 UHS lo0 <---- but wait I tried adding this manually and it didn't work soo.... idk this is broken I'm just saying 2001:470:b56f::2 link#3 UHS lo0 --=20 You are receiving this mail because: You are the assignee for the bug.=