经常使用 SOCKS 代理服务器的同志们会发现一种现象,即使 SOCKS 代理服务器设置正确,某些网站仍然无法访问,比如某著名微博网站。其一般原因都是 DNS 污染 (DNS cache poisoning)。
值得庆幸的是 SOCKS 5 可以通过将域名直接提交给 SOCKS 服务器来进行远端 DNS 解析,即 Address Type 0x03。DNS 服务是 Internet 的基础服务,要求 DNS 解析应当尽量地快,所以浏览器默认不会使用远端 DNS 解析。不过当使用自动代理设置脚本(.pac )时,以 SOCKS5 而不是 SOCKS 返回代理地址,可以支持远端 DNS 解析。
网友 forkei 的重要评论:
chrome 的 Proxy Switchy 1.4.2 版本插件可以很好的解决这个问题。Firefox 的 FoxyProxy 插件也可以很好的解决 DNS 污染。支持插件扩展功能的浏览器功能就是强大。IE 内核浏览器和 opera 只有通过 polipo 或者 privoxy 将 socks 代理转为 http 代理才行,麻烦。
chrome 的Proxy Switchy 1.4.2 版本插件可以很好的解决这个问题。
Firefox 的FoxyProxy 插件也可以很好的解决DNS 污染。
支持插件扩展功能的浏览器功能就是强大。
IE 内核浏览器和opera 只有通过polipo 或者 privoxy 将socks 代理转为http 代理才行,麻烦。
请问具体怎么做呢?chrome的proxyswitch该怎么设置才能远程解析?我抓包看过依然用本地的解析。
最新的应该是 SwitchOmega 吧,应该自动就 OK 了。
firefox的foxyproxy支持socks解释dns
@forkei
的确,前几天测试了一下,Chrome的Proxy Switchy插件只要选择了Socket 5代理就可以支持远程DNS解析了
@forkei
谢谢您提供的信息。
ff的这个pac文件不支持remote dns真是要命!只能改hosts文件才行。
firefox 还要pac干嘛, 直接上 autoproxy 阿.
about:config
把network.proxy.socks_remote_dns设为true.
在Chrome浏览器下使用了proxy switchy扩展设置还是唯独访问不了Twitter,其他的YouTube、facebook等等其他墙外都正常啊,想请教下关于switchy有没有哪里特殊的设置呢? 以下是自己的配置信息
Proxy Profiles ProfilesName:Yousri
Manual Configuration
SOCKS Host 127.0.0.1 Port 7070 SOCKS v5
Switch Rules
Enable Switch Rules
RuleName URL Pattern PatternType ProxyProfile
Twitter *://twitter.com/* Wildcard Yousri
Other (twitter|facebook|bullogger) RegExp Yousri
可是终究还是无法实现,不知道有么有联系方式可以请教下呢?
@Yousri
也许不能使用 Rules,至少从我这来看是这样...我发现 Chrome 其实也是用的 .pac 脚本,但是 Chrome 的 .pac 脚本使用的是 SOCKS5 命令而不是平常的 SOCKS 命令。
@Solrex Yang
Orz 一样无法实现,确实太奇怪了
更换使用了最新的dev版本终于正常了,看来原先使用的最新的beta版不靠谱啊 可能chrome dns问题在beta版还是未修正
@forkei
兄弟,chrome tor 怎么样能像firefox那样好用?请邮件我,hoopeni#gmail.com
用Proxy Switchy比较方便,不用,直接设置pac文件,chrome也是支持socks5的@forkei
值得庆幸的是 SOCKS 5 协议增加了对 UDP 数据包的支持,DNS 查询是通过 UDP 传输的,所以我们可以使 DNS 查询数据包也走 SOCKS 5 代理来进行远端 DNS 解析(Remote DNS Lookup)。
firefox的network.proxy.socks_remote_dns是把域名传递给socks5服务器,让socks5服务器去解析。上面所说的,让DNS查询数据包(UDP数据)通过socks5协议去传输,我还没见过相关应用,有这么用的吗
值得庆幸的是 SOCKS 5 协议增加了对 UDP 数据包的支持,DNS 查询是通过 UDP 传输的,所以我们可以使 DNS 查询数据包也走 SOCKS 5 代理来进行远端 DNS 解析(Remote DNS Lookup)。
firefox的network.proxy.socks_remote_dns是将域名传递给socks5服务器区解析。而上面所提到的通过socks5对udp数据包的支持,把dns查询数据也通过socks5协议传输,有这样的应用吗
@caesar
多谢指教!您是对的,是我理解错误。
Socks V5 !
Chrome下还是无法解决远程DNS解析的问题,即使使用了Proxy Switchy也是,Firefox可以翻的地方Chrome却无法翻……是不是必须1.4.2版本?
用 socks5的全局代理软件Proxifier 设置远端解析dns