使用Python获取DNS记录

本文介绍A记录和MX记录的基础知识及应用,通过Python代码演示如何获取指定网站的A记录和MX记录,实现域名到IP地址的映射及邮件服务器配置。
#   A记录也称为主机记录,是使用最广泛的DNS记录,A记录的基本作用就是说明一个域名对应的IP是多少, 它是域名和IP地址的对应关系,表现形式为 www.contoso.com 192.168.1.1 这就是一个A记录!A记录除了进行域名IP对应以外,还有一个高级用法,可以作为低成本的负载均衡的解决方案,比如说,www.contoso.com 可以创建多个A记录,对应多台物理服务器的IP地址,可以实现基本的流量均衡!)
#   MX记录,全称是邮件交换记录,在使用邮件服务器的时候,MX记录是无可或缺的,比如A用户向B用户发送一封邮件,那么他需要向DNS查询B的MX记录,DNS在定位到了B的MX记录后反馈给A用户,然后A用户把邮件投递到B用户的MX记录服务器里!
import dns.resolver     #导入DNS处理模块

dns_record = {}     #字典存储
website = input("input website:")   #获取输入

a_record = dns.resolver.resolve(website,'A')    # 获取网站的“A”记录并将其存储在字典中
for ip in a_record:
     dns_record['A_record_IP'] = ip.to_text()

mx_record_list = []     #列表存储 mx 记录
mx_record = dns.resolver.resolve(website,"MX")       # 获取网站的“MX”记录并将其存储在列表中
for server in mx_record:
    mx_record_list.append(server)
for i,element in enumerate(mx_record_list):
    dns_record["MX_record",i+1] = element

for key,value in dns_record.items():
    print(f"{key} = {value}")

参考:https://github.com/Python-World/python-mini-projects

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

carefree798

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值