Date: Thu, 23 Jun 2022 19:52:47 +0000 From: bugzilla-noreply@freebsd.org To: bugs@FreeBSD.org Subject: [Bug 264858] IPv6: 'route add' sets wrong netif in fib when iface has different fib Message-ID: <bug-264858-227@https.bugs.freebsd.org/bugzilla/>
next in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D264858 Bug ID: 264858 Summary: IPv6: 'route add' sets wrong netif in fib when iface has different fib Product: Base System Version: 13.1-RELEASE Hardware: Any OS: Any Status: New Severity: Affects Only Me Priority: --- Component: bin Assignee: bugs@FreeBSD.org Reporter: pmc@citylink.dinoex.sub.org When adding a route into a fib, it may get connected to lo0 instead of the desired interface, and traffic does not work. Example: -------- # ifconfig tun6 tun6: flags=3D8010<POINTOPOINT,MULTICAST> metric 0 mtu 1371 options=3D80000<LINKSTATE> groups: tun nd6 options=3D1<PERFORMNUD> # setfib 4 netstat -rn6 Routing tables (fib: 4) Internet6: Destination Gateway Flags N= etif Expire ::/96 ::1 UGRS = lo0 ::1 link#1 UHS = lo0 ::ffff:0.0.0.0/96 ::1 UGRS = lo0 fe80::/10 ::1 UGRS = lo0 ff02::/16 ::1 UGRS = lo0 # ifconfig tun6 inet6 fe80::1%tun6 prefixlen 124 # route -6 add -net fe80::1%tun6/124 -iface tun6 -fib 4 add net fe80::1%tun6/124: gateway tun6 fib 4 # route -6 add -net default fe80::2%tun6 -fib 4 add net default: gateway fe80::2%tun6 fib 4 # setfib 4 netstat -rn6 Routing tables (fib: 4) Internet6: Destination Gateway Flags N= etif Expire ::/96 ::1 UGRS = lo0 default fe80::2%tun6 UGS = lo0 << ::1 link#1 UHS = lo0 ::ffff:0.0.0.0/96 ::1 UGRS = lo0 fe80::/10 ::1 UGRS = lo0 fe80::%tun6/124 link#4 US = tun6 ff02::/16 ::1 UGRS = lo0 But then, when changing the interface itself to the fib, it suddenly works = as desired: # route -6 delete -net default fe80::2%tun6 -fib 4 delete net default: gateway fe80::2%tun6 fib 4 # ifconfig tun6 inet fib 4 # route -6 add -net default fe80::2%tun6 -fib 4 add net default: gateway fe80::2%tun6 fib 4 # setfib 4 netstat -rn6 Routing tables (fib: 4) Internet6: Destination Gateway Flags N= etif Expire ::/96 ::1 UGRS = lo0 default fe80::2%tun6 UGS = tun6 << ::1 link#1 UHS = lo0 ::ffff:0.0.0.0/96 ::1 UGRS = lo0 fe80::/10 ::1 UGRS = lo0 fe80::%tun6/124 link#4 US = tun6 ff02::/16 ::1 UGRS = lo0 I don't think this is the correct behaviour, because the fib on the interfa= ce should concern incoming traffic, while the route table concerns outgoing traffic, and one might want this to be separate concerns. --=20 You are receiving this mail because: You are the assignee for the bug.=
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-264858-227>