此前用wireshark嗅探研究过Sogou浏览器的代理功能,没什么头绪,有访客留言说用Process Explorer瞧瞧Sogou的进程,今天有空看了下,果然,有一个子进程是用-proxy参数启动的,打开了本地的8081和8082端口在监听,用其他浏览器连8081,发现就是普通的透明代理,而8082则是一个自动配置代理的PAC(Javascript)。 虽然现在我的Ubuntu下已经有了一堆翻墙用的代理软件(没边、门、eTunnel……),但经常速度不甚理想,而且学校校园网的电信出口经常被挤爆,而教育网出口是空的,所以使用Sogou提供的免费教育网代理是个不错的解决办法。 把Sogou弄到Ubuntu下的Wine环境没有任何难度,把Sogou的安装文件夹全部复制到~/.wine/drive_c/sogou下,运行的很正常: pentie@pentie-desktop:~$ wine "C:\sogou\SogouExplorer.exe" -proxy fixme:win:EnumDisplayDevicesW ((null),0,0x32f3c4,0x00000000), stub! fixme:wtsapi:WTSRegisterSessionNotification Stub 0x1002a 0x00000000 fixme:mountmgr:harddisk_ioctl unsupported ioctl 74080 fixme:mountmgr:harddisk_ioctl unsupported ioctl 2d1400 fixme:mountmgr:harddisk_ioctl unsupported ioctl 2d0c10 PID:8 PORT:8081 CPORT:8082 PAC:http://127.0.0.1:8082/proxy.pac?t=626 RET:SUCCESS 在配置Firefox的FoxyProxy,可以像平常那样添加127.0.0.1:8081作为代理,但既然提供了PAC,不妨试试:在Automatic proxy configuration URL内添入“http://127.0.0.1:8082/”,按Test,说找到PAC,解析成功!确定后右下角也出现FoxyProxy的提示。此时在Firefox中打开的网页都是通过Sogou的免费代理了!不过发觉现在的代理速度没此前那么快了。 Ubuntu中有一个工具可以配置全局代理,gnome-network-preferences,运行它可以轻松的让apt-get、telnet之类的程序通过代理来连接外网。 再一次提醒的是,Sogou浏览器代理是“透明代理”,它会转发你的真实IP,没有任何匿名功能,因为他们的服务器也在国内(北京),因此也不会有翻墙功能。 参考了别人的网志:http://dan.febird.net/2008/12/firefox.html 已知缺陷:在流量和连接数比较大时(比如刷开Google Reader),wine出来的SogouExplorer进程占用大量CPU资源,可能是某链接库匹配问题,以致这个方法的实用性不是很高。
后注(09-04-14):其实Sogou浏览器的代理功能是独立的,可以单独利用,分析其协议意义不大,见通过Wine使用Sogou浏览器的教育网加速代理 搜狗浏览器的教育网加速功能,对n多在学校使用校园网的用户来说可是福音,更别提其附带的翻墙功能。自从搜狗浏览器发布那天起,我就对其所用的代理服务器虎视眈眈:要是能在其他浏览器使用,多好啊…… 早前,用Wireshark嗅探搜狗连接加速代理的数据包,找到如219.234.81.(64/65/)66、219.234.81.(35/36/37)等几个服务器,看其发送的数据包,好像和HTTP代理差不多!试着将其加入Firefox的代理……果然吃的是闭门羹:Try Sogou Explorer now! 也看到搜狗发出的HTTP GET带有一些私有头部X-Sogou-XXXX的,估计有一些校验机制,就暂时放下了。 这几天校园网特别不稳定,又打起搜狗的主意。 感谢Python能够用这么简单的语句给我提供实验的环境,现在已经肯定下面的代码能够通过搜狗的代理访问到google的主页!程序输出的确实是Google的HTML代码!
Page optimized by WP Minify WordPress Plugin