现在我需要挂 VPN 爬墙,问题出现了,电信 DNS 劫持了域名解析。而我现在没办法修改这个 ppp0 接口的 DNS 服务器。在设置-网络中,根本看不到这个连接。 我已经将本地连接的 DNS 服务器设置为 8.8.8.8 和 114.114.114.114 。但是还是被劫持了。 对 ppp0 接口抓包: 发现在使用 218.1.135.1 的 DNS 服务器,而且使用的 DNS 服务器有很多,比如说,我重启一下,使用的 DNS 服务器又换成新的了,我遇到比较常见的有 218.2.2.2 , 218.4.4.4 。 本来想尝试修改天翼客户端的本地配置文件,但是没找到有关的配置文件。 于是想到了使用防火墙进行 DNS 查询的拦截,然后转发给 114.114.114.114 。 但是又遇到了问题: 我新建了 PF 规则文件 /etc/pf.anchors/dns 内容如下: rdr pass on ppp0 inet proto udp from any to any port = 53 -> 114.114.114.114 port 53 rdr pass on ppp0 inet proto tcp from any to any port = 53 -> 114.114.114.114 port 53
然后使用 pfctl 测试了这个规则 sh-3.2# pfctl -vnf pf.anchors/dns pfctl: Use of -f option, could result in flushing of rules present in the main ruleset added by the system at startup. See /etc/pf.conf for further details.
rdr pass on ppp0 inet proto udp from any to any port = 53 -> 114.114.114.114 port 53 rdr pass on ppp0 inet proto tcp from any to any port = 53 -> 114.114.114.114 port 53
最后使用 pfctl 加载规则提示: sh-3.2# pfctl -f pf.conf pfctl: Use of -f option, could result in flushing of rules present in the main ruleset added by the system at startup. See /etc/pf.conf for further details.
No ALTQ support in kernel ALTQ related functions disabled
重启之后并没有生效,依旧是是使用 DNS 的服务器。怎么办求解! OSX 版本为 10.11.3(EI caption)