ADDRINFO_DNS_SERVER 结构 (ws2def.h)

表示 Winsock API 中使用的自定义域名系统 (DNS) 服务器。

语法

typedef struct addrinfo_dns_server {
  unsigned int     ai_servertype;
  unsigned __int64 ai_flags;
  unsigned int     ai_addrlen;
  struct sockaddr  *ai_addr;
  union {
    PWSTR ai_template;
  };
} ADDRINFO_DNS_SERVER;

成员

ai_servertype

DNS 服务器的类型。 可以是以下值之一。

常数 Value 含义
AI_DNS_SERVER_TYPE_UDP 1 常规 DNS 服务器。
AI_DNS_SERVER_TYPE_DOH 2 DNS-over-HTTPS 服务器。

ai_flags

包含以下任何选项的位图。

常数 Value 含义
AI_DNS_SERVER_UDP_FALLBACK 0x1 此服务器还可用于非安全名称解析。

ai_addrlen

ai_addr指向的套接字地址结构的长度(以字节为单位)。

ai_addr

指向包含自定义服务器地址的套接字地址结构的指针。 仅支持 SOCKADDR_INSOCKADDR_IN6 结构。 sa_family成员必须设置为 AF_INETAF_INET6。 结构的其余部分必须归零,但 IPv4 的 SOCKADDR_IN::sin_addr 成员或 IPv6 的 SOCKADDR_IN6::sin6_addr 除外。

ai_template

如果 ai_servertype 设置为 AI_DNS_SERVER_TYPE_DOH,则此成员必须指向一个 以 NULL 结尾的宽字符串,该字符串表示此服务器的 DNS-over-HTTPS 模板。

如果 ai_servertype 设置为 AI_DNS_SERVER_TYPE_UDP,则此字段必须为 NULL

要求

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

另请参阅