fuchsia.net.name

添加数量:11

协议

DnsServerWatcher

fuchsia.net.name/server_watcher.fidl 中定义

提供一个挂起的获取接口,用于监视 DNS 服务器配置。

监视服务器

返回 DNS 服务器列表。

首次调用始终会返回当前服务器列表的快照;如果返回空列表,则会返回块的快照。后续调用将一直处于阻塞状态,直到服务器列表发生更改。

服务器列表会根据配置或网络拓扑变更、到期日期等随时间而变化。调用方必须重复调用 WatchServers 并将之前返回的任何 servers 替换为新条目,以避免使用过时或过期的条目。

当上一个调用处于待处理状态时,无法调用此方法。这样做会导致协议的服务器端关闭。

  • 响应 servers 要用于 DNS 解析的服务器列表(按优先级顺序)。

请求

<空>

回复

名称类型
servers vector<DnsServer>

查找

fuchsia.net.name/lookup.fidl 中定义

提供名称和地址解析。

查找主机名

根据 IP 地址查找主机名。

请求

名称类型
addr fuchsia.net/IpAddress

回复

名称类型
payload Lookup_LookupHostname_Result

查询 IP

按主机名查找 IP 地址列表。

请求

名称类型
hostname fuchsia.net/Hostname
options LookupIpOptions

回复

名称类型
payload Lookup_LookupIp_Result

LookupAdmin

fuchsia.net.name/lookup_admin.fidl 中定义

提供对名称解析设置的管理控制。

GetDnsServer

获取当前用于解析名称查询的 DNS 服务器。

  • 响应 servers LookupAdmin 使用的服务器列表(按优先级顺序)。

请求

<空>

回复

名称类型
servers vector<fuchsia.net/SocketAddress>

SetDnsServer

将 DNS 服务器设置为 servers

  • request servers:用于域名解析的服务器列表(按优先级顺序)。空列表意味着不使用任何服务器,并且名称解析可能会失败。servers 中的每个 SocketAddress 都必须是有效的单播套接字地址。服务器列表中的重复信息将被删除。
  • error 如果提供的地址中有任何一个不满足上述条件,则返回 ZX_ERR_INVALID_ARGS

请求

名称类型
servers vector<fuchsia.net/SocketAddress>

回复

名称类型
payload LookupAdmin_SetDnsServers_Result

结构

LookupAdmin_SetDnsServers_Response

fuchsia.net.name/lookup_admin.fidl 中定义

<空>

查找_查找主机名_响应

fuchsia.net.name/lookup.fidl 中定义

字段类型说明默认
hostname fuchsia.net/Hostname 无默认值

查找_查找 Ip_响应

fuchsia.net.name/lookup.fidl 中定义

字段类型说明默认
result LookupResult 无默认值

枚举

LookupError 严格

类型:uint32

fuchsia.net.name/lookup.fidl 中定义

查询操作错误。

名称说明
1

未找到此查询的结果。

2

查找失败,但稍后可能会成功。例如,网络或 DNS 服务器可能无法访问。

3

由于参数无效(例如,主机名编码不正确或过长),查找失败。

4

由于内部错误,查找失败。

表格

DhcpDnsServerSource

fuchsia.net.name/dns.fidl 中定义

序数字段类型说明
source_interface uint64

发现此服务器的接口索引。

Dhcpv6DnsServerSource

fuchsia.net.name/dns.fidl 中定义

序数字段类型说明
source_interface uint64

发现此服务器的接口索引。

DNS 服务器

fuchsia.net.name/dns.fidl 中定义

DNS 服务器配置。

序数字段类型说明
address fuchsia.net/SocketAddress

必须提供服务器的地址。

source DnsServerSource

此服务器的配置来源。默认为 fuchsia.net.name/DnsServerSource.static_source

LookupIpOptions 类

fuchsia.net.name/lookup.fidl 中定义

序数字段类型说明
ipv4_lookup bool

包含 IPv4 结果。

如果未设置,则解释为 false。

ipv6_lookup bool

包含 IPv6 结果。

如果未设置,则解释为 false。

sort_addresses bool

按优先顺序对地址进行排序。

正确,系统会根据 RFC 6724 第 6 节中所述的目的地地址选择方式对地址进行排序。

如果未设置,则解释为 false。

canonical_name_lookup bool

包含规范名称。

如果未设置,则解释为 false。

添加数量:12

LookupResult

fuchsia.net.name/lookup.fidl 中定义

序数字段类型说明
addresses vector<fuchsia.net/IpAddress>[1024]

通过查询生成的 IP 地址。

如果请求了排序,则按偏好设置顺序对 addresses 进行排序,首选目的地地址排在最前面。

canonical_name fuchsia.net/Hostname

所请求主机名的规范名称。

仅在请求时提供。

添加数量:12

NdpDnsServerSource

fuchsia.net.name/dns.fidl 中定义

序数字段类型说明
source_interface uint64

发现此服务器的接口索引。

StaticDnsServerSource

fuchsia.net.name/dns.fidl 中定义

序数字段类型说明

联合

DnsServerSource 严格

fuchsia.net.name/dns.fidl 中定义

序数变体类型说明
static_source StaticDnsServerSource

该服务器通过 fuchsia.net.name/LookupAdmin.SetDefaultServers 进行静态配置。

dhcp DhcpDnsServerSource

服务器是通过 DHCPv4 发现的。

ndp NdpDnsServerSource

服务器是通过 NDP 路由器通告发现的。

dhcpv6 Dhcpv6DnsServerSource

服务器是通过 DHCPv6 发现的。

LookupAdmin_SetDnsServers_Result 严格

fuchsia.net.name/lookup_admin.fidl 中定义

序数变体类型说明
response LookupAdmin_SetDnsServers_Response
err zx/Status

Lookup_LookupHostname_Result 严格

fuchsia.net.name/lookup.fidl 中定义

序数变体类型说明
response Lookup_LookupHostname_Response
err LookupError

Lookup_LookupIp_Result 严格

fuchsia.net.name/lookup.fidl 中定义

序数变体类型说明
response Lookup_LookupIp_Response
err LookupError

常量

名称类型说明
MAX_ADDRESSES 1024 uint16

一次查询可以返回的地址数上限。