一、DNS设置错误
- 切换模式到
Fake-IP
- 在客户端使用
nslookup
、dig
等命令查询DNS
正确的响应结果
Microsoft Windows [版本 10.0.17763.652]
(c) 2018 Microsoft Corporation。保留所有权利。
C:\Users\Administrator>nslookup www.baidu.com
服务器: UnKnown
Address: 192.168.188.139
非权威应答:
名称: www.baidu.com
Addresses: 198.18.0.59
198.18.0.59
C:\Users\Administrator>
可能出现的响应结果
Microsoft Windows [版本 10.0.17763.652]
(c) 2018 Microsoft Corporation。保留所有权利。
C:\Users\Administrator>nslookup www.baidu.com
服务器: UnKnown
Address: fd3c:2241:ad9a::1
非权威应答:
名称: www.baidu.com
Addresses: 198.18.0.59
198.18.0.59
C:\Users\Administrator>
解决方案一
此时DNS查询被IPV6抢答,但您并未在DNS设置中启用IPV6类型DNS解析
或没有配置好内网IPV6的NAT
- 设置路由器lan口,关闭IPV6的DHCP服务(推荐)
- 检查IPV6的连通性,路由器安装
kmod-ipt-nat6
并配置正确,在DNS设置中启用IPV6类型DNS解析
,切换到Redir兼容模式
解决方案二
如未返回以198.18
开头的查询结果,请确保OpenClash能拿到客户端DNS请求!
二、DNS正常时仍无法进行代理(非游戏模式)
使用iptables -t nat -nL --line-number
命令查询当前防火墙规则
PREROUTING
链正常的返回结果
Chain PREROUTING (policy ACCEPT)
num target prot opt source destination
1 cloud_music tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80 match-set music dst
2 prerouting_rule all -- 0.0.0.0/0 0.0.0.0/0 /* !fw3: Custom prerouting rule chain */
3 zone_lan_prerouting all -- 0.0.0.0/0 0.0.0.0/0 /* !fw3 */
4 REDIRECT udp -- 0.0.0.0/0 0.0.0.0/0 udp dpt:53 redir ports 53
5 REDIRECT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:53 redir ports 53
6 openclash tcp -- 0.0.0.0/0 0.0.0.0/0
解决方案
请确保PREROUTING
链中存在以上示例的第6条规则,且在它之前不存在其他劫持的规则,否则会导致流量无法转发到OpenClash
三、DNS正常时仍无法进行代理(TUN模式、游戏模式)
- 使用
ip tuntap list
命令查询当前tun - 检查是否正常生成了名为
utun((TUN)模式)
的tap - 前往LUCI页面的
状态-路由表
,检查是否正常生成了名为utun(Fake-IP(TUN)模式)
或者clash0(游戏模式)
的路由表规则
解决方案
- 检查依赖
kmod-tun、ip-full
是否已经安装 - 确认内核是否已经更换
- 检查以下命令是否能够生效
#游戏模式
ip tuntap add user root mode tun clash0
ip link set clash0 up
#Fake-IP(TUN)模式
ip tuntap add user root mode tun utun
ip link set utun up
如报错,即依赖未正常工作,需要重新安装或更新您的固件
4. 检查配置文件内是否正常添加了以下配置
tun:
enable: true