浅析DNS

您所在的位置:网站首页 dns请求是什么意思 浅析DNS

浅析DNS

2023-09-28 20:42| 来源: 网络整理| 查看: 265

1 前言 本文针对Header section format的RCODE进行分析 在这里插入图片描述 此部分对应Wireshark中打开的DNS数据包Domian Name System部分Flags的RCODE

1.1 参考资料 1.1.1 RFC1035[4.1.1] RFC1035 4.1.1章节中有如下描述(1987发布): RCODE响应码-这4位字段设置为回应。这些值具有以下内容解释:

0 NOERROR无错误条件 1 Format error,格式错误-名称服务器无法解释查询。 2 Server failure, 由于名称服务器问题,名称服务器无法处理该查询。 3 Name Error, 仅对来自权威名称服务器的响应有意义,此代码表示查询中引用的域名不存在。 4 Not Implemented , 未实现-名称服务器不支持所请求的查询类型。 5 Refused, 拒绝-名称服务器由于策略原因拒绝执行指定的操作。例如,名称服务器可能不希望将信息提供给特定请求者,或者名称服务器可能不希望对特定数据执行特定操作(例如,区域传送)。 6-15保留以备将来使用: QDCOUNT一个无符号的16位整数,指定问题部分中的条目数。 ANCOUNT一个无符号的16位整数,用于指定答案部分中的资源记录数。 NSCOUNT一个无符号的16位整数,指定ame的数量授权记录部分中的服务器资源记录。 ARCOUNT一个无符号的16位整数,用于指定其他记录部分中的资源记录数。 1.1.2 RFC2136 [pag5-6] rfc2136 [pag5-6]对DNS状态码的描述有所更新(1997发布):x NOERROR 0无错误条件。 FORMERR 1名称服务器无法解释格式错误导致的请求。 SERVFAIL 2名称服务器在处理此请求时遇到内部故障,例如操作系统错误或转发超时。 NXDOMAIN 3应该存在的某些名称不存在。 NOTIMP 4名称服务器不支持指定的操作码。 REFUSED 5名称服务器出于策略或安全原因拒绝执行指定的操作。 YXDOMAIN 6确实存在一些不应该存在的名称。 YXRRSET 7确实存在一些不应该存在的RRset。 NXRRSET 8应该存在的某些RRset不存在。 NOTAUTH 9服务器对“区域”部分中命名的区域没有权威性。 NOTZONE 10在“前提条件”或“更新”部分中使用的名称不在“区域”部分指示的区域内。 ZOCOUNT区域部分中的RR数。 PRCOUNT前提条件部分中的RR数。 UPCOUNT更新部分中的RR数。 ADCOUNT附加数据部分中的RR数。

2 常见状态码分析 RFC中描述的状态码有很多,但是在绝大多数场景下只有几种状态会被使用到,例如:0 NOERROR、2 SERVFAIL、3 NXDOMAIN、5 REFUSED 下面针对常见的几种状态码出现的场景进行介绍 2.1 NOERROR Response code 0 —— NOERROR 当服务器解析到结果时,将结果回复给客户端,此状态为 NOERROR,例: 环境说明 DNS服务器有test.com 权威区,有如下记录 test.com. 3600 NS ns.test.com. ns.test.com. 3600 A 1.1.1.1 www.tes.tcom 3600 A 2.2.2.2 场景一:域名正常解析到记录 1)客户端向DNS服务器解析www.tes.tcom 的A记录 2)服务器应答NOERROR,并附带:www.test.com 3600 A 2.2.2.2 场景二:请求一个域名时,这个域名类型树下如果存在其中一个类型,其他类型应答都为NOERROR 1)客户端向DNS服务器解析www.tes.tcom 的 TXT记录 2)服务器应答NOERROR,并附带test.com 的SOA 2.2 SERVFAIL Response code 2 —— SERVFAIL 递归DNS服务器至权威服务器的网络不通,或者DNS服务器发生错误,则会导致SERVFAIL 环境说明 1台递归DNS:A 1台权威DNS:B 1个客户端:C 场景一:递归DNS至权威DNS服务器因网络问题,解析超时 1)客户端向递归服务器发起DNS解析 2)由于网络问题,递归服务器向权威DNS解析超时,向客户端应答SERVFAIL 场景二:递归DNS缓存了某权威区NS域名的NXDOMAIN状态,客户端查询此权威区下的域名时,递归DNS应答SERVFAIL 1)new.test.com的NS为ns.new.test.com,递归DNS查询ns.new.test.com得到了NXDOMAIN的应答。 2)客户端向递归DNS查询new.test.com权威区下的域名,则出现SERVFAIL 2.3 NXDOMAIN Response code 3 —— NXDOMAIN 解析某一域名,此域名没有任何类型的解析记录,例: 环境说明 DNS服务器有test.com 权威区,有如下记录 test.com. 3600 NS ns.test.com. ns.test.com. 3600 A 1.1.1.1 www.tes.tcom 3600 A 2.2.2.2 场景一:这个域名类型树下不存在任何一个类型,应答NXDOMAIN 1)客户端向DNS服务器解析ww123.tes.tcom 的A记录 2)服务器应答码为NXDOMAIN,并附带test.com 的SOA 2.4 REFUSED Response code 5 —— REFUSED 客户端向DNS服务器查询域名,但是此DNS服务器需要对外递归查询,但是此DNS没有开启DNS递归功能,例: 环境说明 DNS服务器关闭递归功能,且有test.com 权威区,有如下记录: test.com. 3600 NS ns.test.com. ns.test.com. 3600 A 1.1.1.1 new.test.com. 3600 NS ns.new.test.com ns.new.test.com. 3600 A 2.2.2.2 1)客户向DNS服务器发起www.new.test.com.的查询 2)DNS服务器应答REFUSED



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3