#!/usr/bin/env python
# coding: utf-8
# In[1]:
#/usr/bin/env python3
from telnetlib import Telnet
import re,time,datetime,os
from threading import Thread
import xlrd
# In[2]:
# 华为设备执行命令函数
def execute_hw(address):
account="csiaadmin"
password="qweR%9527"
tn = Telnet(address)
tn.read_until(b"Username:", timeout=None)
tn.write(account.encode()+b'\n')
tn.read_until(b"Password:", timeout=None)
tn.write(password.encode()+b'\n')
tn.write(b"sys"+b'\n')
tn.write(b"dhcp enable " + b'\n')
tn.write(b"dhcp snooping enable " + b'\n')
tn.write(b"port-group 1" + b'\n')
tn.write(b"group-member GigabitEthernet0/0/1 to GigabitEthernet0/0/48" + b'\n')
tn.write(b"dhcp snooping enable " + b'\n')
time.sleep(2)
tn.write(b"quit" + b'\n')
tn.write(b"quit" + b'\n')
tn.write(b"save" + b'\n')
tn.write(b"y" + b'\n')
time.sleep(2)
tn.write(b"quit" + b'\n')
tn.close()
print(address)
if __name__ == '__main__':
ff = open('jiaohuanji.txt', 'r')
for line in ff.readlines():
ipp = line.strip()
execute_hw(ipp)
ff.close()
写了一个特别简单的python代码,通过来Telnetlib模块来批量配置华为交换机,但是每次配置完最后一个交换机,就会弹出以下错误
Traceback (most recent call last):
File "C:/Users/Administrator/Desktop/xl/caiji/beifen/peizhi.py", line 56, in <module>
execute_hw(ipp)
File "C:/Users/Administrator/Desktop/xl/caiji/beifen/peizhi.py", line 30, in execute_hw
tn = Telnet(address)
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python38\lib\telnetlib.py", line 218, in __init__
self.open(host, port, timeout)
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python38\lib\telnetlib.py", line 235, in open
self.sock = socket.create_connection((host, port), timeout)
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python38\lib\socket.py", line 808, in create_connection
raise err
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python38\lib\socket.py", line 796, in create_connection
sock.connect(sa)
ConnectionRefusedError: [WinError 10061] 由于目标计算机积极拒绝,无法连接。