Latest web development tutorials

Node.js moduł DNS

Node.js moduł DNS

Moduł narzędziem node.js Moduł narzędziem node.js

Node.js modułu DNS służy do rozpoznawania nazw domen.Wprowadzenie modułu składni DNS jest następujący:

var dns = require("dns")

sposób

Nie. Sposób i opis
1 dns.lookup (hostname [opcje], callback)
Nazwa domeny (np 'w3big.com ") postanowił znaleźć pierwszy rekord A (IPv4) lub AAAA (IPv6). Opcje parametrów mogą być obiektem lub jest liczbą całkowitą. Jeśli nie ma opcji, IP v4 i v6 adres może być. Jeśli opcje są liczbami całkowitymi, musi wynosić 4 lub 6.
2 dns.lookupService (adres, port, callback)
Użyj getnameinfo parsowania adresu przychodzącego i port dla nazwy domeny i usług.
3 dns.resolve (hostname [, rrtype], callback)
Nazwa domeny (takie jak "w3big.com") rozwiązane do rrtype tablicy określony typ rekordu.
4 dns.resolve4 (nazwa hosta, callback)
I dns.resolve () jest podobna, tylko zapytanie IPv4 (rekord). rozwiązuje adres IPv4 tablicy (na przykład ['74 .125.79.104 ", '74", '74 .125.79.105 .125.79.106 ']).
5 dns.resolve6 (nazwa hosta, callback)
I dns.resolve4 () jest podobna, tylko zapytania IPv6 (zapytań AAAA)
6 dns.resolveMx (nazwa hosta, callback)
I dns.resolve () jest podobna, tylko zapytanie wymiany poczty (rekord MX).
7 dns.resolveTxt (nazwa hosta, callback)
I dns.resolve () jest podobna, tylko dla zapytań tekstowych (rekordów TXT). Tekst odnosi się do tablicy 2-d rekordów. (Na przykład, [[ 'v = ip4 spf1: 0.0.0.0' '~ wszystkich "]]). Każdy blok zawiera sub-array rekordu TXT. W zależności od sytuacji, może być połączone ze sobą, mogą być także stosowane oddzielnie.
8 dns.resolveSrv (nazwa hosta, callback)
I dns.resolve () jest podobna, tylko obsługi zapytań rekord (rekordy SRV). adresy hosta jest dostępna tablica rekord SRV. Rekord SRV priorytet (priorytet), masy (wagi), port (port) oraz nazwisko (nazwa) (na przykład [{ 'priorytet' atrybuty: 10, "waga": 5, "port": 21223, 'name ':' service.example.com '}, ...)].
9 dns.resolveSoa (nazwa hosta, callback)
I dns.resolve () jest podobna, tylko rekord Urząd rekordów (rekord SOA).
10 dns.resolveNs (nazwa hosta, callback)
I dns.resolve () jest podobna, pyta tylko rekordy serwera nazw domen (rekordy NS). rozwiązuje szereg zapisów jest serwerem nazwa domeny (nazwa hosta może być używany) (na przykład [ 'ns1.example.com', 'ns2.example.com']).
11 dns.resolveCname (nazwa hosta, callback)
I dns.resolve () jest podobna, tylko zapisy kontrolę przeprowadzaną alias (rekord CNAME). Adresy jest tablicą zapisów aliasów hostname dostępnych (np ,, [ 'bar.example.com']).
12 dns.reverse (ip, callback)
Odwróć adresy resolve IP, nazwa domeny wskazuje na adres IP tablicy.
13 dns.getServers ()
Zwraca ciąg reprezentujący aktualne rozpoznać adres IP dla tablicy.
14 dns.setServers (serwery)
To określa zestaw adresów IP, co serwer rozdzielczości.

rrtypes

Poniżej znajduje się lista dns.resolve metoda () wartości prawidłowe rrtypes:

  • 'A' adres IPv4, domyślnie
  • 'AAAA' adres IPv6
  • 'MX' elektronicznej wymiany rekord
  • 'TXT' zapisy tekstowe
  • 'SRV' rekordy SRV
  • 'PTR' do wstecznego IP
  • 'NS' nazwa domeny serwera rekordy
  • 'CNAME' rekordu Alias
  • 'SOA' wartość początkowa rekordu autoryzacji

Kod błędu

Każde zapytanie DNS może zwrócić następujący kod błędu:

  • dns.NODATA : Brak reakcji danych.
  • dns.FORMERR : Zapytanie z nieprawidłowo.
  • dns.SERVFAIL : General Failure.
  • dns.NOTFOUND : Domena nie została znaleziona.
  • dns.NOTIMP : Żądana operacja nie zostanie wykonana.
  • dns.REFUSED : odmówił zapytania.
  • dns.BADQUERY : Zapytanie źle sformułowany.
  • dns.BADNAME : nazwa domeny jest zniekształcone.
  • dns.BADFAMILY : protokół adres nie obsługuje.
  • dns.BADRESP : Odpowiedz zniekształcone.
  • dns.CONNREFUSED : Nie można połączyć się z serwerem DNS.
  • dns.TIMEOUT : Limit czasu połączenia z serwerem DNS.
  • dns.EOF : koniec pliku.
  • dns.FILE : Błąd odczytu pliku.
  • dns.NOMEM : przepełnienie pamięci.
  • dns.DESTRUCTION : kanał jest zniszczona.
  • dns.BADSTR : error ciąg formatu.
  • dns.BADFLAGS : Nielegalna identyfikator.
  • dns.NONAME : podany host nie jest liczbą.
  • dns.BADHINTS : identyfikator Nielegalne podpowiedzi.
  • dns.NOTINITIALIZED : biblioteka C C-Ares nie została zainicjowana.
  • dns.LOADIPHLPAPI : Error loading Iphlpapi.dll.
  • dns.ADDRGETNETWORKPARAMS : Nie można znaleźć funkcję GetNetworkParams.
  • dns.CANCELLED : Anuluj zapytanie DNS.

Przykłady

Tworzenie main.js pliku, kod jest w następujący sposób:

var dns = require('dns');

dns.lookup('www.github.com', function onLookup(err, address, family) {
   console.log('ip 地址:', address);
   dns.reverse(address, function (err, hostnames) {
   if (err) {
      console.log(err.stack);
   }

   console.log('反向解析 ' + address + ': ' + JSON.stringify(hostnames));
});  
});

Ten kod jest wykonywany, wyniki przedstawiają się następująco:

address: 192.30.252.130
reverse for 192.30.252.130: ["github.com"]

Moduł narzędziem node.js Moduł narzędziem node.js