python检测主机状态

2023-01-31 02:01:28 状态 主机 检测

#!/usr/bin/python

import dns.resolver, os, Httplib

iplist = []
appdomain = "cdsendmail.ecwise.com"

def checkip(ip):
checkurl = ip + ":80"
getcontent = ""
httplib.Socket.setdefaulttimeout(5)
conn = httplib.HTTPConnection(checkurl)

    try:
            conn.request("GET","/",headers = {"host": appdomain})
            r = conn.getresponse()
            getcontent = r.read(15)
            print(getcontent)
    finally:
            if getcontent == "<!DOCTYPE html ":
                    print ip + " [OK]"
            else:
                    print ip + " [error]"

def getip(domain):
try:
a = dns.resolver.query(domain, 'A')
except Exception as E:
print "dns resolve error"+str(E)
return 0
for i in a.response.answer:
for j in i.items:
iplist.append(j.address)
print iplist
return True

if name == "main":
if getip(appdomain) and len(iplist) > 0:
for ip in iplist:
checkip(ip)
else:
print "dns resolve error!"

相关文章