python---dnspython

  dnspython 是Python实现的一个DNS工具包,支持几乎所有的记录类型,可以用于查询,传输并动态更新ZONE信息,同时支持TSIG(事务签名)验证消息和EDNS0(扩展DNS)。可以替代nslookup,dig等工具。

#pip安装
pip3 install dnspython
#最新版本v1.15.0

模块域名解析方法详解

  dnspython提供了大量的DNS处理方法,最常用的是域名查询。

  dnspython提供了一个DNS解析器类------resolver,使用它的 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记录,邮件交换记录,定义邮件服务器域名

    CNAME记录,别名记录,实现域名间的映射

    NS记录,标记区域的域名服务器及授权子域

    PTR记录,反向解析,与A记录相反,将IP转换为主机名

    SOA记录,一个起始授权区的定义

  rdclass 用来指定网络类型,如IN,CH,HS,IN为默认

  tcp 指定查询是否启用TCP协议,默认False(不启用)

  source,source_port 指定查询源地址与端口

  raise_on_no_answer 查询无应答是否触发异常

常见解析类型示例脚本

A记录

#!/usr/bin/env python
# -*- coding:utf-8 -*-
#Author: ccoo2

import dns.resolver
# domain = input("请输入域名地址: ")
domain = ‘www.baidu.com‘
A = dns.resolver.query(domain,‘A‘)
for i in A.response.answer:
    # print(i)
    for j in i.items:
        print(j)

MX记录

时间: 2024-11-05 16:16:17

python---dnspython的相关文章

python dnspython模块 运维自动化

Dnspython模块 1.模块域名解析方法 A记录,主机名转换成IP地址 MX记录,邮件交换记录,定义邮件服务器的域名 CNAME记录,别名记录,实现域名间的映射 NS记录,标记区域的域名服务器及授权子域 PTR记录,反向解析,与A记录相反,将IP转换成主机名 SOA记录,SOA标记,一个起始授权区的定义 2.常见解析类型示例说明 实现A记录的查询方法 import dns.resolver domain = raw_input('Please input an domain:') A = d

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

DNS处理模块dnspython     dnspython是python实现的一个DNS工具包,它支持几乎所有的记录类型,可以用于查询.传输并动态更新ZONE信息,同时支持TSIG(事务签名)验证消息和EDNS0(扩展DNS). 在系统管理方面,我们可以利用其查询功能来实现DNS服务监控以及解析结果的校验,可以替代nslookup和dig等工具,轻松做到与现有平台的整合.     下载dnspython模块 [[email protected] ~]# python3 -m easy_inst

python -- DNS处理模块dnspython

简介 dnspython – 是python实现的一个DNS工具包,利用其查询功能来实现dns的服务监控及解析结果的校验 安装dnspython pip install dnspython 使用 常见的DNS解析类型包括A.MX.NS.CNAME (1)A记录的查询,实例如下: import dns.resolver domain = raw_input('Please input an domain: ') A = dns.resolver.query(domain, 'A') for i i

Python DNS 处理模块 dnspython

Python DNS 处理模块 dnspython 以下列举了DNSPython模块中常用方法,借鉴于书籍<Python 自动化运维:技术与最佳实践> dnspython提供大量关于DNS的处理方法,最常用的是域名查询.dnspython提供了一个DNS解析类resolver,使用它的query方法来实现域名的查询功能. query(self, qname, rdtype = 1, rdclass = 1, tcp = False, source = None, raise_on_no_ans

DNS处理模块dnspython

http://www.dnspython.org/kits/1.9.4/ python setup.py install A记录查询 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 MX记录 #!/usr/bin/en

Building Python 2.7.10 with Visual Studio 2010 or 2015 - Google Chrome

您的浏览器(Chrome 33) 需要更新.该浏览器有诸多安全漏洞,无法显示本网站的所有功能.?了解如何更新浏览器 × p-nand-q.com C++? Python? Programming? Languages? Humor? Tools? Misc? Building Python 2.7.10 with Visual Studio 2010 or 2015 7th revision, August 7, 2015.A document history can be found at t

python管理DNS

DNS    检测 NS     对应DNS服务器 SOA    授权哪个服务器可以作为dns服务器 MX     mailexchange 邮件交换记录 A      address CNAME  别名 TXT PTR    反向解析 /etc/hosts 先往根域查找,再往.com域查找,  客户端发起请求,递归 服务器之间是迭代 .根域 递归 迭代 dnsmasq  服务 tcp  不安全网址 udp cp -rp  权限 host   ns.example.com nsupdate ho

python安装第三方包之后无法导入相应模块(一个容易忽略的bug)

今天使用dnspython这个第三方库用于指定nameserver的dns解析,在安装之后import dns.resolver时提示找不到模块resolver,检查c:\python27\Lib\site-packages这个目录也找到了成功安装后的dns库,查看系统的搜索路径中也有这个路径. 找了半天bug,发现问题出在文件名上:文件名就叫dns.py,而python默认的模块搜索顺序是本地目录优先的,于是当然找不到resolver模块了..

dnspython模块安装

首先,先切换权限,切换到管理员权限: sudo -s 本文是在干净的ubuntu14,04上源码安装: wget  http://www.dnspython.org/kits/1.12.0/dnspython-1.12.0.tar.gz tar -zxvf dnspython-1.12.0.tar.gz cd dnspython-1.12.0 python setup.py install

Python 安全类目推荐 (持续更新)

推荐学习书目 › Learn Python the Hard Way › Python 学习手册 › Python Cookbook › Python 基础教程 Python Sites › PyPI - Python Package Index › http://www.simple-is-better.com/ › http://diveintopython.org/toc/index.html › Pocoo › Awesome Python 安全开发最常用的开发库,建议每个人都能熟练使用