V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
探索世界的好奇心万岁
brMu
V2EX  ›  分享发现

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

  •  
  •   brMu · 2021-09-17 13:49:54 +08:00 · 953 次点击
    这是一个创建于 441 天前的主题,其中的信息可能已经有所发展或是发生改变。
    现象是突然无法访问外网(你懂的),重启软路由( 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 等私有地址都加进去。
    3 条回复    2021-09-17 15:53:56 +08:00
    kokutou
        1
    kokutou  
       2021-09-17 13:56:31 +08:00
    看看是不是 aka.ms
    fengtons
        2
    fengtons  
       2021-09-17 14:38:32 +08:00 via Android
    正规的做法都是要判断回避局域网地址的
    brMu
        3
    brMu  
    OP
       2021-09-17 15:53:56 +08:00
    @kokutou 试了下,不是这个域名,不过到底是哪个域名也不重要了,已经跳过 127 的 redirect 了

    @fengtons 是的,之前没加是因为一直不知道有什么用(最简原则),现在都加回去了
    关于   ·   帮助文档   ·   API   ·   FAQ   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   1264 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 65ms · UTC 19:25 · PVG 03:25 · LAX 11:25 · JFK 14:25
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.