Great question — answering as the UphillTech team:
The great thing about FreeBSD is that things are documented: arp(4) We have: These routes time out periodically (normally 20 minutes after validated; entries are not validated when not in use) ...and... max_age How long an ARP entry is held in the cache until it needs to be refreshed. Default is 1200 seconds. I read that as if we see the entry within maxage then it is validated. That is: When in use it is validated. So if you do a: arp -i ixl0 -a ? (192.168.1.2) at 00:00:00:00:00:00 on ixl0 expires in 237 seconds [ethernet] ? (192.168.1.1) at 00:00:00:00:00:01 on ixl0 permanent [ethernet] You will see the arp entries and their age. If you want to extend the cache duration simply change...
Full answer by Claus Andersen: https://unix.stackexchange.com/a/493273 (CC BY-SA 4.0).
Need it done for your business? UphillTech.