實驗環(huán)境:
保證PC能分別和五臺交換機通信。五臺交換機的IP地址如圖上所示。
在五臺交換機的上配置SSH,后續(xù)在PC上通過paramiko進(jìn)行連接;
需要在PC上安裝TFTP服務(wù)器,完成配置文件的傳輸.
注:本實驗PC使用的操作系統(tǒng)為windows,python版本為3.9。
配置步驟:
1.配置保存:
在華為交換機上首先要進(jìn)行配置的保存。由于默認(rèn)華為交換機保存的配置文件名稱都為:vrpcfg.zip,我們可以使用dir命令在SW1上進(jìn)行查看:
這樣就會導(dǎo)致通過后面導(dǎo)出的配置文件會由于和前面導(dǎo)出的配置文件重名而將其覆蓋,同時也無法達(dá)到很好區(qū)分具體是哪個設(shè)備配置的目的,所以在保存的時候,我們需要在交換機上使用save sw1-config.zip(可以自己取名做區(qū)分)而不是直接save,這樣可以看到最后保存的配置文件的命名就可以做區(qū)分了:
本實驗其余四臺交換機配置的命名規(guī)則和SW1一樣,只是修改編號即可。
2.配置TFPT程序:
需要配置文件存放的路徑和TFTP服務(wù)器的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循環(huán)依次讀出每個交換機的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交換機的過程,當(dāng)完成連接后,則使用command的send()方法 #將保存的配置文件傳輸?shù)絫ftp服務(wù)器即可,服務(wù)器的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.查看運行結(jié)果:
編譯器運行結(jié)果:正常
在TFTP對應(yīng)文件夾上進(jìn)行查看:配置文件已經(jīng)全部導(dǎo)出到我們的PC中。
審核編輯:劉清
-
交換機
+關(guān)注
關(guān)注
21文章
2656瀏覽量
100180 -
TFTP
+關(guān)注
關(guān)注
0文章
21瀏覽量
14358 -
SSH
+關(guān)注
關(guān)注
0文章
189瀏覽量
16406 -
python
+關(guān)注
關(guān)注
56文章
4807瀏覽量
85040
原文標(biāo)題:使用python批量備份華為交換機配置文件(eNSP模擬器)
文章出處:【微信號:網(wǎng)絡(luò)技術(shù)干貨圈,微信公眾號:網(wǎng)絡(luò)技術(shù)干貨圈】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論