Node.js — модуль DNS

Node.js — модуль DNS

От автора: Модуль dns в Node.js используется для поиска фактических DNS, а также для применения функций обработки имен базовой операционной системы. Этот модуль предоставляет асинхронную сетевую оболочку и может быть импортирован с помощью следующего синтаксиса.

Методы

dns.lookup(hostname[, options], callback) — Преобразует имя хоста (например, google.com) в первую найденную A (IPv4) или AAAA (IPv6) запись. Параметры могут указываться, как объект или как целое число. Если параметры не указаны, то действительны IP-адреса v4 и v6. Если параметры являются целыми числами, то это должно быть 4 или 6.

dns.lookupService(address, port, callback) — Устанавливает данный адрес и порт для имени хоста и службы, используя getnameinfo.

dns.resolve(hostname[, rrtype], callback) — Преобразует имя хоста (например, google.com) в массив типов записей, указанных в rrtype.

dns.resolve4(hostname, callback) — То же, что и dns.resolve(), но только для запросов IPv4 (записи A). Адреса — это массив IP-адресов v4 (например, [’74 .125.79.104 ‘, ’74 .125.79.105’, ’74 .125.79.106 ‘]).

dns.resolve6(hostname, callback) — То же, что и dns.resolve4(), только для запросов IPv6 (запрос AAAA).

dns.resolveMx(hostname, callback) — То же, что и dns.resolve(),только для почтовых запросов (записи MX).

dns.resolveTxt(hostname, callback) — То же, что и dns.resolve(),только для текстовых запросов (записей TXT). адрес — это 2-й массив текстовых записей, доступных для имени хоста (например, [[‘v = spf1 ip4: 0.0.0.0,’ ~ all]]). Каждый поддиапазон содержит фрагменты TXT одной записи. В зависимости от варианта использования они могут быть объединены или обработаны отдельно.

dns.resolveSrv(hostname, callback) — То же, что и dns.resolve(),только для записей службы (записи SRV). адрес — это массив записей SRV, доступных для имени хоста. Свойства записей SRV — это приоритет, вес, порт и имя (например, [{‘priority’: 10, ‘weight’: 5, ‘port’: 21223, ‘name’: ‘service.example.com’}. ..]).

dns.resolveSoa(hostname, callback) — То же, что и dns.resolve(),только для начала запросов на авторизацию (запись SOA).

dns.resolveNs(hostname, callback) — То же, что и dns.resolve(),только для записей сервера имен (NS records). address — это массив записей сервера имен, доступных для имени хоста (например, [‘ns1.example.com’, ‘ns2.example.com’]).

dns.resolveCname(hostname, callback) — То же, что и dns.resolve(),только для записей канонических имен (записей CNAME). адрес — это массив записей канонических имен, доступных для имени хоста (например, [‘bar.example.com’]).

dns.reverse(ip, callback) — Обратное преобразование ip-адреса в массив имен хостов.

dns.getServers() — Возвращает массив IP-адресов в виде строк, которые в настоящее время используются для обработки.

dns.setServers(servers) — Учитывая массив IP-адресов в виде строк, устанавливает их в качестве серверов, которые будут использоваться для обработки.

rrtypes

Ниже приведен список допустимых rrtypes, используемых методом dns.resolve()

A – IP-адреса V4, по умолчанию

AAAA – IP-адреса V6

MX — почтовые записи

TXT — текстовые записи

SRV — записи SRV

PTR — используется для обратного поиска IP

NS — записи сервера имен

CNAME — записи канонических имен

SOA — начало записи прав доступа

Коды ошибок

Каждый запрос DNS может возвращать один из следующих кодов ошибок:

dns.NODATA — DNS-сервер вернул ответ без данных.

dns.FORMERR — запрос заявок на сервер DNS был неверно определен.

dns.SERVFAIL — DNS-сервер возвратил общую ошибку.

dns.NOTFOUND — имя домена не найдено.

dns.NOTIMP — DNS-сервер не выполняет запрошенную операцию.

dns.REFUSED — DNS-сервер отклонил запрос.

dns.BADQUERY — неверный запрос DNS.

dns.BADNAME — некорректный формат имени хоста.

dns.BADFAMILY — неподдерживаемое семейство адресов.

dns.BADRESP — ответ на неверный DNS.

dns.CONNREFUSED — не удалось связаться с DNS-серверами.

dns.TIMEOUT — задержка при обращении к DNS-серверам.

dns.EOF — конец файла.

dns.FILE — ошибка чтения файла.

dns.NOMEM — недостаточно памяти.

dns.DESTRUCTION — канал удаляется.

dns.BADSTR — неверная строка.

dns.BADFLAGS — указаны недопустимые флаги.

dns.NONAME — данное имя хоста не является числовым.

dns.BADHINTS — указаны недопустимые флаги подсказок.

dns.NOTINITIALIZED — инициализация библиотеки c-ares еще не выполнена.

dns.LOADIPHLPAPI — ошибка при загрузке iphlpapi.dll.

dns.ADDRGETNETWORKPARAMS — не удалось найти функцию GetNetworkParams.

dns.CANCELLED — DNS-запрос аннулирован.

Пример

Создайте файл js с именем main.js со следующим кодом:

Теперь запустите main.js:

В результате вы должны получить следующее.

Источник: //www.tutorialspoint.com/

Редакция: Команда webformyself.

Метки:

Похожие статьи:

Комментарии Вконтакте: