OpenWrt DNS问题排查

本文详细记录了在OpenWrt系统中遇到的DNS问题,通过对比正常设备和故障设备的配置,发现dnsmasq服务未启动。经过一系列步骤,包括检查resolv.conf文件、启动dnsmasq服务、分析配置文件冲突,最终确定问题在于/etc/dnsmasq.conf文件包含了重复的配置,清理该文件后成功解决DNS解析问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

我们的设备在测试时发现有个别的主机,主程序DNS解释服务器域名失败。
最直接的表现就是 ping 126.com 显示:
ping 126.com失败

对于这个问题,最直接的方式就是打开 /etc/resolv.conf 文件查看DNS服务器是否设置正确。结果该文件显示:

search lan
nameserver 127.0.0.1

博主用 strace ping 126.com 命令,分别比较了好的有问题的设备与没问题的设备。将输出信息用 meld 进行对比,结果看到在这里出现分歧: 日志比较
可见,ping 命令在解释 "126.com" 域名时,是 connect 127.0.0.1:53 服务。而存在问题的一边,connect这个服务被拒绝了。

于是,博主可以分析得到,好的设备一定有一个服务进程bind了53端口,并提供了 DNS 服务。而有问题的设备一定是没有该进程。
博主在好的设备上运行 netstat -nap 找到了该服务:
netstat -nap 同时我们又在问题的设备,执行 netstat -nap,证实,有问题的设备上这个 dnsmasq 服务没有运行起来。

这里,博主查了些资料:

Dnsmasq is a Domain Name System (DNS) forwarder and Dynamic Host Configuration Protocol (DHCP) server for small computer networks, created as free software. Dnsmasq has low requirements for system resources, can run on Linux, BSDs, Android and OS X, and is included in most Linux distributions.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值