Specifying IPv6 off-link for a subnet

Scott freebsd-lists-5 at thismonkey.com
Mon Jul 5 15:46:01 UTC 2021

Hi all,

I have a few FreeBSD hosts with IPv6 and am struggling to get FreeBSD to 
respect an RA with the on-link flag un-set.

I have manually configured IPv6 on the interfaces:
ifconfig_vmx0_ipv6="inet6 xx::yy prefer_source accept_rtadv -autoconf no_radr"

The prefix appears in the prefix list as:
# ndp -p
xx::/64 if=vmx0
flags=LO vltime=infinity, pltime=infinity, expire=Never, ref=1
  No advertising router

Note how the L flag is set.  ifconfig does not seem to allow for specifying 
off-link (or no on-link) for a subnet, so I was hoping FreeBSD would rely on 
the router RA.

According to rfc5942, 4.1 states (edited):
The assignment of an IPv6 address through manual configuration MUST NOT 
implicitly cause a prefix derived from that address to be treated as on-link.  
A host considers a prefix to be on-link only through explicit means.

Here's the received RA:
01:26:48.355186 IP6 (class 0xe0, hlim 255, next-header ICMPv6 (58) payload length: 64) fe80::1 > ff02::1: [icmp6 sum ok] ICMP6, router advertisement, length 64
        hop limit 64, Flags [none], pref high, router lifetime 1800s, reachable time 0ms, retrans timer 0ms
          source link-address option (1), length 8 (1): 00:00:5e:00:02:02
          mtu option (5), length 8 (1):  9000
	  prefix info option (3), length 32 (4): xx::/64, Flags [none], valid 
	  time 3600s, pref. time 60s

Note that there is no L flag set, so the prefix is off-link.

However FreeBSD does not update the prefix list accordingly.

Am I doing something wrong here?  Or is FreeBSD not following the rules?


More information about the freebsd-questions mailing list