一名爬虫工程师的运维入门之路:dnspython学习笔记

╰半夏微凉° 2022-03-02 07:54 257阅读 0赞
  • 你们是否跟我一样,不知道什么是DNS,在这里,首先普及一下什么是DNS
    DNS(Domain Name System,域名系统),万维网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。通过域名,最终得到该域名对应的IP地址的过程叫做域名解析(或主机名解析)。DNS协议运行在UDP协议之上,使用端口号53。在RFC文档中RFC 2181对DNS有规范说明,RFC 2136对DNS的动态更新进行说明,RFC 2308对DNS查询的反向缓存进行说明。
  • dnspython模块简介

    1. dnspythonPython实现的一个DNS工具包,它支持几乎所有的记录类型,可用于查询、传输并动态更新ZONE信息,同时支持TSIG验证信息和EDNS0。在系统管理方面,我们可以利用它的查询功能来实现DNS服务监控及解析结果的校验,可以代替nslookupdig工具。

    2.方法:

  • A:查询域名的IP源码:

    1. domain = input('请输入域名地址:')
    2. A = dns.resolver.query(domain, 'A')
    3. for i in A.response.answer:
    4. for j in i.items:
    5. print(j.address)
  • MX:邮件交换记录,定义邮件服务器的域名源码:

    1. domain = input('请输入域名地址:')
    2. MX = dns.resolver.query(domain, 'MX')
    3. for i in MX:
    4. print('MX preference=', i.preference, 'mail exchanger=', i.exchange)
  • NS:标记区域的域名服务器及授权子域

    1. print(dns.resolver.query('baidu.com'), 'NS')
  • CNAME:别名记录,实现域名间的映射(方法同上)
  • PTR:反向解析,与A相反,将IP转化为域名(方法同上)
  • SOA:SOA标记,一个起始授权区的定义(方法同上)

发表评论

表情:
评论列表 (有 0 条评论,257人围观)

还没有评论,来说两句吧...

相关阅读

    相关 监控

    概述 这是监控告警产品专题系列第一篇文章,涉及的主要内容为监控产品设计的一些相关基础知识,算是这个系列文章的一个索引。该篇会主要涉及到以下主要内容 后续三篇文章讲