一,實(shí)現(xiàn)這個(gè)功能的前提:
二,將虛擬云接入到要實(shí)現(xiàn)巡檢的網(wǎng)絡(luò)內(nèi),將虛擬云連接自己主機(jī)的虛擬網(wǎng)卡。
根據(jù)上面的三張圖:
192.168.200.1 這個(gè)地址需要跟巡檢的設(shè)備連通
那么在網(wǎng)絡(luò)內(nèi)設(shè)置vlan 10,并在每個(gè)設(shè)備內(nèi)都設(shè)置一個(gè)vlan10的地址
解決了連通問(wèn)題后,
我們還要配置設(shè)備的遠(yuǎn)程登錄(每個(gè)設(shè)備都要):
dsa local-key-pair create//先根據(jù)加密算法生成秘鑰對(duì),用于傳輸數(shù)據(jù)時(shí)加密保護(hù),保存在交換機(jī)中但不保存在配置文件中
2048//#設(shè)置密鑰位數(shù)
客戶端登陸SSH server服務(wù)端后自動(dòng)獲得分配鑰匙
user-interfacevty04//進(jìn)入虛擬終端
authentication-modeaaa//配置口令模式
protocolinboundssh
quit
aaa
local-userhuaweipasswordcipherhw@123
local-userhuaweiprivilegelevel15
local-userhuaweiservice-typessh//當(dāng)通過(guò)password、password-dsa、passowrd-rsa認(rèn)證時(shí),需要在AAA視圖下創(chuàng)建同名本地用戶,并設(shè)置其服務(wù)類型和級(jí)別
quit
sshuserhuaweiauthentication-typepassword//創(chuàng)建SSH用戶并指定其登陸驗(yàn)證方式
sshuserhuaweiservice-typestelnet//設(shè)置SSH用戶服務(wù)類型
stelnetserverenable//打開(kāi)設(shè)備SSH(stelnet)服務(wù)端功能
之后最好用xshell或其他嘗試下遠(yuǎn)程登錄是否成功。
三,寫(xiě)python腳本
importparamiko
importtime
log\_time=time.strftime("\%Y-\%m-\%d\%H:\%M:\%S",time.localtime())
user=input("username:")
password=input("password:")
f=open("ip.txt","r")
forlineinf.readlines():
ip=line.strip()
ssh=paramiko.SSHClient()
ssh.set\_missing\_host\_key\_policy(paramiko.AutoAddPolicy())
ssh.connect(hostname=ip,username=user,password=password)//ssh遠(yuǎn)程登錄
print(log\_time+"成功連接交換機(jī),開(kāi)始巡檢"+ip)
command=ssh.invoke\_shell()//用于創(chuàng)建一個(gè)子shell進(jìn)程
command.send("system\n")
command.send("displayiprouting-table\n")
command.send("displaydevice\n")
command.send("displayenvironment\n")
command.send("displayalarmurgen\n")
command.send("displaymemory-usage\n")
command.send("displayversion\n")
command.send("displayfan\n")
f=open("check.txt","a")//這a代表寫(xiě)入,不能用w,w是直接疊加會(huì)將之前寫(xiě)入的數(shù)據(jù)清理。
time.sleep(2)
output=command.recv(65535)//返回結(jié)果字符為65535
result=output.decode("ascii")
f.write(result)
print(result)
f.close()
ssh.close()
這里的ip.txt
中每一行寫(xiě)入要巡檢設(shè)備的ip地址
check.txt是一個(gè)空白文件,給程序?qū)懭虢Y(jié)果數(shù)據(jù)。
審核編輯 :李倩
-
模塊
+關(guān)注
關(guān)注
7文章
2613瀏覽量
47019 -
python
+關(guān)注
關(guān)注
53文章
4753瀏覽量
84081 -
虛擬網(wǎng)卡
+關(guān)注
關(guān)注
0文章
5瀏覽量
1403
原文標(biāo)題:基于華為ensp使用python實(shí)現(xiàn)對(duì)交換機(jī)的巡檢,有源代碼!
文章出處:【微信號(hào):網(wǎng)絡(luò)技術(shù)干貨圈,微信公眾號(hào):網(wǎng)絡(luò)技術(shù)干貨圈】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論