實驗環境:
保證PC能分別和五臺交換機通信。五臺交換機的IP地址如圖上所示。
在五臺交換機的上配置SSH,后續在PC上通過paramiko進行連接;
需要在PC上安裝TFTP服務器,完成配置文件的傳輸.
注:本實驗PC使用的操作系統為windows,python版本為3.9。
配置步驟:
1.配置保存:
在華為交換機上首先要進行配置的保存。由于默認華為交換機保存的配置文件名稱都為:vrpcfg.zip,我們可以使用dir命令在SW1上進行查看:
這樣就會導致通過后面導出的配置文件會由于和前面導出的配置文件重名而將其覆蓋,同時也無法達到很好區分具體是哪個設備配置的目的,所以在保存的時候,我們需要在交換機上使用save sw1-config.zip(可以自己取名做區分)而不是直接save,這樣可以看到最后保存的配置文件的命名就可以做區分了:
本實驗其余四臺交換機配置的命名規則和SW1一樣,只是修改編號即可。
2.配置TFPT程序:
需要配置文件存放的路徑和TFTP服務器的IP地址(保證能夠和交換機互相通信)。
3.代碼
importparamiko importtime fromgetpassimportgetpass username=input("Username:") password=getpass("Password:") #打開保存了5個IP地址的txt文件 ip_list=open("ip_list.txt","r") #通過tail_num變量記錄每個交換機的編號 tail_num=1 #通過for循環依次讀出每個交換機的IP地址 forlineinip_list.readlines(): ip=line.strip() ssh_client=paramiko.SSHClient() ssh_client.set_missing_host_key_policy(paramiko.AutoAddPolicy()) ssh_client.connect(hostname=ip,username=username,password=password) print("Youhavesuccessfullyconnectto"+ip) #前面的代碼是使用paramikoSSH交換機的過程,當完成連接后,則使用command的send()方法 #將保存的配置文件傳輸到tftp服務器即可,服務器的IP為192.168.56.1 command=ssh_client.invoke_shell() command.send("tftp192.168.56.1putsw"+str(tail_num)+"-config.zip ") time.sleep(3) output=command.recv(65535) print(output.decode("ascii")) #在連接下一個交換機之前,需要將交換機的編號加1 tail_num+=1 ip_list.close() ssh_client.close()
4.查看運行結果:
編譯器運行結果:正常
在TFTP對應文件夾上進行查看:配置文件已經全部導出到我們的PC中。
審核編輯:劉清
-
交換機
+關注
關注
21文章
2700瀏覽量
100940 -
TFTP
+關注
關注
0文章
22瀏覽量
14464 -
SSH
+關注
關注
0文章
192瀏覽量
16699 -
python
+關注
關注
56文章
4821瀏覽量
85779
原文標題:使用python批量備份華為交換機配置文件(eNSP模擬器)
文章出處:【微信號:網絡技術干貨圈,微信公眾號:網絡技術干貨圈】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
銳捷網絡交換機的配置命令集
如何通過Python腳本批量采集華為交換機配置
交換機最基本的配置與使用方法

評論