python批量配置交换机
python批量配置交换机
1、新建一个文件夹,新建switch_list.txt文件
2、在txt文件中存入需要配置的交换机ip
3、在.py文件中配置以下代码
username与password项根据实际情况更改
tn.write处增加需要下发给交换机的命令
terminal length 0 #设置交换机输出内容不分页
最后可输出配置过程日志,或者show run导出交换机配置。文件默认导出在当前目录下
import telnetlib
import time
import os
# 配置Telnet连接信息
username = b'admin\n' # Telnet用户名,注意要使用字节串
password = b'Xhnetwork@123\n' # Telnet密码,注意要使用字节串
port = 23 # Telnet端口号
# 读取交换机列表
with open('switch_list.txt') as f:
switch_list = f.read().splitlines()
# 遍历交换机列表,备份配置文件
for switch_ip in switch_list:
print(f'正在备份交换机 {switch_ip} 的配置文件...')
# 建立Telnet连接
tn = telnetlib.Telnet(switch_ip, port=port, timeout=10)
# 登录
tn.read_until(b'>>User name:', timeout=5)
tn.write(username)
tn.read_until(b'>>User password:', timeout=5)
tn.write(password)
# 发送命令
tn.write(b'enable\n')
tn.write(password)
tn.write(b'ter len 0\n')
tn.write(b'show run\n')
time.sleep(5)
# 获取输出结果
output = tn.read_very_eager().decode('gbk')
# 关闭Telnet连接
tn.write(b'quit\n')
tn.close()
# 保存备份文件
filename = f'{switch_ip}配置.txt'
with open(filename, 'w') as f:
f.write(output)
print(f'交换机 {switch_ip} 的配置文件备份完成,保存为 {filename}。')
python
tn.write(b'show run\n')
#在交换机中写入show run文本, \n换行
with open('switch_list.txt') as f:
#获取switch_list.txt文件中的内容读取出来。 read是常用的读取文件操作
switch_list = f.read().splitlines()
output = tn.read_very_eager().decode('gbk')
#获取以上ptyhon执行的结果信息
评论
匿名评论
隐私政策
你无需删除空行,直接评论以获取最佳展示效果