如何在 OS X 10.9 上阻止来自 DHCP 的 DNS?

如何在 OS X 10.9 上阻止来自 DHCP 的 DNS?

我一直在尝试使用 ice floor 和 openvpn 配置我的 MacBook (10.9),以防止来自我的真实 IP 的出站连接。因此,我必须允许我的真实 IP 和 OpenDNS 之间的连接,以便能够连接到我的 VPN。一切正常,但当我断开 Wi-Fi 连接或计算机重新启动/唤醒时,它无法连接到 VPN,因为系统会向 DHCP 分配的 DNS(在我的情况下是 shaw)发送查询,而这些查询被我的防火墙阻止。当禁用/启用 Wi-Fi 接口时,它会再次工作,因为 DNS 查询会发送到 OpenDNS。我真的不明白。

那么,我如何强制系统使用手动 DNS 并且永远不使用来自 DHCP 的 DNS?

谢谢

编辑:更多信息

当 OpenVPN 无法连接时(对这些服务器的查询被防火墙阻止):

localhost:~ Charlie$ scutil --dns DNS 配置

解析器 #1 名称服务器[0] : 64.59.144.92 名称服务器[1] : 64.59.150.138 if_index : 4 (en0) 标志 : 请求 A 记录 到达 : 可达

但是网络设置显示 OpenDNS 而不是那些。

当一切正常时,上述命令将返回 OpenDNS 服务器。

答案1

如果您大多数情况下都在同一个网络上,则只需转到系统Preferences > Network并将 Wifi 从 DHCP 更改为手动。

这样,您只需输入一次正确的信息,并且只在访问“某些”网络时处理问题,因为大多数路由器都具有相同的 IP(192.168.1.1)。最好将您的 IP 设置为 192.168.1.240,因为您很少会找到具有如此高 IP 地址的计算机。

答案2

看起来像编辑 openvpn 配置文件,添加

push "dhcp-option 208.67.222.222" 

与其他 DNS 相同的操作也解决了这里的问题。

相关内容