Date: Tue, 18 Oct 2022 14:11:14 -0700 From: Dan Mahoney <freebsd@gushi.org> To: questions@freebsd.org Subject: Interface routes and multiple fibs Message-ID: <354F1536-D803-472A-933C-8B6D9EAED1F1@gushi.org>
next in thread | raw e-mail | index | archive | help
All, Maybe a question for the -net or -rc people. If I should ask there, let = me know. I'm running with multiple fibs. One fib is just box management, ssh, = etc. The other fib (which takes BGP routes from peers via BIRD) does = DNS anycast things. The DNS server runs in fib 1. Our default route is = added to both fibs. My fib0 routing table looks like this: Internet: Destination Gateway Flags Netif Expire default 192.159.249.233 UGS bge0 127.0.0.1 link#5 UH lo0 182.159.249.232/29 link#1 U bge0 182.159.249.236 link#1 UHS lo0 Fib 1 is missing that final route.: default 182.159.249.233 UGS bge0 127.0.0.1 link#5 UH lo0 182.159.249.232/29 link#1 U bge0 I've noticed that when I try to do a query (with dig) against it from = fib 0, it sends over lo0 to the named process, but the reply packet just = gets sent out ON BGE0, and is never received, since dig is listening on = the interface it sent the packet over (lo0) to hear the response, which, = near as I can tell with tcpdump -i bge0, just goes out on the wire Obviously, we can add the static route to that second fib with: route = add -host 182.159.249.236 -interface lo0 -fib 1. Yes, we can also make this stick useing default_routes in rc.conf. But it feels like we shouldn't have to. This feels like a glitch, and = that if all fibs get the SUBNET route , they should also get the = loopback. -Dan=
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?354F1536-D803-472A-933C-8B6D9EAED1F1>