DNS_CUSTOM_SERVER结构(windns.h)

表示 DNS 自定义服务器。 DNS_CUSTOM_SERVER 对象通过 DNS_QUERY_REQUEST3 结构传递给 DnsQueryEx

若要将 DNS_CUSTOM_SERVERServerAddr一起使用,请在 windns.h之前包括 ws2ipdef.h

语法

typedef struct _DNS_CUSTOM_SERVER {
  DWORD   dwServerType;
  ULONG64 ullFlags;
  union {
    PWSTR pwszTemplate;
    PWSTR pwszHostname;
  };
  CHAR    MaxSa[DNS_ADDR_MAX_SOCKADDR_LENGTH];
} DNS_CUSTOM_SERVER;

成员

dwServerType

类型:DWORD

服务器类型。 必须是下列项之一。

价值 描述
DNS_CUSTOM_SERVER_TYPE_UDP 0x1 执行不安全的名称解析
DNS_CUSTOM_SERVER_TYPE_DOH 0x2 DNS-over-HTTPS 名称解析

ullFlags

类型:ULONG64

一个值,该值包含以下选项的位图。

价值 描述
DNS_CUSTOM_SERVER_UDP_FALLBACK 0x1 服务器可能会回退到不安全的解析

pwszTemplate

类型:PWSTR

表示 DNS-over-HTTPS 模板的 NULL终止宽字符串。

如果 dwServerType 设置为 DNS_CUSTOM_SERVER_TYPE_UDP,则此字段必须 NULL

如果 dwServerType 设置为 DNS_CUSTOM_SERVER_TYPE_DOH,则此字段必须指向有效的 NULL终止字符串。

pwszHostname

MaxSa[DNS_ADDR_MAX_SOCKADDR_LENGTH]

类型:CHAR[DNS_ADDR_MAX_SOCKADDR_LENGTH]

一个字节数组,它指定 SOCKADDR_INET的存储。 MaxSa 是与 ServerAddr的联合。

若要将 DNS_CUSTOM_SERVERServerAddr一起使用,必须在 windns.h之前包括 ws2ipdef.h

除了 SOCKADDR_INET的存储外,MaxSa 避免 (包括 ws2ipdef.h)导致的编译错误。 这允许使用除 DNS_CUSTOM_SERVER以外的 windns.h 的任何功能。

要求

要求 价值
最低支持的客户端 Windows 内部版本 22000
支持的最低服务器 Windows 内部版本 22000
标头 windns.h

另请参阅