vernesong / OpenClash

A Clash Client For OpenWrt
MIT License
17.51k stars 3.18k forks source link

[Bug] N1盒子开启后需要在终端设置才能访问google与youtube #3740

Closed 0U7SID3R closed 6 months ago

0U7SID3R commented 9 months ago

Verify Steps

OpenClash Version

v0.45.157-beta

Bug on Environment

Official OpenWrt

OpenWrt Version

OpenWrt R21.6.1 / LuCI Master (git-21.096.35788-b200c7b)

Bug on Platform

Linux-arm64

Describe the Bug

在启用meta内核,运行模式为fake-ip,旁路网关兼容打开的情况下,使用Dnsmasq转发,自定义了上游DNS服务器为8.8.8.8 114.114.114.114 119.29.29.29,运行状态界面显示github连接正常但youtube无法连接。chrome谷歌搜索显示ERR_SSL_PROTOCOL_ERROR。ipv6相关设定已经关掉。手机端youtube的app能正常浏览个人博主动态的图片与评论,但无法加载视频。在手动设置8.8.8.8的dns后可以正常浏览视频,但偶尔有断流发生。

To Reproduce

在安装openclash并且下载了配置后尝试进行连接,但fake-ip启用,切换global与rule,自定义dns后仍无法解决问题。后在恩山论坛看到设置手机dns8.8.8.8后成功访问谷歌与youtube,因此怀疑是dns污染问题,但能力不足无法排查。

OpenClash Log

过长作为附件上传

OpenClash Config

No response

Expected Behavior

希望能够在不设置电脑与手机dns的情况下成功访问外网

Additional Context

IMG_4135

LOG.txt

0U7SID3R commented 9 months ago

还有就是接下来两天在外面有事,可能不会回复,请见谅

yellowsavant commented 9 months ago

旁路由如果路由路径没搞好,会有非对称路由返回的问题,如果真要搞旁路由的话,建议在旁路由上开NAT,可以减少很多问题,但是会有一点性能损失(主路由与旁路由皆开启NAT)网络环境没那么复杂的话,还是在主路由上折腾就行 你这问题大概率是主路由直接把返回包发给以旁路由为网关的客户端,客户端又把下一个包发给旁路由,然后就GG了...

Eaphost commented 9 months ago

我的n1也遇到这个问题了,我想补充下这个问题,好像只有iOS才会出现这个问题,安卓的dns无需设置为8.8.8.8就可以正常访问

gdanmac commented 9 months ago

我在arm 设备盒子也是遇到这个,就是手机IOS youtube 有时候翻不出去。好像是dns 出现问题

ghost commented 9 months ago

好吧。看来是旁路由的老毛病了。草率了

直接说结论吧 先去网络-接口-lan查看接口设备名是什么,一般情况下是br-laneth0 然后网络-防火墙-自定义规则加上iptables -t nat -I POSTROUTING -o 接口设备名 -j MASQUERADE

nftable的是自己转的,因没有旁路由设备,没测试。 有无问题都希望说一下 nft insert rule ip nat POSTROUTING oifname "接口设备名" counter masquerade

github-actions[bot] commented 6 months ago

This issue is stale because it has been open 60 days with no activity. Remove stale label or comment or this will be closed in 5 days

zeyueguo commented 6 months ago

好吧。看来是旁路由的老毛病了。草率了

直接说结论吧 先去网络-接口-lan查看接口设备名是什么,一般情况下是br-laneth0 然后网络-防火墙-自定义规则加上iptables -t nat -I POSTROUTING -o 接口设备名 -j MASQUERADE

nftable的是自己转的,因没有旁路由设备,没测试。 有无问题都希望说一下 nft insert rule ip nat POSTROUTING oifname "接口设备名" counter masquerade


我设置了 nft insert rule ip nat POSTROUTING oifname "eth0" counter masquerade 可以了