怎样在dns数据包中提取出域名等信息

2025-04-15 05:14:40
推荐回答(1个)
回答1:

您好,您可以使用Wireshark抓取DNS包并分析其中内容,示例如下:

一次DNS查询发出了两个DNS协议数据报,对应收到了两个DNS响应。如下图所示:

以baidu.com为例,其中前两个记录都是发出的DNS数据包,后两个都是收到的DNS响应。都是本机与网关之间的交互。两次DNS查询的区别在于,第一个DNS查询的类型为A,查询域名对应的IPv4地址;第二个DNS查询的类型为AAAA,查询域名对应的IPv6地址。后面的响应也是针对两个地址分别响应的。

以IPv4的DNS为例:它在Queries中声明查询的域名为baidu.com,记录类型为A,即其IPv4地址。收到的响应如下:

从返回的Answer RRs: 4和Answers、Authoritative、Additional records可看到该DNS查询报文返回了4个记录,包括:123.125.114.144、180.149.132.47、220.181.57.217、111.13.101.208,以及对应使用的DNS服务器:ns4.baidu.com、ns2.baidu.com、dns.baidu.com、ns3.baidu.com、ns7.baidu.com。

也可以查看DNS过程的流量图/交互过程: