首页  > 计算机 >

Firefox(火狐)默认不会使用socks进行DNS查询

本文按署名·非商业用途·保持一致授权
作者:  ,发表于2010年03月06日12时15分 

socks5是支持UDP的,dns查询是通过UDP进行的。

按道理如果我们在Firefox设置了使用socks5代理,所有可能的查询都要经过代理才合理。但是今天tcpdump一看,设置了socks5代理访问之后,dns查询依然是通过本地客户端->dns缓存服务器来进行,而不是本地客户端->socks服务器->dns缓存服务器。

解决方法就是:
1)firefox地址栏输入about:config访问
2)搜索network.proxy.socks_remote_dns,设置为true(或真值)

为什么要设置呢?因为dns查询是明文进行的。这个理由相信足够了。(当然我并不是说SOCKS本身是加密的)

但是在使用pac文件,或者使用系统设置的情况下,这个配置是毫无作用的。只有设置为“手动设置代理”,这个配置才会起作用。杯具。这应该是个BUG。

至于Firefox为什么默认不使用socks5进行dns查询,我想可能是为了保持socks5和socks4(版本4不支持udp)的行为一致,或者担心socks服务器可能未配置好dns服务器IP导致引起客户困惑。

另外,Safari是会通过socks5进行dns查询的,而且似乎是不可以设置的。

环境:
Mac OSX 10.5.8
Firefox 3.5.8
Safari 4.0.4

ps: Safari这个版本号搞笑



发表评论

  本站文章若无注明,则以署名·非商业用途·保持一致授权
  桂ICP备05004302号 感谢WordPress提供本程序 本模板下载