python-dnspython模块
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python-dnspython模块相关的知识,希望对你有一定的参考价值。
dnspython是Python实现的一个DNS工具包,它支持几乎所有的记录类型,可用于查询、传输并动态更新ZONE信息,同时支持TSIG验证信息和EDNS0。在系统管理方面,我们可以利用它的查询功能来实现DNS服务监控及解析结果的校验,可以代替nslookup和dig工具。
首先安装dnspython模块
dnspython模块提供了大量的DNS处理方法,最常用的方法是域名查询。它提供了一个DNS解析器类(resolver),使用这个类的query方法来实现域名的查询功能。query方法的定义:
query(self,qname,rdtype=1,rdclass=1,tcp=False,source=None,raise_on_no_answer=True,source_port=0)
其中,qname参数为查询的域名。rdtype参数用来指定RR资源的类型,常用的类型如下:
1>:A记录,将主机名转换成IP地址
2>:MX记录,邮件交换记录,定义邮件服务器的域名
3>:CNAME记录,别名记录,实现域名间的映射
4>:NS记录,标记区域的域名服务器及授权子域
5>:PTR记录,反向解析,与A记录相反,将IP地址转换成主机名
6>:SOA记录,SOA标记,一个起始授权区的定义。
rdclass参数用于指定网络类型,可选的值有IN、CH与HS,其中IN为默认。tcp参数用于指定查询是否启用TCP协议,默认为不启用。source与source_port参数作为指定查询源地址与端口,默认值为查询设备IP和0。raise_on_no_answer参数用于指定当查询无应答时是否触发异常,默认为True。
1、A记录的查询方法
2、MX记录的查询方法
3、NS记录的查询方法
4、CNAME记录的查询方法
以上是关于python-dnspython模块的主要内容,如果未能解决你的问题,请参考以下文章