"西厢计划"是今天听到的最振奋人心的消息, 穿越GFW这么多年, 基本上各种类型的方法都用过, 每每穿墙都有一种莫名的快感, 想着GFW同学被无数人一次又一次地虐待. 作为新世纪的有志青年, 翻墙已经成了一种必须掌握的技能. 俗话说得好, "不会翻墙的网民不是好公民." 看到这里你应该已经知道"西厢计划"到底是个什么东西了, 但它不同于以往的所有翻墙技术, 算是翻墙界的最新研究成果吧. "西厢计划"的优势在于可以用最直接的方式访问网站, 比如平时用的代理、VPN都是先到另一个地方绕一圈, 而按照作者的说法, "西厢计划"直接注入GFW系统, 这样当你访问敏感词网站时, GFW就变得像个傻子一样, 根本不会进行重置操作, 从而以最快的速度访问网站.
目前还只能在Linux系统中进行使用, 且要求内核版本大于等于2.6.17, 下面是我在Ubuntu中安装配置的全过程.
$ sudo apt-get install autoconf automake libtool aptitude xtables-addons-common iptables-dev接下来开始编译加安装:
$ ./autogen.sh $ CFLAGS="" ./configure --prefix=/usr --libexecdir=/lib $ make $ sudo make install
ipset规则, 这些规则用来过滤那些特定的网络访问, 先导入所有规则:
$ sudo ipset -R < CHINA $ sudo ipset -R < GOOGLE $ sudo ipset -R < YOUTUBE $ sudo ipset -R < NOCLIP再使用
iptables设定具体的过滤规则:
$ sudo iptables -A INPUT -p tcp --sport 80 --tcp-flags FIN,SYN,RST,ACK SYN,ACK -m state --state ESTABLISHED -m set --match-set NOCLIP src -j ZHANG -m comment --comment "client-side connection obfuscation" $ sudo iptables -A INPUT -p tcp --dport 80 --tcp-flags FIN,SYN,RST,ACK SYN -m state --state NEW -j CUI -m set --match-set CHINA src -m comment --comment "server-side connection obfuscation" $ sudo iptables -A INPUT -p tcp --sport 80 -m state --state ESTABLISHED -m gfw -j LOG --log-level info --log-prefix "gfw: " -m comment --comment "log gfw tcp resets" $ sudo iptables -A INPUT -p udp --sport 53 -m state --state ESTABLISHED -m gfw -j DROP -m comment --comment "drop gfw dns hijacks"最后修改主DNS, 在"/etc/dhcp3/dhclient.conf"文件中找到"
prepend domain-name-servers", 将后面的IP替换为没有被感染的DNS地址, 比如"8.8.8.8", 重启网卡:
$ sudo ifconfig eth0 down $ sudo ifconfig eth0 up
大功告成! 打开浏览器试试吧, YouTube、Blogger、Picasa、Google Groups、Google Docs的Spreadsheet这些都已是畅通无阻, 不过目前Twitter、Facebook还无法访问, 但相信"西厢计划"以后将会越来越强大.
2010.3.13更新:
以上配置在重启之后都会消失, 这就麻烦了, 总不能每次开机都先输这么一长串命令吧. 在参考了Ubuntu官方Wiki之后, 有了一个很好的解决办法.
首先确定你已经设定好了上面的所有规则, 接着将当前规则导出并放到"/etc"目录中:$ sudo ipset -S > ipset.rules $ sudo iptables-save > iptables.rules $ sudo mv ipset.rules iptables.rules /etc其实我们需要做的就是让系统在每次开机的时候自动读取这些规则, 这可以有很多种方法, 比如写成脚本, 放到rc目录中, 但我觉得下面的方法更加灵活一点. 这里又要分成两种方法, 如果你使用了NetworkManager, 请看第一种, 否则看第二种. 之所以要这样分开讨论, 是因为第二种方法会导致NetworkManager不能正常工作.
在这里下载NetworkManager的配置脚本, 加上可执行权限, 最后放到"/etc/NetworkManager/dispatcher.d"目录中.
auto eth0 iface eth0 inet dhcp pre-up ipset -R < /etc/ipset.rules pre-up iptables-restore < /etc/iptables.rules post-down ipset -S > /etc/ipset.rules post-down iptables-save > /etc/iptables.rules
P.S. 我终于又可以直接在Blogger里写博客了, 泪牛满面啊~~~
在 2010年3月16日 下午2:12,LiuChenhong <diab...@gmail.com> 写道:
> 太牛叉了
>
> --
> 您收到此邮件是因为您订阅了 Google 网上论坛的“福州linux用户组”论坛。
> 要向此网上论坛发帖,请发送电子邮件至 fz...@googlegroups.com。
> 要取消订阅此网上论坛,请发送电子邮件至 fzlug+un...@googlegroups.com。
> 若有更多问题,请通过 http://groups.google.com/group/fzlug?hl=zh-CN 访问此网上论坛。
>
--
Time is liking a dream
youtube的域名查到如下
robbie@robbie-laptop:~$ nslookup www.youtube.com
Server: 8.8.8.8
Address: 8.8.8.8#53
Non-authoritative answer:
www.youtube.com canonical name = youtube-ui.l.google.com.
youtube-ui.l.google.com canonical name = youtube-ui-china.l.google.com.
Name: youtube-ui-china.l.google.com
Address: 74.125.153.101
Name: youtube-ui-china.l.google.com
Address: 74.125.153.113
Name: youtube-ui-china.l.google.com
Address: 74.125.153.138
Name: youtube-ui-china.l.google.com
Address: 74.125.153.139
Name: youtube-ui-china.l.google.com
Address: 74.125.153.100
Name: youtube-ui-china.l.google.com
Address: 74.125.153.102
--
/*
*@author: chen xueqin
*@email: robb...@gmail.com
*@see: http://robbie.bokee.com
*@see: http://groups.google.com/group/fzlug
*@love: freedom,tux,open source
*/
不论如何,这位西厢仁兄做很很好:)