dns处理模块dnspython

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了dns处理模块dnspython相关的知识,希望对你有一定的参考价值。

环境说明:linux系统 python 2.6.6



安装:

wget https://pypi.python.org/packages/b3/e3/091c6489f0b573b8a4069ce956d037061ae9321401c89323386fe748dc9f/dnspython-1.12.0.zip

unzip dnspython-1.12.0.zip 

cd dnspython-1.12.0

python setup.py install



导入模块是:

import dns.resolver


dnsPython模块提供了大量的dns处理方法,最常见的是域名查询,dnsPython提供一个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的资源的类型,常用的有以下几种


A记录将主机名转化为IP。
MX记录邮件交换记录,定义邮件服务器域名。
CHAME记录指别名记录实现域名间的映射。
NS记录标记区域的域名服务器以及授权子域。
PTR记录反向解析,与A记录相反,将IP转化成主机名。
SOA记录SOA标记,一个起始授权区定义。


实现A记录例子:

#!/usr/bin/env python
#-*- coding:utf-8 -*-
# 2017,8,24

import dns.resolver

domain = raw_input(‘Please input an domain:‘)

A = dns.resolver.query(domain,‘A‘)

for i in A.response.answer:
        for j in i.items:
                print j.address


执行结果:以QQ为例子:

[[email protected] dns]# python simple1.py 
Please input an domain:www.qq.com
61.135.157.156
125.39.240.113
[[email protected] dns]#


本文出自 “天道酬勤” 博客,谢绝转载!

以上是关于dns处理模块dnspython的主要内容,如果未能解决你的问题,请参考以下文章

DNS处理模块dnspython

python -- DNS处理模块dnspython

Python学习笔记-DNS处理模块dnspython

dns处理模块dnspython

DNS模块dnspython应用及业务监控示例

Python自动化运维:DNS域名轮循业务监控(IP地址处理模块IPy和DNS处理模块dnspython)