(windns.h) DNS_CUSTOM_SERVER 结构

表示 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

一个 以 NULL 结尾的宽字符串,表示 DNS-over-HTTPS 模板。

如果 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

另请参阅