我正在尝试使用tcpdump
监视我的服务器上的DNS查询,但tcpdump
似乎没有收到请求,或者它没有被发送到我的服务器。
我在服务器上运行tcpdump
,如下所示:
tcpdump -vvv -s 0 -l -n port 53
然后我发送DNS请求到我的服务器:
nslookup google.com xx.xx.xxx.xxx
xx.xx.xxx.xxx
是我的服务器IP。
并回应:
Server: xx.xx.xxx.xxx
Address: xx.xx.xxx.xxx#53
Non-authoritative answer:
Name: google.com
Address: 216.58.208.78
我没有Bind运行,甚至没有安装,但tcpdump
应该仍然捕获正确的数据包?
任何想法可能是什么问题?
我想就此分享我的看法。请原谅我,如果它略微偏离主题。
现在,如果出现以下情况,DNS解析将会发生:
你可以解释为什么会出现任何类型的DNS解决方案,如果不是这样的话?
为完整上述评论,
如果tcpdump(8)是使用缺少pcap_findalldevs()函数的旧版libpcap构建的,则不支持-D标志。
现在,我假设:
它应该工作。
tcpdump -vvv -n -s 0 -l -i eth0 udp port 53
取出-n并重试以查看差异。
您还可以发布您使用的nslookup(1)和tcpdump(8)的版本。