python检查MX地址和Telnet端口
这里有个问题要注意pip install dnspython这个要注意版本,我们的生产环境是python2.7,生产的我就不安装python3了,所以Python2.7安装要指定版本pip install dnspython==1.16.0官方网站https://pypi.org/project/dnspython/1.16.0/然后就是这个方法老版的可以用query,新版就是dns.resolv
·
这里有个问题要注意
pip install dnspython
这个要注意版本,我们的生产环境是python2.7,生产的我就不安装python3了,所以Python2.7安装要指定版本
pip install dnspython==1.16.0
官方网站
https://pypi.org/project/dnspython/1.16.0/
然后就是这个方法
老版的可以用query,新版就是dns.resolver.resolve()
resultMX = dns.resolver.query(‘fuck.com’, ‘MX’)
#!/usr/bin/python
import telnetlib
import dns.resolver
'''
下面是测试代码
'''
# try:
# resultMX = dns.resolver.query('fuck.com', 'MX')
# for exdata in resultMX:
# res = exdata.to_text()
# av = res.split(' ')
# print(av)
# except:
# print('error domain')
#
# try:
# server = telnetlib.Telnet('fuck.com', 25,timeout=5)
# except:
# print('could not connect server')
def getMXvalue(domain):
try:
resultMX = dns.resolver.query(domain, 'MX')
for exdata in resultMX:
res = exdata.to_text()
av = res.split(' ')
return 1, av[1]
except:
return 0, domain
with open('domain_name.txt', 'r') as file_object:
lines = file_object.readlines()
for line in lines:
new_line = line.strip('\n')
ret = getMXvalue(new_line)
list_ret = list(ret)
if list_ret[0] == 1:
try:
server = telnetlib.Telnet(list_ret[1], 25, timeout=5)
server.open(list_ret[1], 25)
print('domain %s port 25 connected ok' % list_ret[1])
except:
print('domain %s port 25 connect time out' % list_ret[1])
finally:
server.close()
else:
print('mx does not exist %s' % list_ret[1])
更多推荐



所有评论(0)