kfll
V2EX  ›  程序员

OS X 绕过 DNS 投毒新姿势

By kfll at 2014 年 9 月 26 日 · 6322 次点击
  • 本帖所述主要内容是相关 resolver(5) ,具体内容是用其绕过大陆的 DNS 投毒。
  • 本帖有关绕过 DNS 投毒的原理为使用非 53 端口的 DNS 公共服务器
  • 当然在路由器上使用 dnsmasq 或自建 DNS 有时候会是更好的解决方案,不过本帖不讨论其他防 DNS 投毒方案,亦不作比较。

下面为方案介绍

简单应用(/etc/resolv.conf)

修改 /etc/resolv.conf *,使用如下 nameserver

nameserver 208.67.222.222.443
nameserver 208.67.220.220.443

系统在解析域名时即会使用 OpenDNS 的 443 端口的 DNS 服务了。(这里说是系统解析似乎不大准确,意会即可)

以上修改即可绕过 DNS 投毒。

[*] 在_系统偏好设置_中所做 DNS 修改会重新生成 /etc/resolv.conf ,需要重新修改改文件。

进阶应用(/etc/resolver/*)

进阶应用所述方案符合如下需求:

  • 不修改 /etc/resolv.conf
  • 指定域使用指定 nameserver

方案如下:

新建文件 /etc/resolver/twitter.com,内容如下:

nameserver 208.67.222.222
port 443

意思是让 twitter.com 域的所有域名查询使用 208.67.222.222:443 DNS 服务器。

所有的 resolver 可以通过执行 scutil --dns 查看。

添加其他域(以 google.com 为例):

cd /etc/resolver
ln -sfv twitter.com google.com

其他说明

  • 查询所用 resolver 的顺序策略参看 resolver(5) 的 SEARCH STRATEGY 区块。
  • host, nslookup, dig 等自实现 DNS 查询程序的默认查询服务器均只从 /etc/resolv.conf 读取(dig 还有 ${HOME}/.digrc) ,故不作上述进阶应用方案的验证方案;
  • 可使用 ping, telnet, traceroute 等网络程序,或其他任意使用 libresolv 的程序来确认方案是否有效;当然直接用浏览器也是可以的。
  • 其他可用的非 53 端口 DNS 公共服务器:https://github.com/jedisct1/dnscrypt-proxy/blob/master/dnscrypt-resolvers.csv (所列服务器不使用 dnscrypt 亦可用,只是不加密)
8 条回复  •  2014-09-27 15:29:43 +08:00
helloxxiieessoo
   1
helloxxiieessoo  
   2014 年 9 月 26 日
修改 /etc/resolv.conf *,使用如下 nameserver

nameserver 208.67.222.222.443
nameserver 208.67.220.220.443
helloxxiieessoo
   2
helloxxiieessoo  
   2014 年 9 月 26 日
我靠按错了,还无法修改!!!osx centos resolv.conf好像无法这样定义端口把?
p2p
   3
p2p  
   2014 年 9 月 26 日
楼主测过了?
dant
   4
dant  
   2014 年 9 月 26 日 via iPhone
@helloxxiieessoo glibc 不支持
izoabr
   5
izoabr  
   2014 年 9 月 26 日
来吧,赶紧tar -cf resolver.tar /etc/resolver打包上来吧.速速啊
Showfom
   6
Showfom  
   2014 年 9 月 26 日
@izoabr 被投毒的域名也就这么几个,很好整理的。

Google
YouTube
Facebook
Twitter 以及他们相关的域名。。。
clowwindy
   7
clowwindy  
   2014 年 9 月 27 日
ChinaDNS for OpenWRT 使用的默认 OpenDNS 端口已改为 443。

不过还要等 glibc 支持打开 RES_USE_DNSSEC 才真正一劳永逸……
KKKKale
   8
KKKKale  
   2014 年 9 月 27 日 via Android
看成投毒新姿势了…233
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
© 2026 V2EX · 44ms · 3.9.8.5