amdwprprsct icon indicating copy to clipboard operation
amdwprprsct copied to clipboard

3.9.7版,按域名分流无效

Open dickding opened this issue 2 years ago • 18 comments

3.9.7版,"域名地址IPv4流量动态分流",分别在2个文件中填入客户端ip地址,以及域名,但分流无效。

dickding avatar Apr 04 '23 06:04 dickding

按照设计,当域名被DNS解析后返回的是IPv6地址时,该流量会走IPv6出口(华硕路由器上只能有一个IPv6出口,一般是第一WAN口),此时域名分流无效。

再一种情况是,若返回的是IPv4地址,但更高优先级的分流中包含了该地址,则会走更高优先级的分流出口。

同一域名同时设置到第一WAN口和第二WAN口的域名分流时,第二WAN口域名分流优先级高于前者,相关流量走第二WAN口。

还有就是填入的域名格式是否正确,正确的如:qq.com,google.cm,www.asus.com.cn,否则可能无法被系统的dnsmasq正确捕获。

若方便,可将相关域名用邮件发给我检测一下。

larsonzh avatar Apr 04 '23 07:04 larsonzh

Dear Larson,

借此机会,表示感谢。已经使用这款软件多年了,非常满意!多谢大佬给大家提供这么好用的软件!

问题已经解决了,我重启了服务器后,目前域名分流没问题了。

我使用环境如下: wan1-电信,wan2-移动,使用默认的动态模式,局域网段192.168.3.x 电信,联通,国外走wan1 移动,国内其他,香港走wan2 自用的一些vps,分别指定走wan1或者wan2 以上设置,一直都很成功,从没有任何问题。

最近将移动宽带的上传提到100m,因此想将家里的服务器固定走wan2,这样上传快些,但我发现这样一来,从外网就无法连接我的服务器了(wan1电信有真实ip,ddns在wan1)。后来发现有域名分流这项,正好可以满足我的要求,因此分别设置了服务器的ip地址和115/阿里云的域名。域名是115.com,aliyundrive.net,aliyundrive.com,aliyuncs.com(115上传连的是这个域名)。昨天折腾一天都不成功,重启这款软件以及清理本地dns都不行。但今天重启了服务器,发现没问题了,分流准确。

再次表示感谢!

DickDing

从 Windows 版邮件https://go.microsoft.com/fwlink/?LinkId=550986发送

发件人: @.> 发送时间: 2023年4月4日 15:37 收件人: @.> 抄送: @.>; @.> 主题: Re: [larsonzh/amdwprprsct] 3.9.7版,按域名分流无效 (Issue #11)

按照设计,当域名被DNS解析后返回的是IPv6地址时,该流量会走IPv6出口(华硕路由器上只能有一个IPv6出口,一般是第一WAN口),此时域名分流无效。

再一种情况是,若返回的是IPv4地址,但更高优先级的分流中包含了该地址,则会走更高优先级的分流出口。

同一域名同时设置到第一WAN口和第二WAN口的域名分流时,第二WAN口域名分流优先级高于前者,相关流量走第二WAN口。

还有就是填入的域名格式是否正确,否则得不到正确的解析。

若方便,可将相关域名用邮件发给我检测一下。

― Reply to this email directly, view it on GitHubhttps://github.com/larsonzh/amdwprprsct/issues/11#issuecomment-1495492116, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AHS4SDUZULSSXSQ5YN3GPPLW7PFS3ANCNFSM6AAAAAAWSIWHUU. You are receiving this because you authored the thread.Message ID: @.***>

dickding avatar Apr 05 '23 11:04 dickding

总会有些不可思议的意外,事出不一定有因。建议国内其它走第一WAN口电信,不走移动,效果会更好些。

larsonzh avatar Apr 06 '23 05:04 larsonzh

我是出口一联通、出口二电信,用的静态模式,Custom-1 走出口一 ,其它都走出口二,用了DomainNmLst-1填加了1个域名走出口一,tracert 解析的IP是走的出口一但就是80端口不通,打不开网页,重启路由器也不管用。

xinbinhan avatar Jun 01 '23 06:06 xinbinhan

这个问题是不是在修复中?

xinbinhan avatar Jun 01 '23 09:06 xinbinhan

我是出口一联通、出口二电信,用的静态模式,Custom-1 走出口一 ,其它都走出口二,用了DomainNmLst-1填加了1个域名走出口一,tracert 解析的IP是走的出口一但就是80端口不通,打不开网页,重启路由器也不管用。

现在很多运营商出于安全原因可能会屏蔽80端口,再有就是将该域名走出口二试试,还有就是修改分流模式,域名分流更适合动态分流。

larsonzh avatar Jun 01 '23 10:06 larsonzh

动态分流就不能把按路由区分出口了,我是出网不能访问三方域名(比如百度),域名分流就打不开百度页面了。去掉走默认的出口二就可以正常访问了(因为所有路由都让走出口二)

我的路由器是华硕AX86Upro,梅林388.1,静态分流,所有路由走出口二,自定义的内网地址(10.0.0.0/8)走出口一,开启了梅林clash插件

还有就是正常单出口一是可以访问百度的

xinbinhan avatar Jun 01 '23 14:06 xinbinhan

动态分流就不能把按路由区分出口了,我是出网不能访问三方域名(比如百度),域名分流就打不开百度页面了。去掉走默认的出口二就可以正常访问了(因为所有路由都让走出口二)

我的路由器是华硕AX86Upro,梅林388.1,静态分流,所有路由走出口二,自定义的内网地址(10.0.0.0/8)走出口一,开启了梅林clash插件

还有就是正常单出口一是可以访问百度的

是的,动态分流时,路由器主机本身应用软件,如你安装的插件,访问外网流量使用哪个出口是不可控的,分流只对内网终端访问外网时有效。很早以前还能控制路由器主机内部应用的流量出口,之后随着固件升级,控制权被华硕收回了,所以现在做不到。

调整一下出口参数试试。

联通网段出口参数指向第一WAN口,电信网段出口参数指向第二WAN口。

另外就是改变一下流量控制方式,如按照优先级顺序使用脚本的客户端直通WAN口功能等。

larsonzh avatar Jun 01 '23 15:06 larsonzh

动态分流就不能把按路由区分出口了,我是出网不能访问三方域名(比如百度),域名分流就打不开百度页面了。去掉走默认的出口二就可以正常访问了(因为所有路由都让走出口二)

我的路由器是华硕AX86Upro,梅林388.1,静态分流,所有路由走出口二,自定义的内网地址(10.0.0.0/8)走出口一,开启了梅林clash插件

还有就是正常单出口一是可以访问百度的

还有就是关掉clash插件,试一下静态分流模式下域名分流是否正常。

如正常,则先启动脚本,再启动clash,看是否正常。

larsonzh avatar Jun 01 '23 16:06 larsonzh

尝试了一下关掉clash这方案还是不行,我改成动态分流目前看按域名分流正常了,感谢。

但遇到了一个BUG,我是访问10.0.0.0/8网段走WAN1,就是走WAN1时,在电脑客户端上tracert -d 10.0.0.1时走的是WAN2,但还能正常访问(走的肯定是WAN一,走WAN二路由是不通的)。

xinbinhan avatar Jun 02 '23 03:06 xinbinhan

尝试了一下关掉clash这方案还是不行,我改成动态分流目前看按域名分流正常了,感谢。

但遇到了一个BUG,我是访问10.0.0.0/8网段走WAN1,就是走WAN1时,在电脑客户端上tracert -d 10.0.0.1时走的是WAN2,但还能正常访问(走的肯定是WAN一,走WAN二路由是不通的)。

在路由器上执行: ip r ip r sh ta 100 ip r sh ta 200 看一下结果

larsonzh avatar Jun 02 '23 06:06 larsonzh

admin@RT-AX86U-0848:/tmp/home/root# ip r default nexthop via 10.20.63.1 dev eth0 weight 1 nexthop via 192.168.0.1 dev eth5 weight 1 10.20.63.0/24 dev eth0 proto kernel scope link src 10.20.63.117 10.20.63.1 dev eth0 scope link 10.184.1.12 via 10.20.63.1 dev eth0 101.36.169.181 via 10.20.63.1 dev eth0 metric 1 127.0.0.0/8 dev lo scope link 192.168.0.0/24 dev eth5 proto kernel scope link src 192.168.0.186 192.168.0.1 dev eth5 scope link 192.168.50.0/24 dev br0 proto kernel scope link src 192.168.50.1 221.122.98.76 via 10.20.63.1 dev eth0 metric 1 239.0.0.0/8 dev br0 scope link admin@RT-AX86U-0848:/tmp/home/root#

xinbinhan avatar Jun 02 '23 10:06 xinbinhan

admin@RT-AX86U-0848:/tmp/home/root# ip r sh ta 100 default via 10.20.63.1 dev eth0 10.20.63.0/24 dev eth0 proto kernel scope link src 10.20.63.117 10.20.63.1 dev eth0 proto kernel scope link 10.184.1.12 via 10.20.63.1 dev eth0 101.36.169.181 via 10.20.63.1 dev eth0 metric 1 127.0.0.0/8 dev lo scope link 192.168.0.0/24 dev eth5 proto kernel scope link src 192.168.0.186 192.168.0.1 dev eth5 scope link 192.168.50.0/24 dev br0 proto kernel scope link src 192.168.50.1 221.122.98.76 via 10.20.63.1 dev eth0 metric 1 239.0.0.0/8 dev br0 scope link admin@RT-AX86U-0848:/tmp/home/root#

xinbinhan avatar Jun 02 '23 10:06 xinbinhan

admin@RT-AX86U-0848:/tmp/home/root# ip r sh ta 200 default via 192.168.0.1 dev eth5 10.20.63.0/24 dev eth0 proto kernel scope link src 10.20.63.117 10.20.63.1 dev eth0 scope link 10.184.1.12 via 10.20.63.1 dev eth0 101.36.169.181 via 10.20.63.1 dev eth0 metric 1 127.0.0.0/8 dev lo scope link 192.168.0.0/24 dev eth5 proto kernel scope link src 192.168.0.186 192.168.0.1 dev eth5 proto kernel scope link 192.168.50.0/24 dev br0 proto kernel scope link src 192.168.50.1 221.122.98.76 via 10.20.63.1 dev eth0 metric 1 239.0.0.0/8 dev br0 scope link admin@RT-AX86U-0848:/tmp/home/root#

xinbinhan avatar Jun 02 '23 10:06 xinbinhan

比如我访问10.186.1.224,tracert -d 10.186.1.224 走的是WAN二,理论是如果走WAN没路由应该是不通的,但它的确可以打开,应该是走WAN一去访问的

xinbinhan avatar Jun 02 '23 10:06 xinbinhan

比如我访问10.186.1.224,tracert -d 10.186.1.224 走的是WAN二,理论是如果走WAN没路由应该是不通的,但它的确可以打开,应该是走WAN一去访问的

没太搞明白你的网络构型。

从路由表中看到,两条宽带都是采用dhcp方式接入,未采用桥接,不是路由器拨号,即都是光猫pppoe拨号接入互联网。

要达到好的网络效果,充分发挥路由器的性能优势,建议最好都采用桥接模式。

第一WAN口的接入的联通啥设备?地址看起来有些怪。 第二WAN口的电信设备地址正常,与一般光猫无异。

路由器内网192.168.50.0/24,内网设备应该都在该地址段,分流脚本仅对该地址段设备有效。

那个10.186.1.224似乎不是公网地址,或是被墙,也不在第一WAN口所连上一级设备的本地网络内,一种可能是上一级联通运营商内网的设备地址,需要系统中指定路由后才能找到。如果不在脚本中的运营商网段数据范围内,tracert会到定义为国外运营商网段出口(例如,该网段出口已设置为第二WAN口)的网络中寻找。

所有未被系统定义路由和脚本运营商网段数据中未包含的地址,作为未知地址,脚本最终会按照国外运营商网段出口路由处理。

刚按照你10.0.0.0/8网段走第一WAN口的设置,custom_data_wan_port_1=0,在路由器内网终端上traceroute 10.186.1.224,未发现你那种问题,一切正常,你再检查一下脚本相关参数设置是否正确。

larsonzh avatar Jun 02 '23 12:06 larsonzh

WAN一是公司内网,WAN二是5G盒子,接口都是动态获取,脚本里那11种网络类型我都指定走WAN二了,只有10.0.0.0/8走公司的WAN一,那个10.18X.X.X的地址是公司内网地址,也就是我指定其中一个公网域名(比如www.baidu.com)走WAN一时会打不开,但看解析和tracer都是正常的,就是无法ping通,也有可能是你说的被识别成了未知地址,我再研究研究

xinbinhan avatar Jun 02 '23 22:06 xinbinhan

WAN一是公司内网,WAN二是5G盒子,接口都是动态获取,脚本里那11种网络类型我都指定走WAN二了,只有10.0.0.0/8走公司的WAN一,那个10.18X.X.X的地址是公司内网地址,也就是我指定其中一个公网域名(比如www.baidu.com)走WAN一时会打不开,但看解析和tracer都是正常的,就是无法ping通,也有可能是你说的被识别成了未知地址,我再研究研究

在动态分流模式下,还可以不用“用户自定义IPv4目标网址/网段(1)流量出口”功能指定访问“10.0.0.0/8”网段出口,可通过“第一WAN口客户端至预设IPv4目标网址/网段流量静态直通路由”功能设置独立的双向静态路由: wan_1_src_to_dst_addr=0 wan_1_src_to_dst_addr_file="/jffs/scripts/lz/data/wan_1_src_to_dst_addr.txt" 在上述列表数据文件中填入: 0.0.0.0/0 10.0.0.0/8 10.0.0.0/8 0.0.0.0/0

larsonzh avatar Jun 03 '23 16:06 larsonzh