标签:
DNS消息包含三种类型:
请求和响应在原始标准中定义,更新在RFC 2136中定义。
DNS通用消息格式如下:
DNS消息头包含以下字段:
字段名称 | 描述 |
---|---|
Transaction ID | 16比特,标识一次DNS交互。由请求端生成,响应端返回,用于将响应报文对应到请求报文 |
Flags: | 16比特,包含各种标记,标记定义如下: |
Request/response | 1比特,为0时表示请求,为1时表示响应 |
Operation code | 4比特,表示操作码,0x0表示查询 |
Authoritative answer | 1比特,表示响应者是域名的权威名字服务器 |
Truncation | 截断标志位,1比特,为1时表示响应超过512字节,已被截断 |
Recursion desired | 1比特,表示递归查询 |
Recursion available | 1比特,为1时表示响应值可以处理递归查询 |
Reserved | 3比特,保留字段,为0 |
Return code | 4比特,返回码。0表示成功响应,0x3表示域名错误,域名在权威名字服务器上不存在 |
Question Resource Record count | 16比特,表示问题个数 |
Answer Resource Record count | 16比特,表示回答个数 |
Authority Resource Record count | 16比特,表示权威资源记录个数 |
Additional Resource Record count | 16比特,表示额外资源记录个数 |
该字段表示查询的域名,包含以下三个字段:
回答、授权、额外信息字段均采用资源记录(Resource Record)格式,定义如下:
字段名称 | 描述 |
---|---|
Resource Record Name | DNS域名,其格式与问题字段中的查询名相同,但是为了节省数据,如果之前出现了相同的名字,则此处的值为之前相同名字相对报文中DNS起始数据的位置。如问题的查询名为www.baidu.com,回答字段中的资源记录名字与之相同,因此其值为0xc0 0x0c(0xc0表示引用,0x0c表示查询名相对DNS起始数据的位置是12) |
Resource Record Type | 16比特,资源记录类型,与问题字段中查询类型相同 |
Resource Record Class | 16比特,资源记录类(IN: 0x0001) |
Time-to-Live | 32比特,TTL |
Resource Data Length | 16比特,资源数据长度 |
Resource Data | 资源数据 |
标签:
原文地址:http://www.cnblogs.com/aurora-s/p/5030021.html