dns.setServers(servers)
servers
<string[]> RFC 5952 格式的地址数组
设置执行 DNS 解析时要使用的服务器的 IP 地址和端口。
servers
参数是 RFC 5952 格式的地址数组。
如果端口是 IANA 默认 DNS 端口 (53),则可以省略。
dns.setServers([
'4.4.4.4',
'[2001:4860:4860::8888]',
'4.4.4.4:1053',
'[2001:4860:4860::8888]:1053'
]);
如果提供的地址无效,则会抛出错误。
在进行域名系统查询时不得调用 dns.setServers()
方法。
dns.setServers()
方法仅影响 dns.resolve()
、dns.resolve*()
和 dns.reverse()
(特别是不影响 dns.lookup()
)。
此方法的工作方式与 resolve.conf 非常相似。
也就是说,如果尝试使用提供的第一个服务器进行解析导致 NOTFOUND
错误,则 resolve()
方法将不会尝试使用提供的后续服务器进行解析。
仅当较早的域名系统服务器超时或导致其他错误时,才会使用后备域名系统服务器。
servers
<string[]> array of RFC 5952 formatted addresses
Sets the IP address and port of servers to be used when performing DNS
resolution. The servers
argument is an array of RFC 5952 formatted
addresses. If the port is the IANA default DNS port (53) it can be omitted.
dns.setServers([
'4.4.4.4',
'[2001:4860:4860::8888]',
'4.4.4.4:1053',
'[2001:4860:4860::8888]:1053'
]);
An error will be thrown if an invalid address is provided.
The dns.setServers()
method must not be called while a DNS query is in
progress.
The dns.setServers()
method affects only dns.resolve()
,
dns.resolve*()
and dns.reverse()
(and specifically not
dns.lookup()
).
This method works much like
resolve.conf.
That is, if attempting to resolve with the first server provided results in a
NOTFOUND
error, the resolve()
method will not attempt to resolve with
subsequent servers provided. Fallback DNS servers will only be used if the
earlier ones time out or result in some other error.