写在前面:
- 也特别感谢,GitHub 大佬 Aethersailor无私分享:大佬 Github 项目
- F大佬固件: 点击下载(如下载链接实效,请留言)
- 后台地址:192.168.1.1 登陆密码:password
插件设置
- 勾选“使用Meta 内核”(如果你的页面上没有“使用 Meta 内核”的选项,是正常的,因为后来 OpenClash 只有 Meta 一个内核可选。)
- 运行模式—->> Fake-IP(TUN-混合)模式【UDP-TUN,TCP-转发】(如果使用该模式有问题/DNS测试有泄漏情况,请自行切换“Fake-IP(增强)模式”
- 网络栈类型—->> Gvisor
- 代理模式—->> Rule【策略代理】
- 其他保持默认设置
- 最后,点击“保存配置”
- 勾选“路由本机代理”、“禁用QUIC”、“实验性:绕过中国大陆 IP”、“仅允许内网“
- 大陆域名DNS服务器—>> 103.xx.xx.xx (主路由的DNS服务器)
- 代理模式—->> Rule【策略代理】
- 其他保持默认设置
- 最后,点击“保存配置”
- 注:正常情况下,国内域名和IP不应该进入Clash内核
怎么找主路由DNS服务器,如果是电信/联通/广电/移动,光猫拨号上网,参照下述路径。
登陆光猫后台--->> 状态--->> WAN设备状态--->> DNS1/DNS2,二选一填入上述“大陆域名DNS服务器”
其他方法,点击了解
如果你平时要使用 Google Play,请在 流量控制 > 绕过指定区域 IPv4 黑名单
中添加如下四条域名:
services.googleapis.cn
googleapis.cn
xn--ngstr-lra8j.com
clientservices.googleapis.com
- 本地DNS劫持—>> “使用 Dnsmasq转发”
- 勾选“禁止 Dnsmasq 缓存 DNS”
- 其他保持默认设置
- 最后,点击“保存配置”
- 不勾选任何选项,保持默认设置即可
- 最后,点击“保存配置”
- 勾选“自动更新”
- 更新时间(每周)—>> 每周二 、0:00(每周更新一次即可)
- 其他保持默认设置即可
- 最后,点击“保存配置”
- 依次勾选、启用“自动更新 GeoIP MMDB/Dat/GeoSite 数据库”
- 更新时间(每周)—>> 每周二 、凌晨 2:00(每周更新一次即可)
- 其他保持默认设置即可
- 最后,点击“保存配置”
- 勾选“自动更新”
- 更新时间(每周)—>> 每周一、0:00(每周更新一次即可)
- 其他保持默认设置即可
- 最后,点击“保存配置”
- 复制下面博客代码
- 最后,点击“保存配置”
- 额外增加一个广告过滤规则,因为之前的设置,可能会让 配置文件中的 reject 规则集失效
#!/bin/sh
. /usr/share/openclash/log.sh
. /lib/functions.sh
# This script is called by /etc/init.d/openclash
# Add your custom firewall rules here, they will be added after the end of the OpenClash iptables rules
LOG_OUT "Tip: Start Add Custom Firewall Rules..."
# 以下是广告过滤规则拉取脚本
LOG_OUT "拉取 anti-AD 广告过滤规则…"
curl -s https://anti-ad.net/anti-ad-for-dnsmasq.conf -o /tmp/dnsmasq.d/anti-ad-for-dnsmasq.conf
# 广告过滤规则拉取脚本结束
# 以下是 GitHub520 加速规则拉取脚本
# LOG_OUT "拉取 GitHub520 加速规则…"
# sed -i '/# GitHub520 Host Start/,/# GitHub520 Host End/d' /etc/hosts
# curl https://raw.hellogithub.com/hosts >> /etc/hosts
# sed -i '/^$/d' /etc/hosts
# sed -i '/!/d' /etc/hosts
# GitHub520 加速规则拉取脚本结束
# 清理 DNS 缓存
LOG_OUT "清理 DNS 缓存…"
/etc/init.d/dnsmasq reload
exit 0
该功能位于网络 > DHCP/DNS
页面中,务必关闭
若不关闭,会引起 DNS 解析问题,并会导致本方案的广告拦截设置无法拦截国外域名
完成上述操作后,恭喜你!完成第一步,我们下面继续 openclash 插件 “覆写设置”
覆写设置
- URL-Test 策略组切换灵敏度(ms)—->>100 (如果 URL-Test 策略组,节点之间的延迟大于或等于100 ms,则切换到更低延迟的节点)
- 测速(连通性)间隔修改(s)—>> 180 ( 各个策略组,测试节点延迟的间隔时间为 180ms)
- 其他保持默认设置
- 最后,点击“保存配置”
- 依次勾选,“自定义上游 DNS 服务器”、“追加上游 DNS”、“Fake-IP 持久化”、“Fake-IP-Filter”
- 勾选后,“Fake-IP-Filter”,列表中的域名在 Fake-IP 模式下将返回真实IP地址
- 依次 去掉 “Name Server”、“Fallback”、“Default-NameServer” 所有选项
- 其他保持默认设置
- 最后,点击“保存配置”
#API
+.域名
- 注意在本方案中,NameServer 只用做 OpenClash 的规则判断以及所有的直连域名解析,且本方案中 OpenClash 配置了绕过大陆功能,所以此处填入多个服务器并没有任何意义,更不要自作聪明的填写国外 DNS 服务器。
- 再一次强烈建议此处全部取消勾选,配合上面一页设置的“追加上游 DNS”来使用运营商 DNS 从而提高解析速度!(适用于 OpenWrt 是主路由或旁路由)
- 为什么要取消 Fallback 服务器?
- 在 Fake-IP 模式下,如果取消了 Fallback 服务器,OpenClash 会把域名发送到远端的机场服务器上进行解析,只有这样才会根据不同区域的节点取得理论上的最佳解析结果。
- 依次勾选,“启用TCP转发”、“启用统一延迟”、“启用流量(域名)探测”、“探测(嗅探)纯 IP 连接”
- 其他保持默认设置
- 最后,点击“保存配置”
- 不勾选任何选项,保持默认设置即可 ( 个人适合有 BT、PT、P2P 下载 需求)
- 如果没有下载需要,可去掉“仅代理命中规则流量”(因为它有一定的副作用,具体见 vernesong/OpenClash#3942
- 最后,点击“保存配置”
配置文件
配置文件,更适合,多机场、有流媒体、喜欢折腾的小伙伴。
- 而且,最优解依然使用 rule-provider、proxy-provider 来自定义配置文件。
- 除非,特殊情况或者机场要求更新配置文件,成功使用后,几乎不用再花时间管理它。
- 点击了解: rule-provider、proxy-provider 是什么?
尝鲜版 rule-provider、proxy-provider 配置文件范本
mixed-port: 7890 #---------------------------------------------------# allow-lan: false mode: Rule log-level: silent external-controller: 127.0.0.1:60000 # 节点配置文件统一存放在 ./profiles/proxies/ 目录中 proxy-providers: # 从链接导入的配置文件(支持多个Clash 订阅链接) foo: type: http path: ./profiles/proxies/foo.yaml url: https://example-url (机场 clash 订阅链接) interval: 3600 health-check: enable: true url: http://www.gstatic.com/generate_204 interval: 300 proxy-groups: - name: PROXY type: url-test url: http://www.gstatic.com/generate_204 interval: 3600 use: # 引入proxy-provider 使用 use 关键字 - foo # clash-rules项目提供的规则集rule-providers: reject: type: http behavior: domain url: "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/reject.txt" path: ./ruleset/reject.yaml interval: 86400 icloud: type: http behavior: domain url: "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/icloud.txt" path: ./ruleset/icloud.yaml interval: 86400 apple: type: http behavior: domain url: "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/apple.txt" path: ./ruleset/apple.yaml interval: 86400 google: type: http behavior: domain url: "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/google.txt" path: ./ruleset/google.yaml interval: 86400 proxy: type: http behavior: domain url: "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/proxy.txt" path: ./ruleset/proxy.yaml interval: 86400 direct: type: http behavior: domain url: "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/direct.txt" path: ./ruleset/direct.yaml interval: 86400 private: type: http behavior: domain url: "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/private.txt" path: ./ruleset/private.yaml interval: 86400 gfw: type: http behavior: domain url: "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/gfw.txt" path: ./ruleset/gfw.yaml interval: 86400 greatfire: type: http behavior: domain url: "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/greatfire.txt" path: ./ruleset/greatfire.yaml interval: 86400 tld-not-cn: type: http behavior: domain url: "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/tld-not-cn.txt" path: ./ruleset/tld-not-cn.yaml interval: 86400 telegramcidr: type: http behavior: ipcidr url: "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/telegramcidr.txt" path: ./ruleset/telegramcidr.yaml interval: 86400 cncidr: type: http behavior: ipcidr url: "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/cncidr.txt" path: ./ruleset/cncidr.yaml interval: 86400 lancidr: type: http behavior: ipcidr url: "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/lancidr.txt" path: ./ruleset/lancidr.yaml interval: 86400
rules:
- PROCESS-NAME,xray,DIRECT
- PROCESS-NAME,v2ray,DIRECT
- PROCESS-NAME,naive,DIRECT
- PROCESS-NAME,trojan,DIRECT
- PROCESS-NAME,trojan-go,DIRECT
- PROCESS-NAME,ss-local,DIRECT
- PROCESS-NAME,privoxy,DIRECT
- PROCESS-NAME,leaf,DIRECT
- PROCESS-NAME,v2ray.exe,DIRECT
- PROCESS-NAME,xray.exe,DIRECT
- PROCESS-NAME,naive.exe,DIRECT
- PROCESS-NAME,trojan.exe,DIRECT
- PROCESS-NAME,trojan-go.exe,DIRECT
- PROCESS-NAME,ss-local.exe,DIRECT
- PROCESS-NAME,privoxy.exe,DIRECT
- PROCESS-NAME,leaf.exe,DIRECT
- PROCESS-NAME,Surge,DIRECT
- PROCESS-NAME,Surge 2,DIRECT
- PROCESS-NAME,Surge 3,DIRECT
- PROCESS-NAME,Surge 4,DIRECT
- PROCESS-NAME,Surge%202,DIRECT
- PROCESS-NAME,Surge%203,DIRECT
- PROCESS-NAME,Surge%204,DIRECT
- PROCESS-NAME,Thunder,DIRECT
- PROCESS-NAME,DownloadService,DIRECT
- PROCESS-NAME,qBittorrent,DIRECT
- PROCESS-NAME,Transmission,DIRECT
- PROCESS-NAME,fdm,DIRECT
- PROCESS-NAME,aria2c,DIRECT
- PROCESS-NAME,Folx,DIRECT
- PROCESS-NAME,NetTransport,DIRECT
- PROCESS-NAME,uTorrent,DIRECT
- PROCESS-NAME,WebTorrent,DIRECT
- PROCESS-NAME,aria2c.exe,DIRECT
- PROCESS-NAME,BitComet.exe,DIRECT
- PROCESS-NAME,fdm.exe,DIRECT
- PROCESS-NAME,NetTransport.exe,DIRECT
- PROCESS-NAME,qbittorrent.exe,DIRECT
- PROCESS-NAME,Thunder.exe,DIRECT
- PROCESS-NAME,ThunderVIP.exe,DIRECT
- PROCESS-NAME,transmission-daemon.exe,DIRECT
- PROCESS-NAME,transmission-qt.exe,DIRECT
- PROCESS-NAME,uTorrent.exe,DIRECT
- PROCESS-NAME,WebTorrent.exe,DIRECT
- DOMAIN,clash.razord.top,DIRECT
- DOMAIN,yacd.haishan.me,DIRECT
- RULE-SET,private,DIRECT
- RULE-SET,reject,REJECT
- RULE-SET,icloud,DIRECT
- RULE-SET,apple,DIRECT
- RULE-SET,proxy,PROXY
- RULE-SET,direct,DIRECT
- MATCH,PROXY
检查 DNS 是否存在泄漏
- 访问 IPLEAK.NET 检查 DNS 是否存在泄漏 https://ipleak.net/ 和 https://browserleaks.com/dns
- 页面上方应当出现你的机场节点的 IPv4 和 IPv6 地址,无中国大陆 DNS 出现,即为 DNS 无泄漏情况
- 常见问题解答: 点击跳转
如果各位小伙伴使用起来有问题或者有更好的方法或者建议,欢迎留言分享,谢谢
再次特别感谢
GitHub 大佬 Aethersailor无私分享:大佬 Github 项目 向 Aethersailor致敬!
发表回复