六、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服务器支持

最低0.47元/天 解锁文章
2141

被折叠的 条评论
为什么被折叠?



