I'm trying to get an OSX Lion Server to provide a static route to its clients (all OSX Lion) over DHCP. I can't get the client to actually apply the static route.
So far, I've managed to get the DHCP server (BOOTPD) to actually serve the DHCP OPTION 33 (static_route) on the DHCP offers by editing /etc/bootpd.plist and adding something like:
<key>dhcp_option_33</key>
<data>[some base64 goes here]</data>
.. and restarting the DHCP service.
On the client I've managed to get the client to actually request the dhcp option by modifying and adding option 33 to the DHCPRequestedParameterList key:
<key>DHCPRequestedParameterList</key>
<array>
... keys snipped for brevity ...
<integer>33</integer>
</array>
.. and rebooting the client. This makes the client request the static_route option from the DHCP server ( i can see the proper output in ipconfig getpacket en0 ) but it doesn't actually apply the rule.
Has anyone ever succeeded in applying static_route options on OSX clients through DHCP?
FWIW, OSX clients don't appear to implement DHCP option 121 (which supercedes option 33), which is surprising considering Apple is listed as an author of RFC 3442.
I'd guess they're not supporting option 33 either (I can't get either to work from an ISC DHCPD).
One workaround is some launchd ugliness:
https://discussions.apple.com/thread/1757618?start=0&tstart=0
The question was written for Lion but is applicable for several version afterwards.
El Capitan and later fully supports DHCP option 121 for DHCP provisioned static routes.
Yosemite and older requires additional software to work with DHCP static routes, which is available here: https://github.com/beckit/DHCP_121_macOS