DNS模块详解
2016-04-10 本文已影响68人
nummycode
版权所有,如需转载,请联系作者
DNS模块用于解析IP地址或者域名。
常用方法如下:
- resolve
- lookup
- reverse
resolve
查询某个域名的IP地址,例如
var dns = require("dns");
dns.resolve("www.baidu.com", "A", function(e,r){
if (e){
console.log(e);
}
console.log(r);
});
结果如下:
[ '14.215.177.37' ]
lookup
resolve()方法通常返回一个包含多个IP地址的列表,如果只想返回一个IP地址,可以使用lookup方法。lookup方法有三个参数:域名,IP类型(4或6)和回调函数。
var dns = require("dns");
dns.loopup("www.baidu.com", 4, function(e,r){
if (e){
console.log(e);
}
console.log(r);
});
// 返回14.215.177.38
reverse
反向解析IP地址,获取域名数组
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"]