DNS_CUSTOM_SERVER结构(windns.h)
表示 DNS 自定义服务器。 DNS_CUSTOM_SERVER 对象通过 DNS_QUERY_REQUEST3 结构传递给 DnsQueryEx。
若要将 DNS_CUSTOM_SERVER 与 ServerAddr一起使用,请在 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_SERVER 与 ServerAddr一起使用,必须在 windns.h
之前包括 ws2ipdef.h
。
除了 SOCKADDR_INET的存储外,MaxSa 避免 不(包括 ws2ipdef.h
)导致的编译错误。 这允许使用除 DNS_CUSTOM_SERVER以外的 windns.h
的任何功能。
要求
要求 | 价值 |
---|---|
最低支持的客户端 | Windows 内部版本 22000 |
支持的最低服务器 | Windows 内部版本 22000 |
标头 | windns.h |