hackgfw / openwrt-gfw Goto Github PK
View Code? Open in Web Editor NEWOpenwrt的翻墙解决方案
License: GNU General Public License v3.0
Openwrt的翻墙解决方案
License: GNU General Public License v3.0
再有,能不能教程稍微详细点
有时候一句话就让小白用户少走弯路
问个弱弱的问题,PC上能不能设置呢?我没路由器。谢谢!
我刷了OptimizePPTPVPN,mw4530r,14.07。配置好/etc/config/network的wall和/etc/config/firewall之后,ifconfig看不到wall。设置/etc/ppp/options debug和logfile /var/log/ppp,但没出错信息。其它都正常。
我怀疑本地线路的8.8.8.8/8.8.4.4 DNS结果是伪造的。现在判断污染IP的方法是本地DNS返回的结果和8.8.8.8/8.8.4.4最终返回的不一致。但DNS结果可以伪造。
反正国外的ip,80/443都要走VPN。如果以本地线路的8.8.8.8/8.8.4.4为准,最快的google服务器在香港,而我的VPN在加州,还得往返两次太平洋,延迟非常高。而其它端口的P2P直接用IP通讯,不需要DNS。国内IP被污染?公安狗直接拔网线。。。
国内IP不是不通过VPN吗?但关掉hackgfw又正常,GFW搞得什么鬼。。。
root@OpenWrt:~# nslookup list.jd.com
Server: 127.0.0.1
Address 1: 127.0.0.1 localhost
Name: list.jd.com
Address 1: 106.39.178.1
root@OpenWrt:~# nslookup item.jd.com
Server: 127.0.0.1
Address 1: 127.0.0.1 localhost
Name: item.jd.com
Address 1: 106.39.178.1
现在只能保证TOP10如GOOGLE、YOUTUBE
请问,是否可以将OptimizePPTPVPN方案提交并合并到官方的版本中?
实际测试的时候,要搭配dnsmasq的『严谨查序』(即严格按照顺序查询DNS)功能才能有效避免污染。
但是这边的情况是即使在状态-->防火墙那里看不到protect_dns,只要开了严谨查序功能也能避免污染,反倒是如果不开严谨查序功能的话即使有protect_dns条目也不能很好的避免污染。
看了gfw-dns的原理说明之后表示更加糊涂了,到底是dnsmasq自身的严谨查序真的可以避免污染呢?还是要搭配防火墙的protect_dns一起用才有效?
另外一个就是我要如何修改makefile规则,才能够实现gfw-dns可以选择DEPENDS dnsmasq或者dnsmasq-full呢?谢谢!
是不是gfw改了dns劫持的算法??
root@OpenWrt:~# nslookup twitter.com 221.5.88.88
Server: 221.5.88.88
Address 1: 221.5.88.88 cache1-jm
Name: twitter.com
Address 1: 59.24.3.173
root@OpenWrt:~# nslookup twitter.com 8.8.8.8
Server: 8.8.8.8
Address 1: 8.8.8.8 google-public-dns-a.google.com
Name: twitter.com
Address 1: 243.185.187.39
root@OpenWrt:~# nslookup facebook.com 221.5.88.88
Server: 221.5.88.88
Address 1: 221.5.88.88 cache1-jm
Name: facebook.com
Address 1: 37.61.54.158
root@OpenWrt:~# nslookup facebook.com 8.8.8.8
Server: 8.8.8.8
Address 1: 8.8.8.8 google-public-dns-a.google.com
Name: facebook.com
Address 1: 243.185.187.39
用8.8.8.8的,反而会劫持?
root@OpenWrt:# iptables -L protectdns# dig: couldn't get address for 'www.twitter.com': not found
Chain protectdns (2 references)
target prot opt source destination
DROP all -- anywhere anywhere u32 "0x4&0x1fff=0x0&&0x0>>0x16&0x3c@0x8&0x8000=0x8000&&0x0>>0x16&0x3c@0xe=0x0"
DROP all -- anywhere anywhere STRING match "|31027b38|" ALGO name bm FROM 60 TO 500
DROP all -- anywhere anywhere STRING match "|cb620741|" ALGO name bm FROM 60 TO 500
DROP all -- anywhere anywhere STRING match "|fd9d0ea5|" ALGO name bm FROM 60 TO 500
DROP all -- anywhere anywhere STRING match "|f3b9bb27|" ALGO name bm FROM 60 TO 500
DROP all -- anywhere anywhere STRING match "|2e52ae44|" ALGO name bm FROM 60 TO 500
DROP all -- anywhere anywhere STRING match "|042442b2|" ALGO name bm FROM 60 TO 500
DROP all -- anywhere anywhere STRING match "|bda31105|" ALGO name bm FROM 60 TO 500
DROP all -- anywhere anywhere STRING match "|bc050460|" ALGO name bm FROM 60 TO 500
DROP all -- anywhere anywhere STRING match "|5d2e0859|" ALGO name bm FROM 60 TO 500
DROP all -- anywhere anywhere STRING match "|4a7d7f66|" ALGO name bm FROM 60 TO 500
DROP all -- anywhere anywhere STRING match "|0807c62d|" ALGO name bm FROM 60 TO 500
DROP all -- anywhere anywhere STRING match "|3b1803ad|" ALGO name bm FROM 60 TO 500
DROP all -- anywhere anywhere STRING match "|7f000001|" ALGO name bm FROM 60 TO 500
DROP all -- anywhere anywhere STRING match "|253d369e|" ALGO name bm FROM 60 TO 500
root@OpenWrt:
dig: couldn't get address for 'twitter.com': not found
dig: couldn't get address for 'www.facebook.com': not found
dig: couldn't get address for 'youtube.com': not found
dig: couldn't get address for 'encrypted.google.com': not found
dig: couldn't get address for 'plus.google.com': not found
dig: couldn't get address for 'www.openvpn.net': not found
dig: couldn't get address for 'openvpn.net': not found
dig: couldn't get address for 'svn.openvpn.net': not found
dig: couldn't get address for 'shell.cjb.net': not found
您好,想请教一下有没有L2TP/IPSec的方案,如何和您提供的包集成。
最近发现PPTP被墙干扰,同一个服务器用L2TP/IPSec看Youtube 720P流畅的很,用PPTP看480P就卡得不行。
我大概能看懂openwrt的wiki http://wiki.openwrt.org/inbox/openswanxl2tpvpn
但不太清楚如何修改配置来和您的包集成,有些什么要注意的地方,望指教!
一直刷http://downloads.openwrt.org/barrier_breaker/
10.1刷过一回机,看ar71xx/日期变到了9.30也没多想,以为会出个final目录呢
刚才想起来去首页看log,才确定final release已经过6天了,盼星星盼月亮的等啊
话说10.1刷机还是因为VPN跟P2P冲突,手上有个闲置WR703N打算刷了当24小时下载机,结果不停崩溃
才想起来用e350做的NAS的amule-daemon至少得256M才能跑顺畅,根本买不到512M RAM路由器
最近一周,在没有任何防护的备用宽带线路上重新测试gfw-dns。
原意是想看看gfw到底能随机个什么ip出来(某德国18X网站的梗……)
然后惊奇的发现,脚本运行得出来的ip重新变回了27~30个(一周时间)
为了验证,今天早上特意重启防火墙,然后利用脚本把gfw-dns脚本执行了50次(start方式,每执行一次之后就重启dnsmasq以清空dns解析缓存)
结果得到的ip基本在30个左右浮动!而且都是能在维基百科里面查到的ip!
是不是可以认为:某知道随机ip的严重后果(全世界范围的DDoS),迫于某种压力而关闭了随机ip返回?
求其他地区的测试!
通过mwan3双拨的情况下,请问如何修改mark才能兼容?
可否使用load banlance中rule实现https走vpn?
您好,感谢您开发和维护此代码,对我帮助很大。
我现在在国外,我在国内有一个PPTP VPN服务器,想通过OpenWRT访问这个服务器看国内的视频。
但的这个Openwrt-gfw是设置了所有的**IP地址走本地,国外地址走VPN访问。
我需要的刚好和您这个想法,就像所有的国外IP地址走我自己的国外的路由器,所有国内的IP地址走我在国内的VPN服务器。
请问怎么修改这个IP规则呢?是修改IP-UP-Wall 这个文件吗?比如这里
iptables -t mangle -N gfwvpn 2>/dev/null
iptables -t mangle -F gfwvpn
iptables -t mangle -I PREROUTING -m set ! --match-set whiteip src -m set ! --match-set whiteip dst -m set ! --match-set whitezone dst -j gfwvpn
iptables -t mangle -I OUTPUT -m set ! --match-set whiteip src -m set ! --match-set whiteip dst -m set ! --match-set whitezone dst -j gfwvpn
iptables -t mangle -I FORWARD -m set ! --match-set whiteip src -m set ! --match-set whiteip dst -m set ! --match-set whitezone dst -j gfwvpn
config_foreach handle_rule rule
CHKIPROUTE=$(grep wall /etc/iproute2/rt_tables)
if [ -z "$CHKIPROUTE" ]; then
echo "11 wall" >> /etc/iproute2/rt_tables
fi
ip route add table wall default via $PPP_LOCAL
ip rule add fwmark 0xffff table wall priority 1
root@OpenWrt:~# nslookup www.solidot.org
Server: 127.0.0.1
Address 1: 127.0.0.1 localhost
nslookup: can't resolve 'www.solidot.org': Name or service not known
root@OpenWrt:# ping www.solidot.org# nslookup solidot.org
ping: bad address 'www.solidot.org'
root@OpenWrt:
Server: 127.0.0.1
Address 1: 127.0.0.1 localhost
nslookup: can't resolve 'solidot.org': Name or service not known
pptp-wall Link encap:Point-to-Point Protocol
inet addr:10.0.1.5 P-t-P:10.0.1.1 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1440 Metric:1
RX packets:3438 errors:0 dropped:0 overruns:0 frame:0
TX packets:4186 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:3
RX bytes:2447348 (2.3 MiB) TX bytes:510188 (498.2 KiB)
VPN我已经成功拨入,解析youtube和facebook的结果都已经正常,我想前面关于DNS的配置已经做对了。
后续需要对PPTPvpn进行配置并且启用,我看到VPN已经正常使用
pptp-wall Link encap:Point-to-Point Protocol
inet addr:192.168.1.5 P-t-P:192.168.0.1 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1
RX packets:8 errors:0 dropped:0 overruns:0 frame:0
TX packets:9 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:3
RX bytes:266 (266.0 B) TX bytes:360 (360.0 B)
但是我无法访问youtube和facebook,在GOOGLE上输入关键字还是被重置。
root@OpenWrt:/etc/config# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 123.123.104.1 0.0.0.0 UG 0 0 0 pppoe-wan
49.212.209.32 123.123.104.1 255.255.255.255 UGH 0 0 0 pppoe-wan
123.123.104.1 0.0.0.0 255.255.255.255 UH 0 0 0 pppoe-wan
192.168.0.1 0.0.0.0 255.255.255.255 UH 0 0 0 pptp-wall
192.168.199.0 0.0.0.0 255.255.255.0 U 0 0 0 br-lan
198.23.251.31 123.123.104.1 255.255.255.255 UGH 0 0 0 pppoe-wan
198.74.96.156 123.123.104.1 255.255.255.255 UGH 0 0 0 pppoe-wan
209.141.46.109 123.123.104.1 255.255.255.255 UGH 0 0 0 pppoe-wan
209.141.53.19 123.123.104.1 255.255.255.255 UGH 0 0 0 pppoe-wan
ip-up下的脚本也成功启用了,我通过修改打印日志的方式查询的
你好,感谢您上次回复openvpn的问题,在使用AntiDNSPoisoning的时候,发现查询 www.facebook.com 的时候一直使用电信的dns,返回69.171.234.37 ,这个ip的确是facebook的,但这个ip无法访问,原因是无法使用8.8.8.8DNS 导致返回的IP不准确。AntiDNSPoisoning配置已经正确,twitter.com就没这个问题。
另外即使在resolv.conf指定了server=/www.facebook.com/8.8.8.8 server=/facebook.com/8.8.8.8 也不再起作用。
root@TP-LINK:/tmp# nslookup www.facebook.com
Server: 127.0.0.1
Address 1: 127.0.0.1 localhost
Name: www.facebook.com
Address 1: 2a03:2880:2110:cf01:face:b00c:0:9 edge-star6-ecmp-12-frc1.facebook.com
Address 2: 69.171.234.37
root@TP-LINK:/tmp# nslookup www.facebook.com 8.8.8.8
Server: 8.8.8.8
Address 1: 8.8.8.8 google-public-dns-a.google.com
Name: www.facebook.com
Address 1: 2a03:2880:2030:2f01:face:b00c:0:8 edge-star6-ecmp-02-ash3.facebook.com
Address 2: 31.13.75.1 edge-star-shv-01-pao1.facebook.com
root@TP-LINK:/tmp# nslookup www.facebook.com 218.85.152.99
Server: 218.85.152.99
Address 1: 218.85.152.99 FJ-DNS.xm.fj.cn
Name: www.facebook.com
Address 1: 69.171.234.37
感谢您的分享!
我直接刷入wr720n路由器可以,但是用虚拟机刷软路由时 ,提示127错误。
能否帮我在这里找一个直接支持的版本?
http://downloads.openwrt.org/snapshots/trunk/x86/
谢谢~
搜了下递归DNS,还是没明白原理。老版逐步安装配置PPTPVPN+新版AntiDNSPoisoning,会不停重连VPN。而老版逐步安装配置PPTPVPN本身可以单独正常运行。已经在/etc/ppp/ip-up.d/ip-up-wall添加了iptables -t mangle -A PREROUTING -p udp --dport 53 -m set ! --match-set whiteip src -m set ! --match-set whiteip dst -m set ! --match-set china dst -j MARK --set-mark 0xffff
是否可以理解为情况1(黑体为改动的部分):
config zone
option name wan
option network 'wan wall'
option input REJECT
option output ACCEPT
option forward REJECT
option masq 1
option mtu_fix 1
情况2(这是我的配置文件,多一个wan6):
config zone
option name wan
list network 'wan'
list network 'wall'
list network 'wan6'
option input REJECT
option output ACCEPT
option forward REJECT
option masq 1
option mtu_fix 1
由此可见隐藏IP的重要性了,问题是,VPN/VPS服务商有可能被买通,或被黑客攻陷,然后付款记录/IP就会暴露身份。。。
如果用老的PPTPVPN就没法启动/etc/config/gfw-vpn中的DNS配置,然后DNS不通没法上网。。。即便在/etc/ppp/ip-up.d/ip-up-wall添加了iptables -t mangle -A PREROUTING -p udp --dport 53 -m set ! --match-set whiteip src -m set ! --match-set whiteip dst -m set ! --match-set china dst -j MARK --set-mark 0xffff也不行,只能注掉所有新的AntiDNSPoisoning配置才能上网。
BTW:之前老的AntiDNSPoisoning没法让google以外的网站不被污染,一直凑合着用,实在太需要google之外的国际网站就注掉路由器VPN重启网路再用PC连VPN。
直接编译了gfw-vpn刷机无法连vpn而且没有任何出错信息;
去掉gfw-vpn再编译刷机,装gfw-vpn.ipk还是无法连vpn而且没有任何出错信息;
去掉gfw-vpn再编译刷机,逐步安装配置,可以连vpn但无法访问google;
以前都使用sysupgrade -c sysupgrade.bin保留了配置文件,所以这次用factory.bin覆盖,结果还是无法连vpn而且没有任何出错信息;
再加上gfw-vpn编译,用factory.bin覆盖;再去掉gfw-vpn编译,用sysupgrade -c sysupgrade.bin升级并保留配置文件;然后逐步安装配置,可以连vpn但无法访问google;
修改mtu终于可以正常访问google了。。。
到底什么原因?能否提供真正的傻瓜rom?这个过程对普通人太崎岖。
做了这么久翻墙先烈,终于成为了翻墙先驱了。。。
编译、安装ipk在我的mw4530r上vpn不拨号也没任何日志。。。只能用老办法逐步安装配置。
pptp干扰挺大的,很容易断线,要是能配合作者这个就不错了!
已尽量模仿pc拨号的参数,在/etc/ppp/options.pptp加上了refuse-eap refuse-pap refuse-chap,但google maps/groups慢的没法用。
之前用过您写的防止DNS污染,非常感谢。您现在的pptp版本,服务器端要做很多更改啊,这样别人就不能用了。
比如插一个广告窗口。虽然目前还不严重,但很无耻很令人愤慨!
fastdns中可否使用shadowsocks的UDP转发加密?比如使用iptables
如题,除去空包规则以外规则竟然多达160条!
假定脚本原理没问题的话,间接说明了gfw所使用的污染ip多达160个,比wikipedia上的多出近1倍!
不过比较好奇为什么会有这一个|00 00 00 00|(转译过来大概就是0.0.0.0?)这一条呢?
以下贴出来的是由脚本生成的规则,上述的奇葩在15行
iptables -N protectdns
iptables -I protectdns -m string --algo bm --hex-string "|25 3D 36 9E |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|31 02 7B 38 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|4A 7D 7F 66 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|59 1F 37 6A |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|2E 26 18 D1 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|BD A3 11 05 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|04 24 42 B2 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|3B 18 03 AD |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|4A 7D 27 71 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|2E 52 AE 44 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|C5 04 04 0C |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|CA B5 07 55 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|CB A1 E6 AB |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|00 00 00 00 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|CB 62 07 41 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|76 05 31 06 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|9F 6A 79 4B |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|7B 32 31 AB |" --from 60 --to 500 -j DROP
iptables -I protectdns -m u32 --u32 "4 & 0x1FFF = 0 && 0 >> 22 & 0x3C @ 8 & 0x8000 = 0x8000 && 0 >> 22 & 0x3C @ 14 = 0" -j DROP
iptables -I INPUT ! -i lo -p udp --sport 53 -j protectdns
iptables -I FORWARD -p udp --sport 53 -j protectdns
iptables -I protectdns -m string --algo bm --hex-string "|FD 9D 0E A5 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|4A 7D 9B 66 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|4D 04 07 5C |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|7B 7E F9 EE |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|BC 05 04 60 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|F9 81 2E 30 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|36 4C 87 01 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|CA 6A 01 02 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|18 33 B8 00 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|4A 7D 27 66 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|1C 0D D8 00 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|DD 08 45 1B |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|D1 91 36 32 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|7A DA 65 BE |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|D1 55 E5 8A |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|F3 B9 BB 1E |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|02 01 01 02 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|17 59 05 3C |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|2E 14 7E FC |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|4A 75 39 8A |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|5D 2E 08 59 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|7F 00 00 02 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|04 C1 50 00 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|D8 EA B3 0D |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|D3 05 85 12 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|3D 36 1C 06 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|0C 57 85 00 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|40 21 58 A1 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|4E 10 31 0F |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|D8 8B D5 90 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|D0 6D 8A 37 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|71 0B C2 BE |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|F3 B9 BB 27 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|D5 BA 21 05 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|CB C7 39 51 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|7D E6 94 30 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|0E 66 F9 12 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|08 07 C6 2D |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|08 69 54 00 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|10 3F 9B 00 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|14 8B 38 00 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|D3 08 45 1B |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|AD C9 D8 06 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|42 CE 0B C2 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|46 22 20 AA |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|2E 04 62 94 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|AE 81 12 93 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|D5 A3 08 1A |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|D5 EE AC E6 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|36 EC DB D7 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|36 FB 68 F7 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|25 FC 60 D7 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|45 3D 3C 7A |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|41 B5 78 5A |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|A8 9C A8 15 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|4A 7C C3 49 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|05 09 88 84 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|BE 03 7E E4 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|42 92 02 F1 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|53 DE 7C BB |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|36 FB B6 F9 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|3E D2 58 DE |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|5B EF C9 10 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|BC 28 6C 0D |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|BC A5 1F 18 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|5C 35 7F AF |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|05 87 6C CF |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|46 28 D5 F1 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|55 6F 12 8A |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|36 AE 28 B6 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|3E 4B DD 1F |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|D4 5C C3 0A |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|36 BF EA B9 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|50 F1 5C B4 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|BC 75 39 A0 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|42 55 86 BA |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|5E C7 BF 43 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|B4 B3 D4 8D |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|D5 13 A1 8D |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|DC 6E 96 5A |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|1F 19 BF 86 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|D5 85 6F 66 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|59 1F 8F 01 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|48 FB F1 F2 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|45 2B 99 94 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|45 32 C0 DA |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|62 9E 98 9F |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|5D 9E 79 48 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|B8 49 F5 5D |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|76 45 C7 0E |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|5E F2 FE 51 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|25 09 AA 99 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|C6 39 B4 A0 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|C7 53 81 F4 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|AE 8E 71 8E |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|2E 89 DB 07 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|D2 85 6B 1B |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|36 E5 93 B7 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|43 E4 D7 3C |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|5B E0 3B 99 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|5B 6D 12 52 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|BD 27 E0 46 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|D8 26 00 0D |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|4E 2E 29 0C |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|57 6A D9 4B |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|B0 38 9C C0 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|D8 37 A8 2C |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|32 3F CA 0D |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|4C A4 D9 74 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|D2 AF FF 9A |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|42 84 CE 17 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|5E E5 A1 15 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|48 14 6E 32 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|48 12 C2 20 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|B8 9A 61 AA |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|D9 40 28 E8 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|C8 93 64 1C |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|2E 04 14 65 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|D2 E6 C0 B7 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|70 8C 33 53 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|AD C0 DB 3B |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|01 EA 41 BC |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|04 4E A7 C4 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|4D 5C 85 25 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|2E 11 CB 26 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|4A D0 7D B8 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|59 1F D1 7D |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|1F AA 08 08 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|7A 9B A8 99 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|CD BA 9B 5E |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|43 D2 61 76 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|05 90 81 14 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|36 BB C5 57 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|48 37 AE BD |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|3E C1 CF 96 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|45 AF 7E 82 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|D5 C0 E4 72 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|D8 E5 9A 10 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|32 11 C7 42 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|51 B1 06 48 |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|4E 8C 8D FC |" --from 60 --to 500 -j DROP
iptables -I protectdns -m string --algo bm --hex-string "|53 62 9E 83 |" --from 60 --to 500 -j DROP
root@OpenWrt:~# opkg install /tmp/gfw-vpn_0.2_all.ipk
Collected errors:
root@OpenWrt:~# opkg install /tmp/gfw-vpn_0.2_all.ipk --force-depends
Collected errors:
嗯。我也是wr 841nd。。。= =
主要有两个问题。。。
1是pptp应该是装 ppp-mod-pptp
2是iptables-mod-ipset提示找不到
14.07+OptimizePPTPVPN+老版PPTPVPN+新版AntiDNSPoisoning
/etc/ppp/ip-up.d/ip-up-wall
这个脚本是什么情况下会运行?
"$PPP_IFACE" == "pptp-wall"??
没看明白?不需要设置哪里来触发这个的运行么?
PS:之前乱装了mulltiwan,但是貌似也没装好,现在也没启用。这个有影响?
只开放80,443,1935不够啊,手机平板都要装应用。
root@OpenWrt:~# nslookup meetup.com
Server: 127.0.0.1
Address 1: 127.0.0.1 localhost
Name: meetup.com
Address 1: 190.93.244.104
Address 2: 190.93.247.104
Address 3: 141.101.115.104
Address 4: 190.93.246.104
Address 5: 190.93.245.104
刚做完nslookup在浏览器刷新meetup会显示Resoving host...最后超时了。
但过几分钟再刷又正常了,nslookup跟AntiDNSPoisoning查询DNS机制不同吗?
如果开p2p下载占用带宽太多(p2p在其它专用NAS,和拨号PC不是相同主机),VPN几分钟就断,然后ubuntu还没自动重拨功能。。。唯一令人痛恨的就是DNS污染在mw4530r始终无法保证google以外的网站的可访问性,经常不得以掉路由器VPN重启网路再用PC连VPN。。。
只有google这一个流量最大的网站一直都好使。。。除了用noscript+google straight userscript去除重定向+allintitle查询多了会被google ban掉。。。
在openwrt上ps | grep pptp,刚连上、能翻墙的时候有两个,等到远程主机没有ppp连接了只剩下一个。貌似已经没有反应,应该重新拨号才对,现在跟僵尸一样又不能重新拨号。直接用ubuntu vpn都没有问题,感觉openwrt pptp重新拨号机制不完善。
你好,我在配置AntiDNSPoisoning的时候,遇到以下问题:
opkg install bind-dig bind-libs
opkg install iptables-mod-filter kmod-ipt-filter
opkg install iptables-mod-u32 kmod-ipt-u32
以上命令无法成功执行
Unknown package 'iptables-mod-u32'.
Unknown package 'kmod-ipt-u32'.
Collected errors:
另外,写在 /etc/config/resolv.conf 的配置在重启路由或者重启wan口后会被复原
请问如何处理?谢谢
google/facebook/twitter都能上
pptp已经在路由器上用use default测试过,没问题。
安装了gfw-dns_0.1.2_all.ipk和gfw-vpn_0.2_all.ipk好像有点效果,gmail和google.com可以正常访问。但是twitter,youtube还是不行。看了前面的提问,用几个命令测试了一下啊。
iptables -t mangle -L
Chain PREROUTING (policy ACCEPT)
target prot opt source destination
gfwwall all -- anywhere anywhere ! match-set whiteip src ! match-set whiteip dst ! match-set whitezone dst
fwmark all -- anywhere anywhere
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
gfwwall all -- anywhere anywhere ! match-set whiteip src ! match-set whiteip dst ! match-set whitezone dst
mssfix all -- anywhere anywhere
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
gfwwall all -- anywhere anywhere ! match-set whiteip src ! match-set whiteip dst ! match-set whitezone dst
Chain POSTROUTING (policy ACCEPT)
target prot opt source destination
Chain fwmark (1 references)
target prot opt source destination
Chain gfwwall (3 references)
target prot opt source destination
MARK tcp -- anywhere anywhere tcp dpt:https MARK set 0x65
MARK tcp -- anywhere anywhere tcp dpt:www MARK set 0x65
Chain mssfix (1 references)
target prot opt source destination
TCPMSS tcp -- anywhere anywhere tcp flags:SYN,RST/SYN /* wan (mtu_fix) */ TCPMSS clamp to PMTU
TCPMSS tcp -- anywhere anywhere tcp flags:SYN,RST/SYN /* wan (mtu_fix) */ TCPMSS clamp to PMTU
root@zds108:~# ip rule
0: from all lookup local
101: from all fwmark 0x65 lookup gfwwall
32766: from all lookup main
32767: from all lookup default
root@zds108:~# ip route show table gfwwall
default via 198.18.128.62 dev pptp-wall
你好,我按照 https://github.com/hackgfw/openwrt-gfw/blob/master/PPTPVPN.md 这个文档配置PPTPVPN,发现不生效,/etc/iproute2/rt_tables 里面也没有看到 11 wall 这样的记录。
请问我哪个步骤做的有问题,还是缺少了什么步骤?
你是内核或驱动开发者?google OptimizePPTPVPN都没人用过分享的。。。
在根据说明文档将GFW-DNS编译进openwrt所生成的固件中。除了将ISP的DNS返回不存在域名的IP地址加入黑名单之外,是否还要进行其他的设置?
像这样/etc/ppp/ip-up.d/ip-up-wall的开头:
PPP_IFACE="$1";
PPP_TTY="$2";
PPP_SPEED="$3";
PPP_LOCAL="$4";
PPP_REMOTE="$5";
PPP_IPPARAM="$6";
ifconfig $PPP_IFACE mtu 1440
每次都要连N次VPN,先建立MTU:1500,断N次后才能建立MTU:1440。有没有办法开始连的时候就设置mtu 1440?比如在/etc/ppp/options或者/etc/ppp/options.pptp。
现在pptp连接成功
pptp-wall Link encap:Point-to-Point Protocol
inet addr:10.10.0.15 P-t-P:10.10.0.1 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1
RX packets:5 errors:0 dropped:0 overruns:0 frame:0
TX packets:5 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:3
RX bytes:86 (86.0 B) TX bytes:92 (92.0 B)
ipset -L whitezone | wc -l
3587
iptables看起来有了
iptables -t mangle -L gfwvpn
Chain gfwvpn (3 references)
target prot opt source destination
iptables -t mangle --list-rules gfwvpn
-N gfwvpn
这个文件/etc/iproute2/rt_tables里有"11 wall"
下面就不知道怎么debug,看问题出在哪里,请问怎么来查找问题,可以正常使用
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.