Python|Python 通过telnet 备份网络设备的配置
本实验使用了telnetlib 库
一、拓扑
二、环境
Python 2、Cisco-Router、Kali-Linux
三、配置
!!脚本和IP地址文件都在同一个目录下
3.1、IP 地址
3.2、Python 备份脚本
#backup.py
import time
from telnetlib import Telnetdef tel(addr,user,pwd,secret):
tn = Telnet(addr)
tn.write(user+'\n')
tn.write(pwd+'\n')
tn.write('enable\n')
tn.write(secret+'\n')
tn.write('terminal length 0\n')#将show run的内容一次性全部显示完
time.sleep(1)
tn.write('show run\n')
time.sleep(1)
rsp = tn.expect([],timeout=1)[2]
return rspif __name__ == "__main__":
fp = open('./ip.txt','r')
for ip in fp:
print("backing up "+ip.strip())
conf = tel(ip.strip(),'cisco','cisco','cisco') #第一个cisco 是账户,第二个Cisco是密码,第三个Cisco是enable密码
print(ip.strip()+' was finished!')
print(conf)#这里是用于查看函数返回的内容,可以删除
fw = open(ip.strip(),'w')#每台主机的配置以IP地址为文件名,建议先使用OS模块创建一个目录,然后将所有配置放到目录下
fw.write(conf)
fw.close()
print('done!')
fp.close()
效果如下:
【Python|Python 通过telnet 备份网络设备的配置】转载于:https://blog.51cto.com/jackor/2134717
推荐阅读
- python学习之|python学习之 实现QQ自动发送消息
- 逻辑回归的理解与python示例
- python自定义封装带颜色的logging模块
- gitlab|gitlab 通过备份还原 admin/runner 500 Internal Server Error
- 【Leetcode/Python】001-Two|【Leetcode/Python】001-Two Sum
- Python基础|Python基础 - 练习1
- Python爬虫|Python爬虫 --- 1.4 正则表达式(re库)
- Python(pathlib模块)
- python青少年编程比赛_第十一届蓝桥杯大赛青少年创意编程组比赛细则
- Python数据分析(一)(Matplotlib使用)