Static route and arp problem in FreeBSD 13.0
Morgan Wesström
freebsd-database at pp.dyndns.biz
Wed Aug 18 22:52:12 UTC 2021
Hi,
I have my stupid hat close, ready to put on because I've most likely missed
something obvious and I need your help to point it out. :)
I've been using FreeBSD as my router/firewall for 15 years and it's a simple
and straight setup:
+--------------+ +-------------+
| | | |
LAN em1| FreeBSD 12.2 |em0 | Cable modem | Internet
---------------+ +-----------------------+ +---------
192.168.69.0/24| router |DHCP 192.168.0.1| bridge mode |
| |public ip | |
+--------------+ +-------------+
To access the cable modem's web interface, which has a private ip on the public
facing side of the router, I add the following static route and arp entry in
the router's /etc/rc.conf:
route_cable="-host 192.168.0.1 -link em0:d8:d7:75:f3:9b:14 -iface -static"
static_routes="cable"
static_arp_cable="192.168.0.1 d8:d7:75:f3:9b:14 pub only"
static_arp_pairs="cable"
The MAC address is the router facing interface on the cable modem. I can now
access 192.168.0.1 from my LAN and this has worked perfectly for many years
until I try it on FreeBSD 13.0.
The route/arp is not registered at startup and trying to add the route manually
results in the following message:
# route add -host 192.168.0.1 -link em0:d8:d7:75:f3:9b:14 -iface -static
route: writing to routing socket: Network is unreachable
add host 192.168.0.1: gateway em0:d8:d7:75:f3:9b:14 fib 0: Network is unreachable
Adding the arp record doesn't work either but that was expected since it
requires the route to be added first. The most likely scenario is that I missed
something fundamental in my 13.0 setup but I can't figure out what and the
error message isn't really helpful.
The less likely reason is that something changed between FreeBSD 12.2 and 13.0
but I can't spot any changes in the man pages. Any pointers would be greatly
appreciated.
Regards
Morgan Wesström
More information about the freebsd-questions
mailing list