Resolver
[<Interface>]
type Resolver =
abstract member getServers: unit -> string array with get, set
abstract member resolve: Resolve with get, set
abstract member resolve4: Resolve4 with get, set
abstract member resolve6: Resolve6 with get, set
abstract member resolveAny: ResolveAny with get, set
abstract member resolveCaa: ResolveCaa with get, set
abstract member resolveCname: ResolveCname with get, set
abstract member resolveMx: ResolveMx with get, set
abstract member resolveNaptr: ResolveNaptr with get, set
abstract member resolveNs: ResolveNs with get, set
abstract member resolvePtr: ResolvePtr with get, set
abstract member resolveSoa: ResolveSoa with get, set
abstract member resolveSrv: ResolveSrv with get, set
abstract member resolveTlsa: ResolveTlsa with get, set
abstract member resolveTxt: ResolveTxt with get, set
abstract member reverse: Action<string,Callback> with get, set
abstract member setServers: string array -> unit with get, set
static member Create (cancel: unit -> unit, getServers: unit -> string array, resolve: Resolve, resolve4: Resolve4, resolve6: Resolve6, resolveAny: ResolveAny, resolveCaa: ResolveCaa, resolveCname: ResolveCname, resolveMx: ResolveMx, resolveNaptr: ResolveNaptr, resolveNs: ResolveNs, resolvePtr: ResolvePtr, resolveSoa: ResolveSoa, resolveSrv: ResolveSrv, resolveTlsa: ResolveTlsa, resolveTxt: ResolveTxt, reverse: Action<string,Callback>, setLocalAddress: Action<string option,string option>, setServers: string array -> unit) : Resolver
abstract member cancel () : unit
abstract member setLocalAddress (?ipv4: string, ?ipv6: string) : unit| Assembly | Xantham.Fable.Node |
| Attributes | [<Interface>] |
An independent resolver for DNS requests.
Creating a new resolver uses the default server settings. Setting the servers used for a resolver using resolver.setServers() does not affect other resolvers:
import { Resolver } from 'node:dns';
const resolver = new Resolver();
resolver.setServers(['4.4.4.4']);
// This request will use the server at 4.4.4.4, independent of global settings.
resolver.resolve4('example.org', (err, addresses) => {
// ...
});
The following methods from the node:dns module are available:
resolver.getServers()resolver.resolve()resolver.resolve4()resolver.resolve6()resolver.resolveAny()resolver.resolveCaa()resolver.resolveCname()resolver.resolveMx()resolver.resolveNaptr()resolver.resolveNs()resolver.resolvePtr()resolver.resolveSoa()resolver.resolveSrv()resolver.resolveTxt()resolver.reverse()resolver.setServers()
@since v8.3.0
Properties
abstract member resolve4: Resolve4 with get, setabstract member resolve6: Resolve6 with get, setabstract member resolveAny: ResolveAny with get, setabstract member resolveCaa: ResolveCaa with get, setabstract member resolveCname: ResolveCname with get, setabstract member resolveMx: ResolveMx with get, setabstract member resolveNaptr: ResolveNaptr with get, setabstract member resolveNs: ResolveNs with get, setabstract member resolvePtr: ResolvePtr with get, setabstract member resolveSoa: ResolveSoa with get, setabstract member resolveSrv: ResolveSrv with get, setabstract member resolveTlsa: ResolveTlsa with get, setabstract member resolveTxt: ResolveTxt with get, setMethods
static member Create (cancel: unit -> unit, getServers: unit -> string array, resolve: Resolve, resolve4: Resolve4, resolve6: Resolve6, resolveAny: ResolveAny, resolveCaa: ResolveCaa, resolveCname: ResolveCname, resolveMx: ResolveMx, resolveNaptr: ResolveNaptr, resolveNs: ResolveNs, resolvePtr: ResolvePtr, resolveSoa: ResolveSoa, resolveSrv: ResolveSrv, resolveTlsa: ResolveTlsa, resolveTxt: ResolveTxt, reverse: Action<string,Callback>, setLocalAddress: Action<string option,string option>, setServers: string array -> unit) : Resolverabstract member cancel () : unit
abstract member cancel () : unitCancel all outstanding DNS queries made by this resolver. The corresponding callbacks will be called with an error with code ECANCELLED.
@since v8.3.0
abstract member setLocalAddress (?ipv4: string, ?ipv6: string) : unit
abstract member setLocalAddress (?ipv4: string, ?ipv6: string) : unitThe resolver instance will send its requests from the specified IP address. This allows programs to specify outbound interfaces when used on multi-homed systems.
If a v4 or v6 address is not specified, it is set to the default and the operating system will choose a local address automatically.
The resolver will use the v4 local address when making requests to IPv4 DNS servers, and the v6 local address when making requests to IPv6 DNS servers. The rrtype of resolution requests has no impact on the local address used.
@since v15.1.0, v14.17.0
| Parameter | |
|---|---|
ipv4 | A string representation of an IPv4 address. |
ipv6 | A string representation of an IPv6 address. |