windows上,判断是否可以ping通
s_time = time.time()
cmd = "ping -n 3 -w 1 10.174.25.1"
flag = False
# 可以ping通网关的才是master,别的不起服务
while True:
exit_code = os.system(cmd)
if exit_code:
print("网络不通:10.174.255.253")
e_time = time.time()
if e_time - s_time > 60:
break
time.sleep(5)
else:
flag = True
break
在liunx上判断是够可以ping通:
@classmethod
def ping_ip(cls, ip, time_out=300):
import time
s_time = time.time()
cmd = "ping " + str(ip) + " -c 2"
while True:
exit_code = os.system(cmd)
if exit_code:
print("网络不通:%s" % ip)
e_time = time.time()
if e_time - s_time > time_out:
return False
time.sleep(5)
else:
return True