Latest web development tutorials

Node.js modul DNS

Node.js modul DNS

modul alat Node.js modul alat Node.js

Node.js modul DNS digunakan untuk menyelesaikan nama domain.Pengenalan sintaks modul DNS adalah sebagai berikut:

var dns = require("dns")

cara

Tidak. Metode & deskripsi
1 dns.lookup (hostname [Opsi], callback)
Nama domain (misalnya 'w3big.com') memutuskan untuk menemukan rekaman pertama A (IPv4) atau AAAA (IPv6). Pilihan parameter bisa menjadi objek atau integer. Jika tidak ada pilihan, IP v4 dan v6 alamat bisa. Jika pilihannya adalah bilangan bulat, itu harus 4 atau 6.
2 dns.lookupService (alamat, pelabuhan, callback)
Gunakan getnameinfo parsing alamat masuk dan port untuk nama dan layanan domain.
3 Dns.Resolve (hostname [, rrtype], callback)
Sebuah nama domain (seperti 'w3big.com') memutuskan untuk sebuah rrtype array yang ditentukan tipe record.
4 dns.resolve4 (hostname, callback)
Dan Dns.Resolve () mirip, hanya query IPv4 (A record). alamat alamat IPv4 dari array (misalnya, ['74 .125.79.104 ', '74 .125.79.105', '74 .125.79.106 ']).
5 dns.resolve6 (hostname, callback)
Dan dns.resolve4 () mirip, hanya query IPv6 (query AAAA)
6 dns.resolveMx (hostname, callback)
Dan Dns.Resolve () mirip, hanya pertukaran surat permintaan (MX record).
7 dns.resolveTxt (hostname, callback)
Dan Dns.Resolve () adalah sama, hanya untuk query teks (TXT catatan). teks membahas 2-d array catatan. (Sebagai contoh, [[ 'v = spf1 ip4: 0.0.0.0', '~ semua']]). Setiap blok sub-array berisi catatan TXT. Tergantung pada situasi dapat dihubungkan bersama-sama, mereka juga dapat digunakan secara terpisah.
8 dns.resolveSrv (hostname, callback)
Dan Dns.Resolve () mirip, hanya melayani record query (catatan SRV). alamat hostname tersedia catatan SRV berbagai. SRV record atribut prioritas (prioritas), berat badan (berat badan), pelabuhan (port), dan nama (nama) (misalnya, [{ 'prioritas': 10, 'berat': 5, 'port': 21223, 'nama ':' service.example.com '}, ...]).
9 dns.resolveSoa (hostname, callback)
Dan Dns.Resolve () mirip, hanya query Authority record (SOA record).
10 dns.resolveNs (hostname, callback)
Dan Dns.Resolve () mirip, hanya menanyakan data domain name server (NS record). alamat array rekaman adalah server nama domain (hostname dapat digunakan) (misalnya, [ 'ns1.example.com', 'ns2.example.com']).
11 dns.resolveCname (hostname, callback)
Dan Dns.Resolve () mirip, hanya catatan cek dilakukan alias (CNAME). alamat adalah array dari catatan hostname alias tersedia (misalnya ,, [ 'bar.example.com']).
12 dns.reverse (ip, callback)
alamat tekad IP terbalik, nama domain menunjuk ke alamat IP dari array.
13 dns.getServers ()
Mengembalikan string yang mewakili tekad saat alamat IP untuk array.
14 dns.setServers (server)
Ini menentukan satu set alamat IP sebagai server resolusi.

rrtypes

Berikut ini adalah metode daftar Dns.Resolve () nilai rrtypes valid:

  • 'A' alamat IPv4, standar
  • 'AAAA' alamat IPv6
  • 'MX' record mail exchange
  • 'TXT' catatan teks
  • 'SRV' catatan SRV
  • 'PTR' untuk IP reverse lookup
  • 'NS' catatan nama domain server
  • 'CNAME' record alias
  • 'SOA' nilai awal dari catatan otorisasi

kode kesalahan

Setiap query DNS dapat kembali kode kesalahan berikut:

  • dns.NODATA : Tidak ada respon data.
  • dns.FORMERR : Query salah bentuk.
  • dns.SERVFAIL : Kegagalan Umum.
  • dns.NOTFOUND : Domain tidak ditemukan.
  • dns.NOTIMP : Operasi diminta tidak diterapkan.
  • dns.REFUSED : menolak permintaan.
  • dns.BADQUERY : Permintaan salah bentuk.
  • dns.BADNAME : nama domain adalah cacat.
  • dns.BADFAMILY : protokol alamat tidak mendukung.
  • dns.BADRESP : Balas cacat.
  • dns.CONNREFUSED : Tidak dapat terhubung ke server DNS.
  • dns.TIMEOUT : koneksi server DNS timeout.
  • dns.EOF : akhir file.
  • dns.FILE : Kesalahan membaca berkas.
  • dns.NOMEM : overflow memori.
  • dns.DESTRUCTION : channel hancur.
  • dns.BADSTR : Format string kesalahan.
  • dns.BADFLAGS : identifier ilegal.
  • dns.NONAME : diberikan tuan rumah bukan angka.
  • dns.BADHINTS : PETUNJUK Illegal identifier.
  • dns.NOTINITIALIZED : C C-Ares perpustakaan tidak diinisialisasi.
  • dns.LOADIPHLPAPI : Kesalahan memuat iphlpapi.dll.
  • dns.ADDRGETNETWORKPARAMS : Tidak dapat menemukan fungsi GetNetworkParams.
  • dns.CANCELLED : Batalkan permintaan DNS.

contoh

Membuat file main.js, kode tersebut adalah sebagai berikut:

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));
});  
});

Kode di atas dijalankan, hasilnya adalah sebagai berikut:

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

modul alat Node.js modul alat Node.js