位置: 编程技术 - 正文
推荐整理分享浅析Node.js:DNS模块的使用(浅析科学发展观的核心立场),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:浅析是什么意思,浅析我国国防现状,浅析是什么意思,浅析是什么意思,浅析我国国防现状,浅析和浅谈的区别论文,浅析新时代十年伟大变革的里程碑意义,浅析和浅谈的区别论文,内容如对您有帮助,希望把文章链接给更多的朋友!
Nodejs的DNS模块包涵有关DNS查询和操作的方法,下面介绍该模块的基本用法以及实现一个DNS查询小工具。
1.获取DNS服务器地址
使用getServers方法,该方法返回一个IP地址组成的数组,如下所示:
返回结果为:
[ '...', '8.8.8.8','fec0:0:0:ffff::1', '...','8.8.8.8', '...','8.8.8.8' ]
2.使用系统特性域名解析获取IP地址
使用dns.lookup(hostname[, options], callback)方法,options参数包涵以下属性:
family:地址协议族,必须为4或6的整数 hints:设置getaddrinfo的标志,dns.ADDRCONFIG 或者 dns.V4MAPPED(ipv4映射成ipv6) all:false(默认),布尔值,如设置为true,则返回IP数组,否则返回单个IP地址callback回调函数有三个参数(err,address,family),如果options的all属性设置为true,则只有(err,addresses)参数且addresses为一个数组,数组元素为{address,family}对象。使用如下所示:
结果如下:
E:developmentdocumentnodejsdemo>node dns-example.js百度网站的IP地址是:...地址协议族是:IPV4
设置options的all为true时,结果如下:
结果如下:
E:developmentdocumentnodejsdemo>node dns-example.js百度网站的IP地址1是:...百度网站的IP地址2是:...
3.根据IP和端口获取主机名
使用dns.lookupService(address, port, callback)方法,该方法依赖getnameinfo底层函数。callback函数有三个参数(err, hostname, service),service是protocol,为http或https,使用如下所示:
结果如下:
E:developmentdocumentnodejsdemo>node dns-example.js该IP对应的主机为:www.test.zmx.com 协议为:http
4.使用网络域名解析获取IP地址
使用dns.resolve(hostname[, rrtype], callback)方法,rrtype有以下选择:
'A':IPV4,default 'AAAA':IPV6 'MX' - mail exchange records 邮件交换记录 'TXT' - text records 域名配置说明 'SRV' - SRV records 服务器提供的服务 'PTR' - PTR records 'NS' - name server records 域名服务器 'CNAME' - canonical name records 别名记录 'SOA' - start of authority record 起始授权机构 'NAPTR' - name authority pointer recordcallback函数有(err, addresses)两个参数,addresses是一个数组,具体成员需要看具体的rrtype,使用如下所示:
resovle还存在很多快捷方法,例如:resolve4,resolve6,resolveCname...等等
5.反向域名解析
使用dns.reverse(ip, callback)方法,callback有两个参数(err, hostnames),hostnames是一个域名数组,使用如下所示:
学完了以上的知识后,可以做个DNS查询的小工具,如下所示:
第一步,写个HTML静态页面,如下:
接着编写服务端代码,如下:
运行效果如下:
到此这个小工具便完成了。
标签: 浅析科学发展观的核心立场
本文链接地址:https://www.jiuchutong.com/biancheng/374096.html 转载请保留说明!上一篇:全面解析node 表单的图片上传(node.js解析excel)
下一篇:node.js版本管理工具n无效的原理和解决方法(node.js最新版)
友情链接: 武汉网站建设