如何在 Unix 中使用“netstat”捕获 DNS 请求

如何在 Unix 中使用“netstat”捕获 DNS 请求

我在一家银行工作,那里没有“netcat”。我遇到了一个问题,两个 DNS 服务器中的一个发生故障,造成了影响。为了排除故障,我需要捕获来自 DNS 客户端 (AIX) 的请求(传入和传出)。我该怎么做?Netstat 无法使用这些选项,我使用了

答案1

Netstat 几乎肯定无法帮助你

Netstat 显示打开的套接字和活动的连接当你执行程序的时候。DNS 请求发生得太快,你无法捕捉到它,因为它会在输入命令参数所需的时间内消失并完成。此外,UDP 是无状态的,因此一开始就不是活动连接

你想要的是tcpdump。该程序允许你根据你提供的参数记录网络流量。

tcpdump -w dnsrequests.pcap -i any udp and port 53将捕获所有接口上端口 53 上的所有 UDP 流量并将其保存到文件中dnsrequests.pcap。然后您可以在wireshark并在闲暇时学习。

答案2

我认为netstat不会让您检查实际流量,但tcpdump如果您无权访问netcattcpdump udp port 53应该会向您显示流量。

答案3

我在这里的其他地方看到了提到的 tcpdump,虽然它非常适合这项任务,但有些人可能更喜欢使用图形应用程序,例如 Wireshark!

相关内容