tcpdump
在我的 RedHat 服务器上捕获期间,我在 DNS 查询中发现了奇怪的重复域名。它对我的 DNS 名称解析没有任何影响。
但不清楚为什么我的服务器在 DNS 查询 ==> 中发送这样的请求my.domainspec.com.domainspec.com.domainspec.com
。一般来说,它应该只是my.domainspec.com
来自 tcpdump 的信息:
12:17:28.431208 IP (tos 0x0, ttl 64, id 57779, offset 0, flags [DF], proto UDP (17), length 97)
my.domainspec.com.33953 > ns1.entry.com.domain: [bad udp cksum 0xcb8a -> 0x6e04!] 63367+ A? my.domainspec.com.domainspec.com.domainspec.com. (69)`
`12:17:28.431718 IP (tos 0x0, ttl 64, id 61601, offset 0, flags [none], proto UDP (17), length 148)
ns1.entry.com.domain > my.domainspec.com.33953: [udp sum ok] 63367 NXDomain* q: A? my.domainspec.com.domainspec.com.domainspec.com. 0/1/0 ns: domainspec.com. SOA ns1.entry.com. postmaster.domainspec.com. 2018012732 600 300 2592000 900 (120)
信息来自nsswitch.conf
:
grep "hosts" /etc/nsswitch.conf
#hosts: db files nisplus nis dns
hosts: files dns myhostname
信息来自/etc/hosts
:
193.48.203.195 my.domainspec.com
信息来自/etc/resolv.conf
:
# Generated by NetworkManager
search domainspec.com
nameserver 8.8.8.8
请注意。我在示例中使用了假域名和 IP。
有人能解释一下DNS查询中域名重复的原因是什么吗?非常感谢任何帮助。
答案1
你描述的行为几乎是正常的、已知的和有记录的行为。
发生的情况是,当解析器无法解析 DNS 名称时,它将尝试解析它,并将search
指令中的所有域依次附加到原始查询中(如果在中间过程中没有匹配)。
该过程本身有点复杂,并且由于该过程的递归性质,可以组合多个搜索域。
在解析 DNS 名称时,在某种程度上最小化/避免域扩展的方法是在指令中search
(或在您配置搜索域的任何位置),甚至在应用程序级别,以“.”结尾 DNS/域名。
如:
search domainspec.com. domain.com. example.com.
另外,举个例子,在进行 ping 时,也可以根据具体情况避免域搜索扩展:
ping www.example.com.
或者
ping www.cnn.com.
search 主机名查找的搜索列表。
The search list is normally determined from the local domain name; by default, it contains only the local domain name. This may be changed by listing the desired domain search path following the search keyword with spaces or tabs separating the names. Resolver queries having fewer than ndots dots (default is 1) in them will be attempted using each component of the search path in turn until a match is found. For environments with multiple subdomains please read options ndots:n below to avoid man-in-the-middle attacks and unnecessary traffic for the root-dns-servers. Note that this process may be slow and will generate a lot of network traffic if the servers for the listed domains are not local, and that queries will time out if no server is available for one of the domains. The search list is currently limited to six domains with a total of 256 characters.