Skip to content

node:dns

How Elide supports Node's dns and dns/promises modules: Resolver and every resolve* record type match Node, and lookup uses the host resolver.

On this page

node:dns and node:dns/promises match Node’s dns, including Resolver and every resolve* record type. lookup uses the host resolver, so lookup("localhost") works offline.

Example

js
// dns.mjs
import { lookup } from "node:dns/promises";
import { isIP } from "node:net";

const { address, family } = await lookup("localhost", { family: 4 });
console.log(address, family);
const all = await lookup("localhost", { all: true });
console.log(all.every((entry) => isIP(entry.address) === entry.family));
utf-8 · js · Lines: 8

elide run dns.mjs prints:

text
127.0.0.1 4
true
utf-8 · text · Lines: 2

Reference

Status: Full · 17 of 20 suite tests pass (85.0%)

dns exports

Resolver, getDefaultResultOrder, getServers, lookup, lookupService, promises, resolve, resolve4, resolve6, resolveAny, resolveCaa, resolveCname, resolveMx, resolveNaptr, resolveNs, resolvePtr, resolveSoa, resolveSrv, resolveTlsa, resolveTxt, reverse, setDefaultResultOrder, setServers, 27 constants such as ADDRCONFIG

Tests: node-api node:dns: 17 pass, 3 fail, 0 error, 10 skipped. Failing: test-dns-get-server.js, test-dns-setserver-when-querying.js, test-dns.js.

Was this page helpful?