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"]
