分享一个域名被解析到 127.0.0.1 导致的软路由网络问题

2021-09-17 13:49:54 +08:00
 brMu
现象是突然无法访问外网(你懂的),重启软路由( debian 10 自建)后正常,不定时又无法访问外网,再重启又正常,如此反复。

最后分析出的原因是因为外网的某个域名被解析成了 127.0.0.1,当电脑访问这个域名时,就被软路由解析并自动添加到 ipset 里了,导致本地连接 127.0.0.1 端口的所有进程都无法成功连接(全部被 iptables redriect 了),最终导致无法访问外网。

重启会清空 ipset,所以就恢复了,但是,一旦这个 127.0.0.1 再次被添加到 ipset 里时,问题就又出现了。

至于是哪个域名现在也不知道,为了避免再次出现此类问题,最终的解决方法是在 nat 的 OUTPUT 链中添加如下规则:
iptable -t nat -I OUTPUT 1 -d 127.0.0.1/32 -j RETURN

顺便也可以把 192.168 等私有地址都加进去。
1162 次点击
所在节点    分享发现
3 条回复
kokutou
2021-09-17 13:56:31 +08:00
看看是不是 aka.ms
fengtons
2021-09-17 14:38:32 +08:00
正规的做法都是要判断回避局域网地址的
brMu
2021-09-17 15:53:56 +08:00
@kokutou 试了下,不是这个域名,不过到底是哪个域名也不重要了,已经跳过 127 的 redirect 了

@fengtons 是的,之前没加是因为一直不知道有什么用(最简原则),现在都加回去了

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

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

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

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

© 2021 V2EX