openwrt 127.0.0.1地址不能访问问题解决

缘起

最近这段时间在折腾openwrt软路由,用来做一些流量的控制,基于dns的广告过滤这些事情。

但是随着软件包以及服务的增多,最近非常的不稳定,经常出现软路由openwrt自己不能上网的情况。

主要表现为:
1、ping 127.0.0.1 可以通

2、运行在127.0.0.1上的所有服务都不能正常,包括dns解析服务、nginx等

3、开机重启时是好的,但是经过一段时间运行就挂掉

折腾过程

经过各种尝试以及搜索资料,都没有找到明确的问题原因,网上127.0.0.1不能访问的,大多说的是防火墙、lo接口的问题,但是我这里ifconfig是好的。

由于各种尝试都不能解决问题,就通过排除法一一排查了,最终定位到是adblock插件运行时产生了什么异常,导致本机端口异常。

经过分析,大致知道了出现这个问题,应该是adblock插件也会操作dnsmasq后端,存在某些异常的情况,最终会配合ipset、iptables(我有一些端口转发规则),导致本地地址运行异常。

解决方法:
关闭adblock插件,我专门在一个debian虚拟机上跑一个就好了,至此问题解决。


更新于2020.04.19
前段时间这个问题又出来了,于是又继续跟踪了下问题原因,终于被我发现真的是防火墙出问题了,但不是adblock的问题,是自动gfw走代理导致把127.0.0.1重定向到远端了。。

具体是这个bt下载的tracker服务器的问题

居然特么的这个被墙的tracker tracker.fr.eu.org指向了127.0.0.1,然后我就把自己127.0.0.1墙了。。。。。ffff我佛慈悲

$ nslookup tracker.fr.eu.org
Server:		192.168.1.1Address:	192.168.1.1#53Non-authoritative answer:
Name:	tracker.fr.eu.org
Address: 127.0.0.1


** 更新于2021.01.31** 最近又发现了一个诡异的127.0.0.1的dns不能解析问题,而且还是gfw的域名无法解析,经过一通折腾,终于发现,问题原因和去年那次基本一样:本地被错误的映射到远程去了

这次是一个v2ray的服务端域名被加入到gfw列表里了,导致出现这种死循环

gfw域名过来了
重定向到v2ray-dns解析
v2ray访问服务端
v2ray服务端域名解析

于是这个死循环就生成了,想要远程dns解析,但是远端的服务端本身也是要dns解析的,且也是要远程dns解析的,解决也很简单,就是把v2ray服务端换成ip或者去除gfw里边的v2ray服务端域名

这一通折腾真的是很艰难,因为这个过程不细分析根本发现不了。。。。

总结

使用这些软路由、kvm虚拟机这些东西,总是会需要各种折腾的,有时候遇到了别人都没有遇到的坑,只能静下来慢慢分析了,总归能找到解决方法的,痛并快乐着~~~


已有3位网友发表了看法:

1L85762917 2021-03-02 16:17:42 回复
您好,最近我也遇到了同样的问题,用的是openwrt+ikuai 双软路由系统,莫名其妙的总是断网,感觉和您描述的非常像,但是本人并非技术出身,不知道该如何排查,这个问题已经困扰了我很久了,望能赐教!在此表示感谢!!!!
我的QQ是:85762917,希望得到您的解答~
2L访客 2021-03-03 17:53:01 回复
建议在不能上网时使用如下步骤测试下:
1、测试dns是否正常
1)可以使用nslookup qq.com看下输出(windows下可以win + r 开个命令行输入),如果解析不了那就是dns挂了
2)可以去软路由里看下dns解析是否正常,openwrt系统的网络nslookup是在http://路由器地址/cgi-bin/luci/admin/network/diagnostics
3)如果上面步骤都不正常,那要看下整个系统的上游dns用的哪里的,假设使用的114.114.114.114,可以使用nslookup qq.com 114.114.114.114看
在dns出问题的情况,假设路由器和我博客说的一样,那么这三部肯定会出问题
2、看下网络是否通的
正常的ping 114.114.114.114就行,也是像上面一样,在电脑、软路由以及上级上试试
3L访客 2021-03-27 22:02:51 回复
具体要怎么修改设置才能解决呢,我的也是一样,只能用本机IP替换127.0.0.1才能解决。单解析会慢。

发表评论

必填

选填

选填

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。