DNSモジュールのNode.js
DNSモジュールのNode.js
DNSモジュールNode.jsのドメイン名を解決するために使用されます。 次のようにDNSモジュール構文の導入は、次のとおりです。
var dns = require("dns")
ウェイ
いいえ。 | メソッドと説明 |
---|---|
1 | dns.lookup(ホスト名[、オプション]、コールバック) ドメイン名(例えば「w3big.com ')最初のレコードA(IPV4)またはAAAA(IPv6)を見つけることを決議しました。 パラメータのオプションは、オブジェクトまたは整数を指定できます。 オプションを指定しない場合は、IP V4とV6アドレスをすることができます。 オプションが整数である場合、それは4または6でなければなりません。 |
2 | dns.lookupService(アドレス、ポート、コールバック) ドメイン名およびサービスについての着信アドレスとポートを解析getnameinfoを使用してください。 |
3 | dns.resolve(ホスト名[、rrtype]、コールバック) ドメイン名(たとえば 'w3big.com」など)レコード型を指定された配列rrtypeに解決。 |
4 | dns.resolve4(ホスト名、コールバック) そしてdns.resolve()は似ている、唯一のクエリはIPv4(レコード)。 配列のアドレスはIPv4アドレス(例えば、['74 .125.79.104 '、'74 .125.79.105'、'74 .125.79.106 '])。 |
5 | dns.resolve6(ホスト名、コールバック) そして、dns.resolve4は()のみクエリのIPv6(AAAAクエリ)、似ています |
6 | dns.resolveMx(ホスト名、コールバック) そして、dns.resolveは()同様の、唯一のクエリのメール交換(MXレコード)です。 |
7 | dns.resolveTxt(ホスト名、コールバック) そして、dns.resolve()は、テキストのみのクエリ(TXTレコード)のために、類似しています。 テキストは、レコードの2次元配列に対応しています。 (たとえば、[[ 'V = spf1レコードのIP4:0.0.0.0'、 '〜すべての']])。 各サブアレイブロックは、TXTレコードが含まれています。 一緒に連結することができる状況に応じて、それらは、別々に使用することができます。 |
8 | dns.resolveSrv(ホスト名、コールバック) そしてdns.resolve()は似ている、唯一のサービスを提供するレコードクエリ(SRVレコード)。 アドレスのホスト名が使用可能なSRVレコードの配列です。 「体重」、10:5、「ポート」:SRVレコードは優先度(優先度)、重量(体重)、ポート(ポート)、名前(名)(例えば、[{ '優先'を属性21223、 "名前':' service.example.com '}、...])。 |
9 | dns.resolveSoa(ホスト名、コールバック) そして、dns.resolve()は似ている、唯一のクエリオーソリティレコード(SOAレコード)。 |
10 | dns.resolveNs(ホスト名、コールバック) そしてdns.resolve()は似ている、唯一のドメインネームサーバレコード(NSレコード)が照会します。 レコードの配列は、ドメイン・ネーム・サーバー(ホスト名を使用することができる)(例えば、[ 'ns1.example.com'、 'ns2.example.com'])で対処します。 |
11 | dns.resolveCname(ホスト名、コールバック) そしてdns.resolve()は似ている、唯一のレコードが行わエイリアス(CNAMEレコード)を確認します。 アドレスが利用可能なレコードのホスト名のエイリアスの配列である(例えば,, [ 'bar.example.com'])。 |
12 | dns.reverse(IP、コールバック) 逆解決IPアドレスは、ドメイン名は、アレイのIPアドレスを指します。 |
13 | dns.getServers() アレイの現在の解決のIPアドレスを表す文字列を返します。 |
14 | dns.setServers(サーバー) これは、解決サーバとしてIPアドレスのセットを指定します。 |
rrtypes
以下のリストdns.resolve()メソッドの有効なrrtypes値です:
-
'A'
IPV4アドレス、デフォルト -
'AAAA'
IPv6アドレス -
'MX'
のメール交換レコード -
'TXT'
テキストレコード -
'SRV'
SRVレコード -
'PTR'
、逆IPルックアップのための -
'NS'
ドメインのネームサーバーレコード -
'CNAME'
エイリアスレコード -
'SOA'
の許可レコードの初期値
エラーコード
各DNSクエリが次のエラーコードを返すことがあります。
-
dns.NODATA
:データなし応答。 -
dns.FORMERR
:クエリ不正な。 -
dns.SERVFAIL
:一般的な失敗。 -
dns.NOTFOUND
:ドメインが見つかりません。 -
dns.NOTIMP
:要求された操作が実装されていません。 -
dns.REFUSED
:クエリを拒否しました。 -
dns.BADQUERY
:不正を照会します。 -
dns.BADNAME
:ドメイン名が不正な形式です。 -
dns.BADFAMILY
:アドレスプロトコルがサポートされていません。 -
dns.BADRESP
:不正な返信。 -
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 C-アレスライブラリが初期化されませんでした。 -
dns.LOADIPHLPAPI
:読み込みエラーのIphlpapi.dll。 -
dns.ADDRGETNETWORKPARAMS
:GetNetworkParams機能を見つけることができません。 -
dns.CANCELLED
:DNSクエリをキャンセルします。
例
main.jsファイルのファイルを作成し、以下のように、コードは次のとおりです。
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)); }); });
上記のコードは次のように結果は、実行されます。
address: 192.30.252.130 reverse for 192.30.252.130: ["github.com"]