Open GoogleCodeExporter opened 8 years ago
列表是不是能复用gfwList,减轻工作量
项目地址
http://code.google.com/p/autoproxy-gfwlist/
Original comment by gythialy...@gmail.com
on 26 Sep 2010 at 10:25
很好的建議,不過我很久沒有關注gfwList的狀況了,目前可以�
��哪個URL抓取最新的list呢?也許需要找出具體可用的所有域��
�,例如www.facebook.com www.dropbox.com
這樣的具體域名,透過腳本對google
DNS找出所有的IP,最後生成一個route add的腳本才行。
Original comment by pahud...@gmail.com
on 26 Sep 2010 at 10:37
我查了一下這裡的內容,並且base64decode了一下
http://autoproxy-gfwlist.googlecode.com/svn/trunk/gfwlist.txt
發現大部分都是 .xxx.com 這樣的格式,換句話說可能我只能對
xxx.com 以及 www.xxx.com 做nslookup查出所有IP加進去列表,
倘若存在一個二級域名叫 api.xxx.com 或 img.xxx.com
則無法從gfwList裡面看出來了。
這樣或許已經可以減少很多工作量了。
Original comment by pahud...@gmail.com
on 26 Sep 2010 at 10:59
gfwList比较典型的就是.twitter.com和||twitter.com,分别对应关键词
封锁和IP封锁(对应顺序可能不对)
||twitter.com这样的规则就表示twitter.com几其所有子域名
如果要把二级域名的都标识出来的话,估计只能自己维护了��
�暂时没发现有现成的可用列表
Original comment by gythialy...@gmail.com
on 26 Sep 2010 at 11:09
這個的確是一個好辦法,但是後台維護的工作量會變很大...
而且還要考慮到日後autoddvpn要如何便利的更新這個ip list
Original comment by jkgd...@gmail.com
on 26 Sep 2010 at 11:26
[deleted comment]
第一版出來了,使用jffs模式的朋友請把這兩個放到原本jffs對
應的目錄地下
http://autoddvpn.googlecode.com/svn/trunk/grace.d/vpnup.sh
http://autoddvpn.googlecode.com/svn/trunk/grace.d/vpndown.sh
至於run.sh則是不變。
pptp+wget模式的朋友試試看這個rc_firewall
cd /tmp;wget http://autoddvpn.googlecode.com/svn/trunk/pptp/wget/run-grace.sh
&& /bin/sh run-grace.sh || touch failed
Original comment by pahud...@gmail.com
on 27 Sep 2010 at 1:38
grace
mode使用第二天了,目前相當滿意,已經寫好一個python可以根�
��最新的gfwList產生出vpnup.sh,並且加上一些對facebook等大網站�
��個別調整。
Original comment by pahud...@gmail.com
on 27 Sep 2010 at 5:16
[deleted comment]
更新完毕,其他OK,但貌似 访问 http://www.kaixin001.com/
就不动了。
Original comment by likuku.p...@gmail.com
on 28 Sep 2010 at 4:32
哦?應該不會的。可以試試看traceroute www.kaixin001.com
看看路由是不是直連
Original comment by pahud...@gmail.com
on 29 Sep 2010 at 12:58
[deleted comment]
twitter上面有人提到,如果gfwList上面的域名解析一律走8.8.8.8,
其余走本地DNS解析,我目前初步抓出了這些域名,產生了dnsma
sq options內容:
http://autoddvpn.googlecode.com/svn/trunk/grace.d/gfwdomains
有興趣的可以設置在你的DNSmasq
options裡面,然後記得把你預設的DNS從Google DNS,
OpenDNS改回本地DNS, 這樣應該就可以滿足了。
我稍後也會玩看看。
Original comment by pahud...@gmail.com
on 29 Sep 2010 at 4:07
/dev/nvram: Cannot allocate memory
哈杯具了,dnsmasq
options太長,超過nvram允許的長度了,看來這個方式沒辦法用��
�。
Original comment by pahud...@gmail.com
on 29 Sep 2010 at 4:12
http://autoddvpn.googlecode.com/svn/trunk/grace.d/vpnup.sh
里没有支持facebook以及twitter的支持吗?我这里nslookup后facebook
ip为:59.24.3.173
貌似文件没有作用,twitter也是。
Original comment by shown1...@gmail.com
on 30 Sep 2010 at 3:14
看来只能对vpnup.sh进行持续维护了。工作量有点大
Original comment by shown1...@gmail.com
on 30 Sep 2010 at 3:27
“已經寫好一個python可以根據最新的gfwList產生出vpnup.sh”
老大,此物何在?
Original comment by shown1...@gmail.com
on 30 Sep 2010 at 3:29
nslookup記得一定要對8.8.8.8查詢,而你跟8.8.8.8之間一定要走VPN,
否則查詢的結果很可能被劫持。
macbook-2:~ macbook$ nslookup www.facebook.com 8.8.8.8
Server: 8.8.8.8
Address: 8.8.8.8#53
Non-authoritative answer:
Name: www.facebook.com
Address: 69.63.189.26
macbook-2:grace.d macbook$ grep 69.63.189 vpnup.sh
route add -net 69.63.189.0/24 gw $VPNGW
就在這裡
Original comment by pahud...@gmail.com
on 30 Sep 2010 at 3:29
http://code.google.com/p/autoddvpn/source/browse/trunk/grace.d/gfwListgen.py
放上去SVN了,寫得很丑陋,勉強能用就是。
執行之後會動態從最新的gfwList抓取,分析,並且產生新的vpnu
p-grace.sh
把它rename成vpnup.sh就能用了。
Original comment by pahud...@gmail.com
on 30 Sep 2010 at 3:33
再跟大家提醒一下:
1. autoddvon的DNS一定要設置 8.8.8.8 8.8.4.4 208.67.222.222
這三台,分別是兩台google DNS以及一台OpenDNS
2. grace mode vpnup.sh裡面一開始我就定義了到這三台一律走VPN
##### begin batch route #####
# Google DNS and OpenDNS
route add -host 8.8.8.8 gw $VPNGW
route add -host 8.8.4.4 gw $VPNGW
route add -host 208.67.222.222 gw $VPNGW
3.
各位如果要nslookup查詢網站的話,一定要對8.8.8.8查詢,例如:
macbook-2:grace.d macbook$ nslookup www.facebook.com 8.8.8.8
Server: 8.8.8.8
Address: 8.8.8.8#53
Non-authoritative answer:
Name: www.facebook.com
Address: 69.63.181.11
同時一定要確定你跟8.8.8.8之間是有走VPN的,可以用traceroute
or mtr指令查詢。
macbook-2:grace.d macbook$ traceroute 8.8.8.8
traceroute to 8.8.8.8 (8.8.8.8), 64 hops max, 52 byte packets
1 dd-wrt (10.0.2.1) 1.292 ms 0.961 ms 0.879 ms
2 10.9.9.1 (10.9.9.1) 302.844 ms 301.889 ms 300.982 ms <---- 這裡走 VPNGW了
3 216-18-195-1.hosted.static.webnx.com (216.18.195.1) 300.774 ms 300.565 ms 301.433 ms
^C
最後就是我已經對facebook已知的網段做整個class B的allow
# for all facebook
route add -net 66.220.0.0/16 gw $VPNGW
route add -net 69.63.0.0/16 gw $VPNGW
應該不會有問題了。大家一起對facebook致敬吧!
Original comment by pahud...@gmail.com
on 30 Sep 2010 at 4:16
[deleted comment]
不知是否我使用方法不对,我直接将
http://code.google.com/p/autoddvpn/source/browse/trunk/grace.d/gfwListgen.py
重命名为vpnup.sh替换comment7中的vpnup.sh然后reboot设备,得到以��
�log:
root@shown_g300Nnh:~# more /tmp/autoddvpn.log
[INFO#966] 01/Jan/1970:00:00:07 log starts
[INFO#966] 01/Jan/1970:00:00:07 pptp+jffs mode
[INFO#966] 01/Jan/1970:00:00:07 modifying /tmp/pptpd_client/ip-up
[INFO#966] 01/Jan/1970:00:00:07 /tmp/pptpd_client/ip-up not exists, sleep 10sec.
[INFO#966] 01/Jan/1970:00:00:17 /tmp/pptpd_client/ip-up not exists, sleep 10sec.
[INFO#966] 01/Jan/1970:00:00:27 /tmp/pptpd_client/ip-up not exists, sleep 10sec.
[INFO#966] 01/Jan/1970:00:00:37 /tmp/pptpd_client/ip-up not exists, sleep 10sec.
[INFO#966] 01/Jan/1970:00:00:47 /tmp/pptpd_client/ip-up modified
[INFO#966] 01/Jan/1970:00:00:47 modifying /tmp/pptpd_client/ip-down
[INFO#966] 01/Jan/1970:00:00:47 /tmp/pptpd_client/ip-down modified
[INFO#966] 01/Jan/1970:00:00:47 ALL DONE. Let's wait for VPN being connected.
然而之前按照comment7的vpnup.sh正确结果应该为:
root@shown_g300Nnh:~# more /tmp/autoddvpn.log
[INFO#967] 01/Jan/1970:00:00:07 log starts
[INFO#967] 01/Jan/1970:00:00:07 pptp+jffs mode
[INFO#967] 01/Jan/1970:00:00:07 modifying /tmp/pptpd_client/ip-up
[INFO#967] 01/Jan/1970:00:00:07 /tmp/pptpd_client/ip-up not exists, sleep 10sec.
[INFO#967] 01/Jan/1970:00:00:17 /tmp/pptpd_client/ip-up not exists, sleep 10sec.
[INFO#967] 01/Jan/1970:00:00:27 /tmp/pptpd_client/ip-up not exists, sleep 10sec.
[INFO#967] 01/Jan/1970:00:00:37 /tmp/pptpd_client/ip-up not exists, sleep 10sec.
[INFO#967] 30/Sep/2010:15:09:10 /tmp/pptpd_client/ip-up modified
[INFO#967] 30/Sep/2010:15:09:10 modifying /tmp/pptpd_client/ip-down
[INFO#967] 30/Sep/2010:15:09:10 /tmp/pptpd_client/ip-down modified
[INFO#967] 30/Sep/2010:15:09:10 ALL DONE. Let's wait for VPN being connected.
[INFO#1635] 30/Sep/2010:15:09:17 vpnup.sh started
[INFO#1635] 30/Sep/2010:15:09:17 router type: DD-WRT
[INFO#1635] 30/Sep/2010:15:09:17 adding the static routes, this may take a
while.
[INFO#1635] 30/Sep/2010:15:09:20 preparing the exceptional routes
[INFO#1635] 30/Sep/2010:15:09:20 exceptional routes disabled.
[INFO#1635] 30/Sep/2010:15:09:20 exceptional routes features detail:
http://goo.gl/fYfJ
[INFO#1635] 30/Sep/2010:15:09:20 vpnup.sh ended
Original comment by shown1...@gmail.com
on 30 Sep 2010 at 7:15
HI,
gfwListgen.py這個python執行之後會產生vpnup-grace.sh
大約需要5min的時間,產生出來vpnup-grace.sh把它rename成vpnup.sh之
後,就可以用了。但是正常情況下你不需要去執行這個python,
直接拿我SVN上面的vpnup.sh用即可
也就是這個
http://autoddvpn.googlecode.com/svn/trunk/grace.d/vpnup.sh
至於vpndown.sh這個其實不重要,因為VPN斷了的話,所有透過VPNG
W的路由表自動會被清空,但是你還是可以把下面這個拿過去�
��。
http://autoddvpn.googlecode.com/svn/trunk/grace.d/vpndown.sh
從log看來你是jffs+pptp模式,所以你應該直接講
http://autoddvpn.googlecode.com/svn/trunk/grace.d/vpnup.sh
http://autoddvpn.googlecode.com/svn/trunk/grace.d/vpndown.sh
這兩個放到 /jffs/pptp/ 下,取代原本的vpnup.sh vpndown.sh,
至於run.sh則保持不變。
記得vpnup.sh vpndown.sh要chmod +x變成可執行。
如果你的LOG最後停留在
[INFO#966] 01/Jan/1970:00:00:47 ALL DONE. Let's wait for VPN being connected.
表示一切就緒,等待PPTP完成撥號,一旦撥號之後就會觸發vpnu
p.sh執行了,如果VPN一直沒有播上,請用
ipconfig ppp0
or
ipconfig ppp1
檢查看看是否沒有抓到IP,有可能是pptp設置錯誤或怎樣。
Original comment by pahud...@gmail.com
on 30 Sep 2010 at 7:51
多谢,问题基本都解决了。不过vpnup.sh的维护还是需要大家一
起搞的不知能否找几个可靠的人一起来维护下。
刚才使用traceroute两次twitter结果
第一次:
root@shown_g300Nnh:~# traceroute www.twitter.com
traceroute: warning: www.twitter.com has multiple addresses; using
128.242.240.52
traceroute to twitter.com (128.242.240.52), 30 hops max, 38 byte packets
1 192.168.0.1 (192.168.0.1) 332.746 ms 346.402 ms 343.120 ms (看到走vpn)
2 209.59.222.1 (209.59.222.1) 359.541 ms 354.906 ms 351.916 ms
3 237.252.148.207.static.yourhostingaccount.com (207.148.252.237) 345.462 ms 351.339 ms 339.673 ms
第二次:
root@shown_g300Nnh:~# traceroute www.twitter.com
traceroute: warning: www.twitter.com has multiple addresses; using
128.242.245.180
traceroute to twitter.com (128.242.245.180), 30 hops max, 38 byte
packets(该ip不在vpnup.sh)
1 124.74.12.246 (124.74.12.246) 14.871 ms 11.889 ms 15.152 ms (杯具了)
2 124.74.12.173 (124.74.12.173) 13.650 ms 14.717 ms 13.982 ms
Original comment by shown1...@gmail.com
on 30 Sep 2010 at 8:15
@shown1985
macbook-2:~ macbook$ nslookup www.twitter.com 8.8.8.8
Server: 8.8.8.8
Address: 8.8.8.8#53
Non-authoritative answer:
www.twitter.com canonical name = twitter.com.
Name: twitter.com
Address: 128.242.240.148
Name: twitter.com
Address: 128.242.240.180
Name: twitter.com
Address: 168.143.162.36
macbook-2:~ macbook$ nslookup www.twitter.com 8.8.8.8
Server: 8.8.8.8
Address: 8.8.8.8#53
Non-authoritative answer:
www.twitter.com canonical name = twitter.com.
Name: twitter.com
Address: 128.242.245.212
Name: twitter.com
Address: 168.143.162.100
Name: twitter.com
Address: 128.242.240.116
我對8.8.8.8查了一下,一開始查不出 128.242.245.180 的IP,
後來多查幾次之後出現了。
這就是autoddvpn grace
mode的缺點,萬一網站使用了新的IP網段,就需要有人維護加��
�去了,但gfwList這種靠URL pattern的就沒有問題。
已經提交上去SVN了
http://autoddvpn.googlecode.com/svn/trunk/grace.d/vpnup.sh
# {www|api}.twitter.com
route add -net 168.143.162.0/24 gw $VPNGW
route add -net 168.143.171.0/24 gw $VPNGW
route add -net 128.242.240.0/24 gw $VPNGW
route add -net 128.242.245.0/24 gw $VPNGW
四個twitter網段全開!
Original comment by pahud...@gmail.com
on 30 Sep 2010 at 8:23
>不过vpnup.sh的维护还是需要大家一起搞的不知能否找几个可��
�的人一起来维护下。
我的想法是,先確保一些主要的翻牆網站都能正常訪問,例��
�facebook twitter youtube
google等服務。這些我會盡可能打開全部class C or class
B,因為這些大公司有很多很多的IP。
如果你查看grace mode vpnup.sh內容的話可以找到這段
# all others
route add -host 109.104.79.84 gw $VPNGW
route add -host 109.239.51.251 gw $VPNGW
route add -host 109.239.54.15 gw $VPNGW
...
這裡# all
others以下的,就是gfwListgen.py針對gfwList的內容,實時做DNS
query分析產生出來的IP或class C subnet,
這裡其實可以覆蓋大部分gfwList的內容了,但是仍然會有漏網�
��魚,所以grace
mode還是要有心理准備有很小的機會仍然會撞牆,但是我本身�
��了這幾天幾乎沒有碰到,事實上gfwList裡面的網站有90%我是��
�本沒去過的。
目前我想先我自己維護吧,各位如果發現哪裡上不去,IP沒有
被列入vpnup.sh裡面,開個issue給我,我應該馬上可以加入。
如果真的很急話,各位可以手動修改vpnup.sh就是了。
Original comment by pahud...@gmail.com
on 30 Sep 2010 at 8:33
ok,建议专门开一issues用来收集相关ip,这里再报一个。。
youtube
64.233.169.0/24
Original comment by shown1...@gmail.com
on 30 Sep 2010 at 11:44
@shown1985
好的,麻煩照此格式來回報吧!感謝
http://code.google.com/p/autoddvpn/issues/detail?id=25
Original comment by pahud...@gmail.com
on 30 Sep 2010 at 3:29
最近電信到美西一到晚上就掉包嚴重造成openvpn很不穩定,而g
race
mode如果在VPN線路不穩的時候會造成到8.8.8.8之間的解析非常緩
慢或無法返回,有個解決方式是default
DNS一律使用本地DNS,然後dnsmasq_options這樣設置
address=/www.facebook.com/66.220.149.25
address=/www.youtube.com/72.14.213.190
server=/google.com/8.8.8.8
server=/facebook.com/8.8.8.8
server=/fbcdn.net/8.8.8.8
server=/twitter.com/8.8.8.8
server=/youtube.com/8.8.8.8
這樣可以使得有劫持風險的域名一律走8.8.8.8,
即使VPN斷線了寧可連不上也不要被污染,其余域名就走國內DN
S來解析。
我目前正常試驗這個做法。
Original comment by pahud...@gmail.com
on 25 Oct 2010 at 4:30
昨晚測試新的運作模式,非常穩定,即使跑BT的情況VPN時有斷
線,也不影響國內網站瀏覽了!
Original comment by pahud...@gmail.com
on 26 Oct 2010 at 1:29
我想请问一下,这里说道:“至於vpndown.sh這個其實不重要,�
��為VPN斷了的話,所有透過VPNGW的路由表自動會被清空,但是�
��還是可以把下面這個拿過去用。”
如果路由表被清空了,在 manual openvpn 下,openvpn
自动重新连接后,没有路由表。怎么办呢?
Original comment by m...@ike.im
on 9 Jan 2011 at 4:54
非常好,这个也是我一直想做的,我会持续关注这个项目的,有��
�么好的想法,就提交上来
Original comment by chij...@gmail.com
on 7 May 2011 at 8:57
非常好,这个也是我一直想做的,我会持续关注这个项目的,有��
�么好的想法,就提交上来
Original comment by chij...@gmail.com
on 7 May 2011 at 8:58
新版本的ddwrt openvpn版本有 policy based routing,
可以利用这个内置的参数,应该会更好一些
Original comment by kev...@gmail.com
on 29 May 2011 at 8:55
能否在路由器上运行dnsforwarder用tcp方式解析境外域名,不走vp
n?
Original comment by sgzz...@gmail.com
on 5 Mar 2012 at 8:49
wget模式是默认走VPN GW, 添加大陆IP到路由表,让它们走本地GW.
grace模式是默认走本地GW, 添加GFW IP到路由表, 让它们走VPN GW.
我的DD-WRT没有JFFS,只能用WGET模式.但是我不希望全局走VPN,而是
用Grace那种.
这样,我能不能直接下载http://autoddvpn.googlecode.com/svn/trunk/grace.d
/vpnup.sh来替代http://autoddvpn.googlecode.com/svn/trunk/vpnup.sh呢?
我认为JFFS和非JFFS的区别是能否挂载闪存而已.我在非JFFS环境�
��用WGET命令,应该依然能用Grace那种模式.
我说得对吗?
Original comment by kuk...@gmail.com
on 23 May 2012 at 7:46
我的想法Comment #36实现了.
对比grace.d/vpnup.sh和trunk/vpnup.sh,两者没什么不兼容,于是修改run
.sh,把$DLDIR变量里的trunk/下载路径改为trunk/grace.d/.
修改options.vpn,而且为安全起见去掉VPN用户密码.然后把run.sh和o
ptions.vpn都上传到自己的网站上. 其余路由设置和WIKI里的相同.
我的环境是Buffalo WHR-G300N路由ADSL电信拨号, Firmware: DD-WRT
v24-sp2 (03/19/12) std, 没有JFFS, 存在options.vpn BUG, 只能用wget解决.
开机命令设置为:
rm -f /tmp/pptpd_client/options.vpn /tmp/failed /tmp/run.sh /tmp/vpnup.sh
/tmp/vpndown.sh
cd /tmp/pptpd_client;wget http://你的网站/options.vpn
echo "name VPN用户名" >> /tmp/pptpd_client/options.vpn
echo "password VPN密码" >> /tmp/pptpd_client/options.vpn
cd /tmp;wget http://你的网站//run.sh && /bin/sh run.sh || touch failed
Original comment by kuk...@gmail.com
on 23 May 2012 at 3:05
新建了一个 google code project - dnsmasq-vpn。
基于 dnsmasq 的改进,配合 autoddvpn 在 dd-wrt
无线路由器上进行更智能的透明翻墙,所有经由 DNS Forwarder
的域名及对应解析出来的 IP 均由 dnsmasq-vpn
在线设定路由通过 VPN 出去,不再需要预加载 autoddvpn
的一千多条静态路由规则,简化启动时间和脚本维护。此外��
�还基于 autoproxy 的 gfwList
维护了已知被墙的域名,这些域名均自动由 dnsmasq-vpn
在线按需加载路由规则。
已经在我的小路由器上跑了一个星期,基本稳定了,相关文��
�我会陆续补充。
Original comment by lee...@gmail.com
on 23 Nov 2012 at 5:50
Original issue reported on code.google.com by
pahud...@gmail.com
on 26 Sep 2010 at 9:46