我正在尝试让 OSX Lion 服务器通过 DHCP 为其客户端(所有 OSX Lion)提供静态路由。我无法让客户端实际应用静态路由。
到目前为止,我已经设法让 DHCP 服务器 (BOOTPD) 通过编辑 /etc/bootpd.plist 并添加如下内容来实际为 DHCP 提供的 DHCP OPTION 33 (static_route) 提供服务:
<key>dhcp_option_33</key>
<data>[some base64 goes here]</data>
.. 并重新启动 DHCP 服务。
在客户端上,我设法让客户端通过修改选项 33 并将其添加到 DHCPRequestedParameterList 键来实际请求 dhcp 选项:
<key>DHCPRequestedParameterList</key>
<array>
... keys snipped for brevity ...
<integer>33</integer>
</array>
..并重新启动客户端。这使得客户端从 DHCP 服务器请求 static_route 选项(我可以在ipconfig getpacket en0中看到正确的输出)但它实际上并不应用该规则。
有没有人成功地通过 DHCP 在 OSX 客户端上应用 static_route 选项?
FWIW,OSX 客户端似乎没有实现 DHCP 选项 121(取代选项 33),考虑到 Apple 被列为 RFC 3442 的作者,这令人惊讶。
我猜他们也不支持选项 33(我无法通过 ISC DHCPD 工作)。
一种解决方法是启动一些丑陋的东西:
https://discussions.apple.com/thread/1757618?start=0&tstart=0
该问题是为 Lion 编写的,但适用于之后的多个版本。
El Capitan 和更高版本完全支持 DHCP 选项 121 用于 DHCP 提供的静态路由。
Yosemite 及更早版本需要额外的软件才能使用 DHCP 静态路由,可在此处获得:https ://github.com/beckit/DHCP_121_macOS