shadowsocks chinadns

879 views
Skip to first unread message

CLIFF LIU

unread,
May 31, 2015, 8:46:55 AM5/31/15
to cli...@googlegroups.com
openwrt使用shadowsocks+ChinaDNS智能穿墙

openwrt使用shadowsocks+ChinaDNS智能穿墙

2015-01-30  openwrt  0 条评论  Tyr 1,167 views

自从封锁了GMAIL之后,最近我朝开始封锁VPN了,离大局域网指日可待。最近没怎么用VPN没有试试封锁的效果如何,不过对于我朝的GFW我还是很有信心的。之前PC上一直在用goagent科学上网,手机端用fqrouter,也一直相安无事。但在使用fqrouter的过程中发现这货非常占用CPU,而且费电,于是就继续尝试用路由器来翻墙。

之前还是准备用goagent,3800 AR71的CPU带起来也有点吃力,放在cubieboard上做代理,不知为何,PC端的响应速度还是很慢,无法正常使用。最近正好有一个东京的服务器,就拿来开了一个shadowsocks的服务器,openwrt上使用shadowsocks客户端配合chinadns智能翻墙,没有被墙的网站依旧走国内线路,被墙无法访问的网站走东京SS服务器。

服务器端

服务器端安装shadowsocks很简单:

apt-get install python-pip
pip install shadowsocks

使用

ssserver -p 8000 -k password -m rc4-md5 -d start #启动,后台运行
ssserver -p 8000 -k password -m rc4-md5 -d stop  #停止

 
ss server启动了之后,我们可以通过多种客户端连接,诸如windows,linux,Mac os,android,iOS,openwrt等等,比如windows客户端也支持从gfwlist生成PAC智能翻墙。其他平台不多说,接下来说明如何在openwrt上使用ss client。

openwrt端

可以自己编译也可以使用预编译的ipk软件包。多平台下载链接:

http://sourceforge.net/projects/openwrt-dist/files/shadowsocks-libev/

luci-app-shadowsocks(全平台通用):

http://sourceforge.net/projects/openwrt-dist/files/luci-app/shadowsocks-spec/

配置shadowsocks

 

vim /etc/shadowsocks/config.json

{
    "server": "8.8.8.8",          #服务器IP
    "server_port": 8000,          #服务器端口
    "local_port": 1080,           #本地代理端口
    "password": "cubieboard417",  #密码
    "timeout": 60,                #超时
    "method": "rc4-md5"           #加密方式,需和服务器一致
}

 

至此shadowsocks的服务端和客户端已经配置完毕。可以使用shadowsocks 客户端或者SwitchOmega连接路由器的1080端口,测试是否工作正常。

新版的shadowsocks已经提供了透明代理的功能,所以不需要redsocks2就可以实现透明代理。在luci界面中,配置如下:
 
ss-pic1

ss-pic2
此时,已经可以访问某些国外网站,使用www.ip138.com测试为国内IP,www.whatismyip.com测试为东京IP。但是依然无法打开google,facebook,twitter等网站,应为DNS污染的原因,需要配合chinaDNS。

ChinaDNS

使用从APNIC(亚太互联网络信息中心)抓取到所有中国的IP,对于多内IP走国内线路,国外IP走国外线路,智能路由流量,官方推荐的做法是将ChinaDNS作为dnsmasq的上游DNS服务器。
下载chinaDNS:

http://sourceforge.net/projects/chinadns/files/dist/

luci-app-chinaDNS:

http://sourceforge.net/projects/openwrt-dist/files/luci-app/chinadns/

 

配置很简单,在luci界面中,启用双向过滤,上游服务器我设置为223.5.5.5,8.8.4.4,本地端口5353。

vim /etc/dnsmasq.conf 添加如下两行

no-resolv
server=127.0.0.1#5353

 
重启dnsmasq /etc/init.d/dnsmasq 之后已经可以智能路由了,打开google神马的也毫无压力,访问国内网站走国内线路,国外网站走国外线路。

其实不使用chinaDNS也可以,直接配置dnsmasq,指定一份域名列表,该列表中的域名都是用本地127.0.0.1#5300来请求解析,此处的5300端口即shadowsocks UDP转发监听的本地端口,于是这些DNS请求经过SS服务器最终到达8.8.4.4,再返回正确的请求结果。
 

方案二 dnsmasq


mkdir /etc/dnsmasq.d/
vim   /etc/dnsmasq.d/gfw.conf

#Google and Youtube
server=/.google.com/127.0.0.1#5300
server=/.google.com.hk/127.0.0.1#5300
server=/.gstatic.com/127.0.0.1#5300
server=/.ggpht.com/127.0.0.1#5300
server=/.googleusercontent.com/127.0.0.1#5300
server=/.appspot.com/127.0.0.1#5300
server=/.googlecode.com/127.0.0.1#5300
server=/.googleapis.com/127.0.0.1#5300
server=/.gmail.com/127.0.0.1#5300
server=/.google-analytics.com/127.0.0.1#5300
server=/.youtube.com/127.0.0.1#5300
server=/.googlevideo.com/127.0.0.1#5300
server=/.youtube-nocookie.com/127.0.0.1#5300
server=/.ytimg.com/127.0.0.1#5300
server=/.blogspot.com/127.0.0.1#5300
server=/.blogger.com/127.0.0.1#5300

#FaceBook
server=/.facebook.com/127.0.0.1#5300
server=/.thefacebook.com/127.0.0.1#5300
server=/.facebook.net/127.0.0.1#5300
server=/.fbcdn.net/127.0.0.1#5300
server=/.akamaihd.net/127.0.0.1#5300

#Twitter
server=/.twitter.com/127.0.0.1#5300
server=/.t.co/127.0.0.1#5300
server=/.bitly.com/127.0.0.1#5300
server=/.twimg.com/127.0.0.1#5300
server=/.tinypic.com/127.0.0.1#5300
server=/.yfrog.com/127.0.0.1#5300


/etc/init.d/dnsmasq #重启dnsmasq,测试可以发现同样可以访问google等网站了,依旧只能选路。

 


#更新 shadowsocks的ignore.list
wget -O- 'http://ftp.apnic.net/apnic/stats/apnic/delegated-apnic-latest' | awk -F\| '/CN\|ipv4/ { printf("%s/%d\n", $4, 32-log($5)/log(2)) }' > /etc/shadowsocks/ignore.list

#更新 chinaDNS的chnroute.txt
curl 'http://ftp.apnic.net/apnic/stats/apnic/delegated-apnic-latest' | grep ipv4 | grep CN | awk -F\| '{ printf("%s/%d\n", $4, 32-log($5)/log(2)) }' > chnroute.txt

 
你可能会发现这两份列表是相同的,的确如此,都是从apnic获取的CN IP列表。
shadowsocks的速度还是很快的,东京的VPS也很给力,youtube 4k视频无压力。这样一来路由器上直接翻墙,就省了pc、手机、ipad等设备的设置,还是很方便的。

openwrt科学上网,shadowsocks
 
  Sincerely

-- ***********************************
--    CLIFF.LIU
-- ***********************************

Johnson wolf

unread,
Jun 16, 2015, 12:38:29 AM6/16/15
to cli...@googlegroups.com
没有手机直接上的方法,这好像只是支持openwrt平台了。我的路由器,好像不是这个的。无法使用啊。。。

--
You received this message because you are subscribed to the Google Groups "CLIFFFF" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cliffff+u...@googlegroups.com.
To post to this group, send email to cli...@googlegroups.com.
Visit this group at http://groups.google.com/group/cliffff.
For more options, visit https://groups.google.com/d/optout.

1A5.png
Reply all
Reply to author
Forward
0 new messages