最近又折腾了一下软路由,从原来的 esxi+xxx ,直接换成了 vyos (基于 debian 的路由系统),上面跑了 adguardhome + mosdns + clash ( tun + fake ip )
大概逻辑是用 mosdns 做分流,国内的域名请求国内 dns 、国外的域名用 fake ip ,未知的域名先走国内 dns ,如果返回的不是国内 ip 段,则丢弃重新用 fake ip 走国外,clash 不做任何规则判断,路由器添加一条路由 fake ip 段指向 clash 容器就完事了,规则简单、维护方便,只需要 20 行不到的配置(不包含代理节点)
碰到的几个问题聊一下
1 、dns 泄漏问题,假设有未知域名 example.com ,先走国内 dns ,那国内 dns 就知道你在访问 example.com ,造成 dsn 泄漏,大佬们一般是怎么来避免 dns 泄漏
2 、clash 、clash.meta tun 实现是否有区别,clash.meta 用这个方案实现后,vyos 能翻墙,但是下面的机器都无法翻墙,而 clash 没问题。在 clash.meta 日志中能看到一些 udp 流量,tcp 流量看不到,要解决这个问题要使用 iptables?
3 、dns 缓存问题,mosdns 不支持写入缓存过滤逻辑,某些原因 clash 重启后,fake ip 从 dns 缓存中获取,当 clash 反查域名进行代理,可能获取不到域名,或者得到错误的域名,表现就是打不开网页,或者提示证书错误,在调试中经常遇到,clash meta 有 fake ip 域名映射持久化配置,所以可能这个问题不太严重,要解决这个问题最好是有 dns 服务器有缓存过滤功能,有没有第三方的 dns 服务器有这个功能推荐一下
4 、以前手机上是使用 quantumult x ,需要独立配置规则,能不能使用 tailscale 连到 vyos ,通过家庭网络进行翻墙
1
MrGba2z 224 天前
4 可以的 开个简单的 wg/tailscale 就行
我是手机上做了广告判断( reject )和国内常见服务( direct )判断,减少额外的延迟,剩余的情况全部回家里再出去 3 把 clash 上 fake ip 的 ttl 设置小一点试试 (比如 5s )这样你的 mosdns 在你 clash 挂了之后会很快请求新的解析 |
3
slowmist 223 天前 2
|
4
MeteorVIP 223 天前 via iPhone
clash 的 fake IP 就可以防止泄露了
|
5
Jirajine 223 天前 via Android
因为你使用的是大部分正常用户的 dns 分流方案,而大部分正常用户身正不怕影子斜,会主动避免访问不该访问的内容,并不在乎让国内部门知道他在访问什么。
|
6
beneasy 223 天前 1
最近折腾的一个比较好解决 dns 泄露的就是只用 adguardhome ,配合 dnsmasq-china-list 所生成的 upstream_dns_file ,国内域名走阿里 doh ,剩下的走海外传统 udp dns ( doh 用不了)兜底,这应该算比较完美的了。遇到未知域名直接走海外 dns ,然后 adguardhome 会产生乐观缓存,其实体验还挺不错的。至于 clash 的话,能不用就不用吧,折腾真的好累
|
8
stonesirsir 223 天前 via Android
大胆点,未知域名直接走 fack 模式不就好了
|
9
linuxgo 221 天前
我用的是 routeros 分流,v2raya 做代理,routeros 上的 gfw 列表地址发往 v2raya 处理。vyos 没用过,有空弄个折腾下😁
|
10
journalist 200 天前 via iPhone
@slowmist 感谢,这就是我一直在找的东西
|
11
yyysuo 187 天前
1:dns 泄露的话,clash 后面 nameserver 和 fallback 同时接入另外一个 mosdns 即可,参考一下 sbwml 的配置
3:mosdns 不要开缓存。 |
12
hugovk 153 天前
请问一下,Vyos 怎么安装 clash ?好用吗?
|
14
hugovk 149 天前
@yikyo 你是说像用 Docker 那样,在 Docker 上安装 Clash ,和 Vyos 同网段,然后,内网要 FQ 的终端,把网关地址指向 Clash ,就跟旁路由类似是吗?如果不用容器,那能不能在 vyos 上直接安装?另外,vyos 的长期稳定版好像也有 container 或 docker 吧
|
15
yikyo OP @hugovk 我是用容器跑 clash,mosdns ,clash 用 fake-ip ,由 mosdns 解析域名,国内域名指向国内 DNS 服务器,国外域名指向 clash,这样就可以自动翻墙了,clash 也不需要分流策略。
|