dnsmasq 行为异常:dig 返回 dns 查找结果,但 ping 报告“找不到主机”

dnsmasq 行为异常:dig 返回 dns 查找结果,但 ping 报告“找不到主机”

由于我的路由器无法解析 LAN 设备的主机名,因此我使用 DNSMASQ 将服务器设置为充当 DNS。

DNS Server Specs
----------------
OS:     Ubuntu Server
LAN IP: 192.168.1.4

我有第二台用于网络上流媒体的服务器,它运行 kodi 和 apache2,这样我就可以通过我编写的 Web 界面控制机器。

Media Server Specs
------------------
LAN IP:   192.168.1.10
HOSTNAME: media.lan

我的路由器已配置为使用本地 DNS 服务器进行 DNS 查找。我还在 DNS 服务器上的 /etc/hosts 中添加了媒体服务器的条目。

如果我dig media.lan在网络上的任何机器上运行,我会得到以下信息:

; <<>> DiG 9.10.6 <<>> media.lan
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 41974
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;media.lan.         IN  A

;; ANSWER SECTION:
media.lan.      0   IN  A   192.168.1.10

;; Query time: 2 msec
;; SERVER: 192.168.1.4#53(192.168.1.4)
;; WHEN: Tue Dec 17 16:06:24 CET 2019
;; MSG SIZE  rcvd: 54

这给人的印象是一切都运转良好。正在联系正确的 DNS 服务器并返回 media.lan 的正确 IP 地址。但是,如果我尝试ping media.lan在任何机器上执行此操作,则会收到以下错误:

ping: cannot resolve media.lan: Unknown host

Firefox 也找不到服务器。如果我 ping media.lan 的 IP,我会得到响应。我的设置在 30 分钟前运行得很好,我没有更新任何内容。 Ping google.com 工作正常,没有任何问题。这到底是怎么回事?为什么 dig 得到了正确的响应,但本地主机名的所有其他 DNS 查找似乎都失败了?

/etc/nsswitch.conf(DNS 服务器的)的内容:

# /etc/nsswitch.conf
#
# Example configuration of GNU Name Service Switch functionality.
# If you have the `glibc-doc-reference' and `info' packages installed, try:
# `info libc "Name Service Switch"' for information about this file.

passwd:         compat systemd
group:          compat systemd
shadow:         compat
gshadow:        files

hosts:          files dns
networks:       files

protocols:      db files
services:       db files
ethers:         db files
rpc:            db files

netgroup:       nis

/etc/resolv.conf

nameserver 127.0.0.53
options edns0
search home

答案1

好的,所以得到这个:在自动配置的 DNS 服务器列表中(我的 Mac 一定是从调制解调器收到的),我在 192.168.1.4 条目下面发现了一个 IPv6 地址。然后,我在路由器上禁用了 IPv6 DHCP 服务器,果然,我的主机名解析突然开始工作,而且我在 Mac 上看不到更多 IPv6 DNS 服务器地址。这可能是一个错误,还是只是一个奇怪的巧合?

相关内容