python循环监控远程端口

建立网络通信连接至少要一对端口号(socket)。socket本质是编程接口(API),对TCP/IP的封装,TCP/IP也要提供可供程序员做网络开发所用的接口,这就是Socket编程接口;HTTP是轿车,提供了封装或者显示数据的具体形式;Socket是发动机,提供了网络通信的能力。

Python实现远程端口监控实例

在ip.txt中每行一个ip地址和端口号,代码可循环监控这些ip地址的指定端口是否正常

#!/usr/bin/envpython
#-*-coding:gbk-*-
importsocket,time
while1:
file_obj=open('ip.txt')
forlineinfile_obj:
try:
sc=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
ip=line.split()[0]
port=int(line.split()[1])
printip,port
#设置超时时间(0.0)
sc.settimeout(2)
sc.connect((ip,port))
timenow=time.localtime()
datenow=time.strftime('%Y-%m-%d%H:%M:%S',timenow)
logstr="%s:%s连接成功->%s\n"%(ip,port,datenow)
printlogstr
sc.close()
except:
file=open("log.txt","a")
timenow=time.localtime()
datenow=time.strftime('%Y-%m-%d%H:%M:%S',timenow)
logstr="%s:%s连接失败->%s\n"%(ip,port,datenow)
printlogstr
file.write(logstr)
file.close()
print"sleep10....."
time.sleep(10)
192.168.1.10033001
192.168.1.10133001

发表回复