随着管理的网络设备越来越多,手工逐台登录设备进行巡检,感觉力不从心,效率低。为提供工作效率,我们往往通过一些自动化的脚本去代替重复性的工作。今天,给大家带来一个福利,是一个通过python封装的自动登录网络设备执行命令的脚本。废话不多说,先来看看脚本大致的结构。
脚本分为两大部分,分别是Tenet方式和SSH方式登录。脚本通过封装两个类Telnettool和SSHtool
![0980277eeb66172d7134a9510ac2dcfe.png](https://i-blog.csdnimg.cn/blog_migrate/714733d6802e3c90453c7c473c25612f.jpeg)
![1a1593611323cae5972bc2051176a34d.png](https://i-blog.csdnimg.cn/blog_migrate/7a709028c6b123bb27668a4f94d2f529.jpeg)
脚本的使用方法
obj_telent = Telnettool('192.168.0.4','admin', 'admin123','admin123')
add = obj_telent.telnet_on(['display memory-usage','display interface brief'])
其Telnettool接收四个参数,第一个IP地址,第二个用户名,第三个密码,第四个是super密码。其中第四个参数是可选的,交换机设置了super密码就填上,没有就空着。
如果想把记录保存为文件可以调用savefile方法。如下:
obj_telent.savefile()
下面通过一个案例演示这个脚本如何使用
![5678bdab4e9a9172d9b0130c0b232660.png](https://i-blog.csdnimg.cn/blog_migrate/27aa0c531e91c54963f5d208fca11146.jpeg)
拓扑图中AR2配置telnet方式远程管理,用户名、密码和super密码分别是admin,admin123、admin123;LSW1配置ssh方式远程管理,用户名和密码和AR2一样。
采用此脚本去获取网络设备的对应信息,具体如下:
![fce98db0d763a3e2eaa196b62078af3a.png](https://i-blog.csdnimg.cn/blog_migrate/755e35df82553d917320fcc5c3aef7ab.jpeg)
通过执行如上代码,就可以自动去获取自己想要的信息,如果网络设备足够多,用此方法效率会更高。执行完后会生成对应的文件保存下来。
![07682707b2585c68b1f3be0c4ae515a1.png](https://i-blog.csdnimg.cn/blog_migrate/da4e2c69c1a9c1a7680d795e4abb773d.jpeg)
想要此脚本的小伙伴们,可以关注我的头条号转发并私聊我