danielfree / asus-v2ray-transparent-proxy

transparent proxy with v2ray, iptables, ipset 无线路由器 v2ray 透明代理
The Unlicense
54 stars 21 forks source link

运行nat-start.sh后终端设备无法连国内网站 #1

Closed prbl closed 6 years ago

prbl commented 6 years ago

环境:RT-AC68U 梅林380.67 v2ray2.45 操作前:连接路由器的电脑可以用chrome访问jd.com,能ping通jd.com

操作:admin@RT-AC68U-5A00:/jffs# sh nat-start.sh 屏幕输出(时间删掉了): : 加载xt_set.ko内核模块! insmod: can't insert '/lib/modules/2.6.36.4brcmarm/kernel/net/netfilter/xt_set.ko': unknown symbol in module, or unknown parameter : 先清空已存在的ipset名单,防止重复添加 : 尝试先清除已存在的iptables规则,防止重复添加 : 清除重复的ip rule规则. : 删除ip route规则. : 创建ipset名单 iptables: No chain/target/match by that name. admin@RT-AC68U-5A00:/jffs#

操作后:电脑能ping通jd.com,用chrome访问jd.com显示 This site can’t be reached jd.com refused to connect. Try:

Checking the connection Checking the proxy and the firewall ERR_CONNECTION_REFUSED

danielfree commented 6 years ago

@prbl 你的路由器内核看起来没有 ipset 模块,uname -a 内核版本多少?

prbl commented 6 years ago

@danielfree uname -a: Linux RT-AC68U-5A00 2.6.36.4brcmarm #2 SMP PREEMPT Sun Jul 16 13:04:40 EDT 2017 armv7l ASUSWRT-Merlin

好像ipset有了的: ipset -v: ipset v6.32, protocol version: 6

iptables -v: iptables v1.4.14: no command specified Try `iptables -h' or 'iptables --help' for more information.

danielfree commented 6 years ago

@prbl 提示是内核没有 xt_set 这个模块,我的内核版本跟你一样但是路由器型号不同,你试试用 modprobe xt_set 看能不能加载这个模块,如果不行的话尝试更新一下 Merlin 的版本看看。

prbl commented 6 years ago

@danielfree 更新了Merlin(RT-AC68U: 384.3),现在uname -a: Linux RT-AC68U-5A00 2.6.36.4brcmarm #1 SMP PREEMPT Tue Feb 13 16:16:30 EST 2018 armv7l ASUSWRT-Merlin

modprobe xt_set 返回空行,这时试了:insmod xt_set.ko 返回: insmod: can't insert '/lib/modules/2.6.36.4brcmarm/kernel/net/netfilter/xt_set.ko': File exists 貌似是加载了吗?

(xt_set 模块好像是在的:modprobe xt_set -l 显示 kernel/net/netfilter/xt_set.ko

danielfree commented 6 years ago

@prbl File exists 就已经 load 了,你再试试跑一遍那个脚本

prbl commented 6 years ago

@danielfree 嗯现在跑不报错了,可还是只能ping通、浏览器上不去 nat-start.sh这么改的:v2ray_ip=“0.0.0.0”(远程ip删了)格式好像也没问题? 远程服务器端需要别的操作吗?现在只开了v2ray server

danielfree commented 6 years ago

@prbl 你的 config.json 配置要符合 v2ray server 的要求,比如 id、mux 什么的,具体参考 v2ray 配置的说明,然后可以试试 /sbin/service restart-dnsmasq 重启下 dnsmasq,自己电脑的 dns 设置为路由器的地址

prbl commented 6 years ago

@danielfree 嗯 dnsmasq试了重启下,电脑的DNS也是路由器地址(默认获取的),还是浏览器上不去jd.com。奇怪的是,这时电脑再开个能连通的v2ray,就能经由v2ray server正常访问。

danielfree commented 6 years ago

@prbl 你电脑是不是设置了什么本地代理没有取消?看下 Internet 设置里

prbl commented 6 years ago

@danielfree 嗯删掉了电脑本地代理。另找了台电脑和手机连了路由,也是上不去,貌似还是路由的问题?

prbl commented 6 years ago

改好v2ray config的监听地址后 就没问题了