感觉家里 homelab 的 dns 设施终于稳定下来了

138 天前
 Vtoecha

一开始 all in one 直接 pve 里面装 openwrt 软路由,测试下来打开网站确实没有硬路由顺滑。

然后硬路由刷 openwrt 设置旁路由,dns 总是有问题,然后 openclash 的界面设置又繁琐,又弃了。

换 mosdns 分流,dhcp 通告 mosdns 为 dns 服务器,还装了 keepalived ,mosdns 关机时能自动切换回默认的,不知道是不是 keepalived 还是 mosdns 问题,运行久了还是要重启一下才行。

看了下 smartdns 是 C 写的,性能应该还可以吧,反正我只需要转发 dns ,openwrt 官方有这个包。
最后就是硬路由 openwrt 加上 mtk-openwrt-feeds 那个闭源驱动编译个固件,上面只运行 smartdns 53 端口,国内域名转发本地 dnsmasp 5353 端口,其他的转发 mosdns 。
mosdns 上分流 gfw 直接走代理,剩下的先走大厂 DOH (泄不泄露无所谓了,直接走代理还是慢了点),确认 ip 是国内就转回 openwrt 的 5353 用 isp 分配 dns 查,不是国内 ip 走代理。
代理 mihomo 也从 tun 改成 tproxy ,用 fakeip 模式。
现在用的好丝滑,已经好久没重启过了,mosdns 关机了不影响国内使用,openwrt 上也不用装各种东西。

就剩下些 ip 直连的,现在是直接添加到静态路由里,如果有简单的 openwrt 插件,自动拉需要直连 ip 的配置文件然后设置防火墙规则就完美了。

4223 次点击
所在节点    DNS
19 条回复
jhytxy
138 天前
真是蛋疼啊

我们 pve 党都是一个 paopaodns 解决问题
Vtoecha
138 天前
@jhytxy 还是手撸 mosdns 方便,什么 ipv6 内网 dns 都可以自己定义
badgv
138 天前
分流工具比如 xray singbox 之类自带 dns 分流,mosdns 感觉多此一举,我主路由 ros ,旁路 op ,用 adguard 做 dns 入口(方便查看解析以及全局 hosts+srv 服务),上游走 psw2(singbox)fakedns 做分流,用好多年了,稳如老狗
playboy0
138 天前
有详细的教程步骤分享吗?谢谢楼主
Vtoecha
138 天前
@badgv 我尝试过了,singbox 是可以分流,但那配置不想手撸第二次,且性能没网上说得那么好,日志经常和服务器 error ,所以就换了
XiLingHost
138 天前
可以试试 dnsdist ,用 lua 写的配置,做较为复杂的逻辑的时候比较方便
Vtoecha
138 天前
@badgv 而且旁路 op 我就感觉对局域网架构是非常 dirty 的破坏,反正我记得当时设置 ipv6 折腾了好久,后面就没用过旁路了,现在这样很明确,有什么问题也好排查
Vtoecha
138 天前
@playboy0 不知道你说哪个过程,上面提到有编译 openwrt 、配置 smartdns 、配置 mosdns 还有配置 mihomo ,基本就是配置文件,附加 mihomo tproxy 防火墙规则。
badgv
138 天前
@Vtoecha 觉得麻烦就是还没彻底吃透,主路由只分流 dns udp53 请求和直接路由 fakeip 段,管理上也很 easy ,旁路离线也不影响国内上网,分流直接 psw2 插件 ui 配置,很轻松,ipv6 直接主路由 ros 就处理了,也很简单的
Vtoecha
138 天前
@badgv 都用 fakeip 了,还旁路由感觉没必要,直接下一条静态网关就行了,再不至写几条 iptables 和 nftables 规则都比旁路由简单并且性能更好。
旁路和我更改默认网关把全部流量指向代理虚拟机不一样作用,我觉得这种照葫芦画瓢用旁路才是没吃透,还停留在表面点点配置界面的舒适区。
分流让 singbox 做和 all in one 理念差不多,还不如拆开,而且不看好 singbox ,升个版本就改一堆配置,简单的 fallback 分流比 mosdns 写起来复杂的多。
bli22ard
138 天前
都 fakeip 了,还要分流 dns 干嘛?代理软件直接配置代理规则,如果命中 proxy ,都不用本地解析,直接用域名发送到代理节点建立连接,如果走 direct ,才走配置的国内 dns 解析,都是一次解析完成。
Vtoecha
137 天前
@bli22ard 因为代理软件没装路由器上啊,流量能在 openwrt 上完成国内分流不就相当于有没有代理服务器都不影响原来的国内访问,可靠性更强
jqknono
137 天前
adguardprivate 给 adguardhome 加了分流功能和 ddns 功能,https://github.com/AdGuardPrivate/AdGuardPrivate
badgv
137 天前
@Vtoecha 你说的没错啊,因为我主路由是 ros ,内网设备 dns 都是请求的 119.29.29.29 ,ros 做了 dns 劫持全部扔给 op ,只说科学,肯定就是 ros 一条 fakeip 的静态路由啊.....旁路 op 本质就是个 singbox 而已,用 op 是因为为 luci 皮肤插件 psw2 管理简单而已
分流 dns ,那是 sbox 内部流程,ros 纯做劫持
Tiger511
95 天前
@badgv 用 fakeip 碰到不解析域名的应用,你就必须去 ros 做路由条目,比如电报,然后做开发看不到真实 ip 也是一件很烦的事情。
只能说满足一般上网需求。
badgv
95 天前
@Tiger511 电报直接内置 socks5 就行了,内置 s5 的 app ,强烈建议直接 s5 连接,永远没有什么泄露的事
Tiger511
86 天前
@badgv 透明代理就是要透明,tg 有 sock5 设置 其他没有 sock5 设置的应用呢?有的应用内部还要检查你获得的远端 ip 呢,这种情况怎么处理呢?
badgv
85 天前
@Tiger511 像 TG 这种内置加密 dns 或者存 ip 连接的 app 是少数,绝大部分都是走的域名,至少我用过的需要科学的手机 app ,走纯 ip 连只有 TG ,其他都能域名实现 fake 分流
Tiger511
84 天前
@badgv 是的,所以我说满足一般的上网需求

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1126424

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX