使用pythonping检查设备的连通性并记录可达设备(eNSP模拟器)

实验拓扑:

在这里插入图片描述

PC的IP地址和五台交换机的地址在同一网段,具体IP如图所示。现在保证直连网络能够通信,并且故意将SW4的接口shutdown掉,保证无法联通,作为对照的测试设备。

在PC上运行python代码,测试与五台交换机的连通性。

由于本次测试使用的是pythonping模块,这并不是python自带的模块,需要使用pip进行下载,具体命令:pip3 install pythonping。

python版本:python 3.9

实验代码:

#导入pythoning的模块
from pythonping import ping
#导入datetime模块来保存检查的日期
from datetime import datetime

#获取当前的日期和具体时间
now = datetime.now()
date = "%s-%s-%s" % (now.month, now.day, now.year)
time = "%s-%s-%s" % (now.hour, now.minute, now.second)

#打开存放五台交换机IP地址的文件
ip_list = open("ip_list.txt", "r")

#使用追加读写的方式创建一个以日期命名的文件,方便每日检查
f = open(date + ".txt", "a+")
#在文件中首先写入检查的具体时间
f.write("Time: " + time + "\n")

#通过for循环遍历每台设备的IP地址
for line in ip_list:
    ip = ip = line.strip()
    ping_result = ping(ip)
    #pythonping如果能够ping通,返回值内有Reply这个字符串,失败时则没有。我们可以通过这个不同来打印出最后的结果
    if "Reply" in str(ping_result):
        print(ip + " is reachable.")
        #将能够通信的IP地址写入文档中
        f.write(ip + "\n")
    else:
        print(ip + " is not reachable.")

ip_list.close()
f.close()

运行结果:

在这里插入图片描述
在编译器中运行,可以看到只有192.168.56.44的连通性出现了故障,和我们的实验环境符合。再继续看文件夹中创建的.txt文件:
在这里插入图片描述
打开.txt文件进行检查:
在这里插入图片描述
可以看到我们已经将能够ping通的设备输入了设备之中。

参考资料:《网络工程师的python之路》

已标记关键词 清除标记
相关推荐
©️2020 CSDN 皮肤主题: 精致技术 设计师:CSDN官方博客 返回首页