位置: 编程技术 - 正文

浅析Node.js:DNS模块的使用(浅析科学发展观的核心立场)

编辑:rootadmin

推荐整理分享浅析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时,结果如下:

结果如下:

浅析Node.js:DNS模块的使用(浅析科学发展观的核心立场)

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 record

callback函数有(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最新版)

免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

鄂ICP备2023003026号

网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

友情链接: 武汉网站建设 电脑维修 湖南楚通运网络