On Fri, 12 Dec 2014, John D. Baker wrote: > Following an update and a reboot, 'dhcpcd' ignores the "/20" netmask > presented by the ISP's DHCP server and instead installs the address with > a "/8" netmask instead (the address assigned by the DHCP server would > otherwise be a Class A were it not for the "/20" netmask).
With dhcpcd v6.4.3 in netbsd-7, this appears to be related to the use of the "noalias" directive. While using "noalias" to prevent the dynamic address being installed as an alias, a bogus netmask would be used. Without "noalias", the server-provided netmask is used. Some tweaks to "dhcpcd.exit-hook" provide the desired behavior with respect to installing/removing additional alias addresses. Basically, install the alias on any nominal "success" case that may cause installation of a new address (BOUND, IPV4LL, STATIC, TIMEOUT) and remove on preparatory cases (PREINIT, REBIND, REBOOT, STOP). -- |/"\ John D. Baker, KN5UKS NetBSD Darwin/MacOS X |\ / jdbaker[snail]mylinuxisp[flyspeck]com OpenBSD FreeBSD | X No HTML/proprietary data in email. BSD just sits there and works! |/ \ GPGkeyID: D703 4A7E 479F 63F8 D3F4 BD99 9572 8F23 E4AD 1645
