相关文章
七、DNS报文及抓包分析
2024-11-04 17:30

六、DNS的资源记录与报文格式

七、DNS报文及抓包分析

6.1、资源记录

资源记录(Resource Record)在DNS的查询和应答报文中。DNS服务器也存储资源记录。

资源记录是包含4个字段:(Name, Valuer, Type, TTL) 。TTL是该记录的生存时间,它决定了RR在缓存中的时间。

Name和Value的值取决于Type,常见的三种type如下

如果Type = A,则Name是主机名,Value是该主机名对应的IP地址。 A资源记录提供了主机名到IP地址的映射。 例如(bar.foo.com, 145.37.93.126, A)。

如果Type = NS,则Name是一个域(如foo.com),而Value是该域的权威DNS服务器的域名。例如(foo.com, dns.foo.com, NS)。NS资源记录用于将DNS查询报文发送到对应的DNS服务器(路由DNS查询)。

如果Type = CNAME,则Value是名为Name的主机对应的规范主机名(别名)。 例如(foo.com, relay1.bar. foo. com, CNAME)。该记录保存一个主机名对应的别名。

6.2、报文格式

 DNS有两种报文,查询和回答报文。 而且查询和回答报文的总体格式相同,如下图

前三行一共12个字节。标识符是一个16比特的数,用于标识该查询。 这个标识符会被复制到对查询的回答报文中,用来匹配发送的请求和接收到的回答。

标志字段中有若干标志。 1比特的查询/回答标志位指出报文是查询报文(0)还是回答报文(1)。当请求DNS服务器是权威DNS服务器时,1比特的“权威服务器” 标志位被置在回答报文中。

如果主机或者DNS服务器在该某DNS服务器没有某记录时,希望执行递归查询,将设置1比特的“希望递归查询” 标志位在查询报文中。 如果该DNS服务器支持递归查询,在它的回答报文中会对1比特的“递归可用” 标志位置位。

还有4个有关数量的字段,这些字段对应后面4类数据区域出现的数量。

问题区域包括:①名字字段(正在被查询的主机名字)②类型字段(正被询问的问题类型,例如主机地址是与一个名字相关联(类型A)还是与某个名字的邮件服务器相关联(类型MX)。

在回答报文的回答区域中可以包含多条RR(因此一个主机名能够有多个IP地址)。权威区域包含了其他权威服务器的记录。附加区域包含了其他有帮助的记录。

七、DNS报文示例

关于DNS的命令见博客https://blog.csdn.net/Master_Cui/article/details/112862903https://blog.csdn.net/Master_Cui/article/details/112862810

当在浏览器中输入www.baidu.com,DNS的报文整体是这样的

7.1、DNS查询报文分析

整体来看,DNS查询报文是基于UDP而不是TCP,目标进程的端口是53。接下来再看DNS查询区域

Transaction ID:标识字段,对应前面报文格式中的标识符。客户程序通过它来确定响应与查询是否匹配。

Flags:一共16bit的控制位。

Questions:表示queries区域的数量。

Answers RRs:表示回答区域的数量。

Authority RRs:表示授权区域的数量。

Additional RRs:表示附加区域的数量。

Queries:Queries区域的内容。

Response:0表示query查询消息,1表示response消息。对应报文结构中的1bit的查询/回答标志位。

Opcode:通常值为0,表示标准查询。其他值1表示反向查询,2表示服务器状态请求。

Truncated:表示报文是否被截断。因为UDP数据包有长度限制,当长度过长时会被截断。0表示没截断,1标识DNS报文长度超过512字节,被截断。

Recursion desired:表示希望的查询方式,0表示迭代查询,1表示递归查询。

Z:保留位

Non-authenticated data:未认证数据。

最后看下queries字段

Type:表示查询类型,为A,所以Name表示的就是需要查询的域名(如果是反向查询,则为IP,反向查询即由IP地址反查域名)。

Class:通常为1,表示Internet数据,简写为IN。

7.2、DNS响应报文分析

整体来看,DNS响应报文也是基于UDP,发送进程的端口是53。接下来再看DNS响应区域

Transaction ID:标识字段,为0xc2f2,与查询报文匹配。

Answers RRs:表示回答区域的数量,说明响应报文中包含3个回答。

Flags、Questions、Authority RRs、Additional RRs和Queries都是大同小异

响应报文的flag区域比查询报文多了一些东西

Authoritative:表示应答DNS服务器是否是权威服务器,0表示不是,1表示是

Recursion available:代表服务器是否可以递归查询。1表示可以,0表示不可以。

Answer authenticated:应答/权限部分未由服务器进行认证。

Reply code:状态码。0表示没有差错(No error)。

最后看answer区域

对应前面的Answer RRs数目,有三条,第一条是百度的别名www.a.shifen.com, TTL是85秒,表示只能缓存85,Data Length表示对应answer的字节数,后两个分别给出了别名的IP地址,输入后IP后,出现了百度的页面

参考

《计算机网络自顶向下方法》

https://www.cnblogs.com/liyong-blackStone/p/10330188.html

https://zhuanlan.zhihu.com/p/65076033

https://blog.csdn.net/u014029795/article/details/87186859#t14

    以上就是本篇文章【七、DNS报文及抓包分析】的全部内容了,欢迎阅览 ! 文章地址:http://sjzytwl.xhstdz.com/news/369.html 
     栏目首页      相关文章      动态      同类文章      热门文章      网站地图      返回首页 物流园资讯移动站 http://sjzytwl.xhstdz.com/mobile/ , 查看更多   
最新文章
IK Total Studio MAX4降价至1099元,音频制作不容错过的超值选择total手机「IK Total Studio MAX4降价至1099元,音频制作不容错过的超值选择」
在实际使用中,Total Studio MAX4展现出了强大的音频处理能力。以AmpliTube 5为例,用户不仅可以选择丰富的音色,还能通过ToneNE
为大家推荐30部穿越类动漫,哪一部是您的最爱?智慧型手机「为大家推荐30部穿越类动漫,哪一部是您的最爱?」
“穿越”是现在非常流行的题材,在网络文学中“穿越类”作品比比皆是,什么穿越去古代或未来、穿越去异世界……而在二次元动漫里
移动云考勤喔趣手机考勤「移动云考勤喔趣」
移动云考勤喔趣,一般又称喔趣app。
捕鱼大咖官捕鱼手机版「捕鱼大咖官」
【免费礼包】兑换码:DK666,DK888【兑换方式】打开游戏-右上角精彩活动-兑换码-每个玩家限2次不同号码的兑换机会!专业团队,史
瓜子二手车二手手机直卖网「瓜子二手车」
瓜子二手车是非常热门的二手车交易软件,二手车辆线上直卖,更有三天试驾驶的模式提供,平台上新车辆均是经过车辆严选,保证车辆
权限列表【录屏录制大师-录屏】小米手机录屏功能在哪「权限列表【录屏录制大师-录屏】」
● 访问大概位置允许应用访问大概位置● 查看网络状态允许应用程序查看所有网络的状态。● 开关WLAN允许应用开启或关闭WLAN● 开
爱思助手 For Mac版爱思助手怎么下载到苹果手机「爱思助手 For Mac版」
爱思助手Mac版是一款至力于为iOS设备用户提供百万正版苹果软件、热门游戏、苹果铃声、高清壁纸,免 AppIe ID 高速一键下载,支持
【品牌人物】OPPO与vivo幕后老板段永平vivo手机创始人「【品牌人物】OPPO与vivo幕后老板段永平」
五洲天宇认证中心是国家认监委唯一批准的品牌星级评价机构,为中华人民共和国境内企业提供品牌星级认证。该认证是对企业及其产品
三防壳 戒不了毒 再入Griffin Survivor Summit 手机壳三防手机壳「三防壳 戒不了毒 再入Griffin Survivor Summit 手机壳」
之前已经隶属过这么多年用过的三防手机壳了,果然被绝大部分人看做了神经病 。但这种偏执的嗜好确实难以改变,这不上一个Lifepro
如何检测空调氟利昂泄露?空调氟利昂怎么加? 发布时间:2025-01-13手机怎么测室内温度「如何检测空调氟利昂泄露?空调氟利昂怎么加? 发布时间:2025
空调是我们生活中常用到的电器,我们都知道,它在制冷的过程中是需要氟利昂的。那么氟利昂是什么呢?它其实就是空调当中的制冷剂