DNS_HEADER结构(windnsdef.h)

DNS_HEADER 结构包含发送 DNS 消息时使用的 DNS 标头信息,如 RFC 1035的第 4.1.1 节中所述。

语法

typedef struct _DNS_HEADER {
  WORD Xid;
  WORD Flags;
  BYTE RecursionDesired : 1;
  BYTE Truncation : 1;
  BYTE Authoritative : 1;
  BYTE Opcode : 4;
  BYTE IsResponse : 1;
  BYTE ResponseCode : 4;
  BYTE CheckingDisabled : 1;
  BYTE AuthenticatedData : 1;
  BYTE Reserved : 1;
  BYTE RecursionAvailable : 1;
  WORD QuestionCount;
  WORD AnswerCount;
  WORD NameServerCount;
  WORD AdditionalCount;
} DNS_HEADER, *PDNS_HEADER;

成员

Xid

一个指定唯一 DNS 消息标识符的值。

Flags

RecursionDesired

一个值,该值指定 DNS 名称服务器是否应使用递归名称查询。

价值 意义
0x00
请勿使用递归名称查询。
0x01
使用递归名称查询。

Truncation

一个值,该值指定是否已截断 DNS 消息。

价值 意义
0x00
消息未截断。
0x01
消息被截断。

Authoritative

一个值,该值指定从中发送 DNS 消息的 DNS 服务器是否对域名区域具有权威性。

价值 意义
0x00
DNS 服务器在区域中不具有权威性。
0x01
DNS 服务器在区域中具有权威性。

Opcode

一个值,该值指定要在 RFC 1035 的第 4.1.1 节中定义为 OPCODE 字段定义的 DNS 消息上的操作代码。

IsResponse

一个值,该值指定 DNS 消息是查询还是响应消息。

价值 意义
0x00
DNS 消息是查询。
0x01
DNS 消息是响应。

ResponseCode

消息 DNS 响应代码。

CheckingDisabled

Windows 7 或更高版本:一个值,指定 DNS 解析程序是否支持检查。

价值 意义
0x00
在 DNS 解析程序上启用检查。
0x01
在 DNS 解析程序上禁用检查。

AuthenticatedData

Windows 7 或更高版本:一个值,该值指定 DNS 服务器是否对 DNS_HEADER 后面的 DNS 数据进行身份验证。

价值 意义
0x00
不会对 DNS 数据进行身份验证。
0x01
DNS 数据已经过身份验证。

Reserved

保留。 请勿使用。

RecursionAvailable

一个值,该值指定 DNS 名称服务器是否支持递归名称查询。

价值 意义
0x00
不支持递归名称查询。
0x01
支持递归名称查询。

QuestionCount

DNS 消息问题部分中包含的查询数。

AnswerCount

DNS 消息的答案部分中包含的资源记录数(RR)。

NameServerCount

DNS 消息的颁发机构部分中包含的 DNS 名称服务器 RR 数。 此值是消息在搜索解析中遍历的 DNS 名称服务器数。

AdditionalCount

保留。 请勿使用。

要求

要求 价值
最低支持的客户端 Windows 2000 Professional [仅限桌面应用]
支持的最低服务器 Windows 2000 Server [仅限桌面应用]
标头 windnsdef.h

另请参阅

DNS_RECORD