Closed oluceps closed 2 years ago
$ dig bilibili.com
; <<>> DiG 9.17.13 <<>> bilibili.com ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 38757 ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; MBZ: 0x0001, udp: 1232 ; COOKIE: 7141a50406c06554 (echoed) ;; QUESTION SECTION: ;bilibili.com. IN A
;; ANSWER SECTION: bilibili.com. 1 IN A 198.18.3.135
;; Query time: 0 msec ;; SERVER: 127.0.0.1#53(127.0.0.1) (UDP) ;; WHEN: Wed Jan 26 15:35:14 CST 2022 ;; MSG SIZE rcvd: 69
$ ping bilibili.com
PING bilibili.com (198.18.3.135): 56 data bytes
^C
--- bilibili.com ping statistics ---
21 packets transmitted, 0 packets received, 100% packet loss
绑定接口eth1
绑定接口eth1
尝试了绑定唯一lan口物理设备eth0,没有解决,境外域名还是无法连接
你的日志没有啥问题,建议检查其他地方或者节点是不是正常
你先不使用fakeip模式,切换成redir模式,然后清除上网设备的DNS缓存。在上网设备上使用nslookup命令,看看远端的域名所解析的IP地址是否正常。
你先不使用fakeip模式,切换成redir模式,然后清除上网设备的DNS缓存。在上网设备上使用nslookup命令,看看远端的域名所解析的IP地址是否正常。
找到了部分原因,非常感谢!在更改为redir模式并清除上网设备缓存(windows重置了一遍网络,安卓手机还原网络设置)后,我重新配置了上网设备的网关和dns为旁路由,在上网设备windows上nslookup返回如下:
C:\Users\deb>nslookup www.google.com
服务器: OpenWrt.lan
Address: fd3a:5a2a:faa1::1
非权威应答:
名称: www.google.com
Addresses: 2001::a27d:200f
103.97.176.73
C:\Users\deb>ping OpenWrt.lan
正在 Ping OpenWrt.lan [192.168.2.1] 具有 32 字节的数据:
来自 192.168.2.1 的回复: 字节=32 时间<1ms TTL=64
虽然已经手动配置了网关和dns,此处dns服务器依然为主路由服务器(openclash部署在旁路由上),安卓设备的nslookup返回dns为(8.8.8.8),这应该就是境外域名无法访问的原因。但尝试过多次重置上网设备,也确认openclash的dns劫持选项开启,nslookup返回的dns依然为主路由。
值得一提的是在Arch linux下我使用systemd-networkd和systemd-resolved手动指定的网关和dns为旁路由,从始至终可以正常代理访问境外域名,包括fakeip模式下,nslookup返回的域名服务器也是正常的旁路由地址(192.168.2.2:53)。所以其它多个设备无法正常上网应该就是因为dns请求没有正常指向旁路由,但是我对这个问题毫无头绪
你的日志没有啥问题,建议检查其他地方或者节点是不是正常
可以排除是节点的问题,因为纯ip请求是能够正常代理的,只有境外域名出错。我补充了一些信息,推测是上网设备的dns没有正常指向旁路由上部署的openclash,出现问题时在yacd面板连接展示中也几乎看不到域名,都是ip。但是我已经手动指定了dns和网关。而且多个设备都是这种情况。不知道是哪里出现问题
尝试清空了一下主路由的dhcp租约,多个设备重新连接可以正常访问境外域名,但windows下nslookup如下
C:\Users\deb>nslookup duckduckgo.com
服务器: OpenWrt.lan
Address: fd3a:5a2a:faa1::1
*** OpenWrt.lan 找不到 duckduckgo.com: Query refused
依然是主路由
因为之前也出现过仅重新连接设备出现短暂的访问境外域名正常,维持时间几分钟到几小时不等,我观察一下这次能维持多长时间
尝试清空了一下主路由的dhcp租约,多个设备重新连接可以正常访问境外域名,但windows下nslookup如下
C:\Users\deb>nslookup duckduckgo.com 服务器: OpenWrt.lan Address: fd3a:5a2a:faa1::1 *** OpenWrt.lan 找不到 duckduckgo.com: Query refused
依然是主路由
因为之前也出现过仅重新连接设备出现短暂的访问境外域名正常,维持时间几分钟到几小时不等,我观察一下这次能维持多长时间
好,连不上了
一个猜想。由于windows中ipv6优先于ipv4,而我在网路设定中并没有指定ipv6网关与dns,于是windows默认采用主路由通告的ipv6地址作为dns服务器,绕过了我设定的v4网关,导致请求无法被送至openclash。我禁用了windows网口的ipv6协议,nslookup的服务器地址转为了旁路由的ipv4(192.168.2.2),网络也全部正常了
嗯,启用V6会有不少问题,比如openclash会工作不正常,远程节点不支持v6之类的。可以直接把网络内所有的v6功能关闭,省去不少麻烦。
我的是在 /etc/resolv.config下边加了个nameserver指向网关就好了 问题是 ping ip时候可以ping通但是域名不行 模式为旁路由桥接wifi
问题描述
旁路由openwrt(192.168.2.2) lan口连接主路由openwrt(192.168.2.1)lan口,旁路由网关设置为主路由,dns设置为127.0.0.1(之后尝试过改为主路由地址),关闭旁路由dhcp,启动openclash,上网设备设置网关和dns为旁路由地址,测试发现只有基于ip请求的软件能够正常上网(如telegram),YouTube 手机app和网站都无法正常连接。
ssh连接路由器ping 任何网址无法ping通,已设置网关和dns的上网设备ping不通诸如www.youtube.com的境外域名,ip和国内域名正常。 网络内的设备设置socks5代理(chrome switchyomega)或windows系统代理指向openclash 代理端口可以正常翻墙。
已经排除是rule和节点问题的可能
日志
OpenClash 调试日志
生成时间: 2022-01-26 13:56:33 插件版本: v0.44.09-beta 隐私提示: 上传此日志前请注意检查、屏蔽公网IP、节点、密码等相关敏感信息