域名解析协议-DNS

DNS作为互联网关键服务,负责将域名转换为IP地址。DNS报文包括12字节的头部和四个可变字段,通常使用UDP协议,端口号53。DNS交互包括查询和响应,查询报文的QR字段为0,响应报文则为1。当响应超512字节时,会设置TC位,客户端可能使用TCP重发。DNS查询包括域名、类型和TTL等信息。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

DNS(Domain Name System)是互联网上非常重要的一项服务,我们每天上网都要依靠大量的DNS服务。在Internet上,用户更容易记住的是域名,但是网络中的计算机的互相访问是通过 IP 地址实现的。DNS 最常用的功能是给用户提供域名解析服务,将用户的域名解析成网络上能够访问的IP地址。

DNS报文格式

如下图所示,DNS报文由12B长的首部和4个长度可变的字段组成。标识字段由客户端程序设置并由服务器返回结果,客户端通过标识来确定响应与查询是否匹配。

下面我们结合 DNS 查询报文和响应报文的抓包信息来理解报文格式中的几个关键字段。

DNS查询报文的抓包,如下所示。

关键字段如下:

  1. UDP:DNS查询是基于UDP传输数据的。DNS服务器支持TCP和UDP两种协议的查询方式。

  2. Destination port:目的端口默认是53。

  3. QR:0表示查询报文;1表示回应报文。

  4. TC:表示“可截断”。使用UDP时,当应答报文超过512Byte时,只返回前512Byte。
    通常情况下,DNS查询都是使用UDP,返回响应中TC位设置为1时࿰

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值