在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

利用Python腳本登錄到交換機(jī)并創(chuàng)建VLAN

網(wǎng)絡(luò)技術(shù)干貨圈 ? 來源:網(wǎng)絡(luò)技術(shù)干貨圈 ? 2024-08-12 17:59 ? 次閱讀

轉(zhuǎn)載請(qǐng)注明以下內(nèi)容:

來源:公眾號(hào)【網(wǎng)絡(luò)技術(shù)干貨圈】

作者:圈圈

ID:wljsghq

本文將詳細(xì)介紹如何利用Python腳本登錄到交換機(jī)并創(chuàng)建VLAN

環(huán)境準(zhǔn)備

硬件與軟件要求

硬件要求:一臺(tái)支持SSH的網(wǎng)絡(luò)交換機(jī)

軟件要求

Python 3.x

相關(guān)Python庫:paramiko、netmiko

Python庫安裝

在開始編寫腳本之前,需要安裝必要的Python庫。使用以下命令安裝:

pipinstallparamikonetmiko

了解交換機(jī)的基本操作

在登錄到交換機(jī)并創(chuàng)建VLAN之前,我們需要了解一些基本的交換機(jī)操作命令。這些命令通常通過SSH(Secure Shell)發(fā)送到交換機(jī)上執(zhí)行。以下是一些常見的交換機(jī)命令:

登錄交換機(jī):通過SSH使用用戶名和密碼登錄到交換機(jī)。

進(jìn)入全局配置模式:configure terminal

創(chuàng)建VLAN:vlan

命名VLAN:name

保存配置:write memory 或 copy running-config startup-config

使用Python腳本登錄交換機(jī)

使用Paramiko庫登錄交換機(jī)

paramiko是一個(gè)用于實(shí)現(xiàn)SSH協(xié)議的Python庫,可以用來遠(yuǎn)程連接交換機(jī)。以下是一個(gè)簡單的示例,展示如何使用paramiko登錄到交換機(jī):

importparamiko

defssh_connect(hostname,username,password):
#創(chuàng)建SSH客戶端對(duì)象
ssh=paramiko.SSHClient()
#自動(dòng)添加主機(jī)密鑰
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
#連接到交換機(jī)
ssh.connect(hostname,username=username,password=password)
returnssh

#示例用法
hostname='192.168.1.1'
username='admin'
password='password'

ssh=ssh_connect(hostname,username,password)
print("成功登錄到交換機(jī)")

使用Netmiko庫登錄交換機(jī)

netmiko是基于paramiko封裝的一個(gè)庫,專為網(wǎng)絡(luò)設(shè)備自動(dòng)化管理設(shè)計(jì),使用起來更為方便。以下是使用netmiko登錄到交換機(jī)的示例:

fromnetmikoimportConnectHandler

defnetmiko_connect(hostname,username,password,device_type='cisco_ios'):
#設(shè)備信息
device={
'device_type':device_type,
'host':hostname,
'username':username,
'password':password,
}
#連接到交換機(jī)
net_connect=ConnectHandler(**device)
returnnet_connect

#示例用法
hostname='192.168.1.1'
username='admin'
password='password'

net_connect=netmiko_connect(hostname,username,password)
print("成功登錄到交換機(jī)")

使用Python腳本創(chuàng)建VLAN

使用Paramiko創(chuàng)建VLAN

在成功登錄交換機(jī)后,可以使用paramiko發(fā)送命令創(chuàng)建VLAN。以下是一個(gè)完整的示例:

importparamiko
importtime

defssh_connect(hostname,username,password):
ssh=paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect(hostname,username=username,password=password)
returnssh

defcreate_vlan(ssh,vlan_id,vlan_name):
#打開一個(gè)交互式Shell會(huì)話
remote_conn=ssh.invoke_shell()
#進(jìn)入全局配置模式
remote_conn.send("configureterminal
")
time.sleep(1)
#創(chuàng)建VLAN
remote_conn.send(f"vlan{vlan_id}
")
time.sleep(1)
#命名VLAN
remote_conn.send(f"name{vlan_name}
")
time.sleep(1)
#退出配置模式
remote_conn.send("end
")
time.sleep(1)
#保存配置
remote_conn.send("writememory
")
time.sleep(1)
output=remote_conn.recv(65535).decode('utf-8')
returnoutput

#示例用法
hostname='192.168.1.1'
username='admin'
password='password'
vlan_id=10
vlan_name='Test_VLAN'

ssh=ssh_connect(hostname,username,password)
output=create_vlan(ssh,vlan_id,vlan_name)
print("VLAN創(chuàng)建成功")
print(output)

使用Netmiko創(chuàng)建VLAN

使用netmiko庫創(chuàng)建VLAN的代碼更為簡潔。以下是一個(gè)完整的示例:

fromnetmikoimportConnectHandler

defnetmiko_connect(hostname,username,password,device_type='cisco_ios'):
device={
'device_type':device_type,
'host':hostname,
'username':username,
'password':password,
}
net_connect=ConnectHandler(**device)
returnnet_connect

defcreate_vlan(net_connect,vlan_id,vlan_name):
commands=[
'configureterminal',
f'vlan{vlan_id}',
f'name{vlan_name}',
'end',
'writememory'
]
output=net_connect.send_config_set(commands)
returnoutput

#示例用法
hostname='192.168.1.1'
username='admin'
password='password'
vlan_id=10
vlan_name='Test_VLAN'

net_connect=netmiko_connect(hostname,username,password)
output=create_vlan(net_connect,vlan_id,vlan_name)
print("VLAN創(chuàng)建成功")
print(output)

腳本優(yōu)化與錯(cuò)誤處理

在實(shí)際應(yīng)用中,我們可能會(huì)遇到各種錯(cuò)誤和異常情況,例如登錄失敗、命令執(zhí)行失敗等。為了使腳本更加健壯,我們需要加入錯(cuò)誤處理機(jī)制。

使用Paramiko的錯(cuò)誤處理

以下是加入錯(cuò)誤處理后的paramiko腳本:

importparamiko
importtime

defssh_connect(hostname,username,password):
try:
ssh=paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect(hostname,username=username,password=password)
returnssh
exceptparamiko.AuthenticationException:
print("認(rèn)證失敗,請(qǐng)檢查用戶名和密碼。")
exceptparamiko.SSHExceptionassshException:
print(f"無法建立SSH連接:{sshException}")
exceptExceptionase:
print(f"出現(xiàn)錯(cuò)誤:{e}")

defcreate_vlan(ssh,vlan_id,vlan_name):
try:
remote_conn=ssh.invoke_shell()
remote_conn.send("configureterminal
")
time.sleep(1)
remote_conn.send(f"vlan{vlan_id}
")
time.sleep(1)
remote_conn.send(f"name{vlan_name}
")
time.sleep(1)
remote_conn.send("end
")
time.sleep(1)
remote_conn.send("writememory
")
time.sleep(1)
output=remote_conn.recv(65535).decode('utf-8')
returnoutput
exceptExceptionase:
print(f"創(chuàng)建VLAN時(shí)出錯(cuò):{e}")

#示例用法
hostname='192.168.1.1'
username='admin'
password='password'
vlan_id=10
vlan_name='Test_VLAN'

ssh=ssh_connect(hostname,username,password)
ifssh:
output=create_vlan(ssh,vlan_id,vlan_name)
ifoutput:
print("VLAN創(chuàng)建成功")
print(output)
ssh.close()

使用Netmiko的錯(cuò)誤處理

以下是加入錯(cuò)誤處理后的netmiko腳本:

fromnetmikoimportConnectHandler,NetMikoAuthenticationException,NetMikoTimeoutException

defnetmiko_connect(hostname,username,password,device_type='cisco_ios'):
device={
'device_type':device_type,
'host':hostname,
'username':username,
'password':password,
}
try:
net_connect=ConnectHandler(**device)
returnnet_connect
exceptNetMikoAuthenticationException:
print("認(rèn)證失敗,請(qǐng)檢查用戶名和密碼。")
exceptNetMikoTimeoutException:
print("連接超時(shí),請(qǐng)檢查交換機(jī)的網(wǎng)絡(luò)連接。")
exceptExceptionase:
print(f"出現(xiàn)錯(cuò)誤:{e}")

defcreate_vlan(net_connect,vlan_id,vlan_name):
try:
commands=[
'configureterminal',
f'vlan{vlan_id}',
f'name{vlan_name}',
'end',
'writememory'
]
output=net_connect.send_config_set(commands)
returnoutput
exceptExceptionase:
print(f"創(chuàng)建VLAN時(shí)出錯(cuò):{e}")

#示例用法
hostname='192.168.1.1'
username='admin'
password='password'
vlan_id=10
vlan_name='Test_V

LAN'

net_connect=netmiko_connect(hostname,username,password)
ifnet_connect:
output=create_vlan(net_connect,vlan_id,vlan_name)
ifoutput:
print("VLAN創(chuàng)建成功")
print(output)
net_connect.disconnect()

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 交換機(jī)
    +關(guān)注

    關(guān)注

    21

    文章

    2726

    瀏覽量

    101482
  • VLAN
    +關(guān)注

    關(guān)注

    1

    文章

    284

    瀏覽量

    36345
  • python
    +關(guān)注

    關(guān)注

    56

    文章

    4825

    瀏覽量

    86294
  • 腳本
    +關(guān)注

    關(guān)注

    1

    文章

    397

    瀏覽量

    28368

原文標(biāo)題:利用Python腳本怎么登錄到交換機(jī)并且創(chuàng)建VLAN?

文章出處:【微信號(hào):網(wǎng)絡(luò)技術(shù)干貨圈,微信公眾號(hào):網(wǎng)絡(luò)技術(shù)干貨圈】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    三層交換機(jī)VLAN路由的配置方法

    掌握vlan路由技術(shù)之三層交換機(jī)vlan路由的配置方法和結(jié)果驗(yàn)證。
    的頭像 發(fā)表于 12-15 11:11 ?4166次閱讀
    三層<b class='flag-5'>交換機(jī)</b><b class='flag-5'>VLAN</b>路由的配置方法

    使用paramiko在eNSP的交換機(jī)中批量創(chuàng)建VLAN

    cloud連接本機(jī),ip地址為192.168.56.1,五臺(tái)交換機(jī)的配置的地址為192.168.1.11~55。現(xiàn)在通過paramiko,ssh進(jìn)入五臺(tái)設(shè)備,并且在五臺(tái)設(shè)備上分別創(chuàng)建vlan10-vlan20這11個(gè)
    的頭像 發(fā)表于 01-20 17:52 ?2115次閱讀
    使用paramiko在eNSP的<b class='flag-5'>交換機(jī)</b>中批量<b class='flag-5'>創(chuàng)建</b><b class='flag-5'>VLAN</b>

    ISM交換機(jī)如何添加VLAN呢?

    兩臺(tái)交換機(jī)額直接,PC連接F1/1 VLAN100 。 兩臺(tái)交換機(jī)設(shè)置是一樣的,登錄交換機(jī)192.168.2.2 用戶名 adm 密碼 1
    發(fā)表于 07-25 07:55

    [分享]常見網(wǎng)絡(luò)交換機(jī)故障及應(yīng)用問答

    。通常,在VLAN結(jié)構(gòu)發(fā)生變化的交換機(jī)上才采用服務(wù)器方式傳輸信息。一般地,分配級(jí)或訪問級(jí)交換機(jī)都設(shè)置為“vtp client”,這樣它們便可以接收傳送這些信息,但并不主動(dòng)發(fā)送信息。如
    發(fā)表于 06-02 11:31

    華為路由器交換機(jī)VLAN配置實(shí)例

    華為路由器交換機(jī)VLAN配置實(shí)例[hide]華為路由器交換機(jī)VLAN配置實(shí)例使用4臺(tái)PC(pc多和少,原理是一樣的,所以這里我只用了4臺(tái)pc),華為路由器(R2621)、
    發(fā)表于 05-25 00:21

    交換機(jī)VLAN是如何實(shí)現(xiàn)的

    自動(dòng)設(shè)置對(duì)應(yīng)的VLAN ID。  5、基于用戶的VLAN  根據(jù)操作系統(tǒng)的登錄用戶決定VLAN。  6、Access接口和Trunk接口  交換機(jī)
    發(fā)表于 01-12 16:16

    交換機(jī)VLAN配置

    交換機(jī)VLAN配置
    發(fā)表于 12-27 16:49 ?0次下載

    二層交換機(jī)web配置教程

    啟動(dòng)WEB服務(wù) 配置交換機(jī)VLAN接口的IP地址,交換機(jī)與WEB網(wǎng)管終端間路由可達(dá)。配置欲登錄的WEB網(wǎng)管用戶名和認(rèn)證口令第一步:通過 Console口正確配置以太網(wǎng)
    發(fā)表于 03-06 11:06 ?2.6w次閱讀

    聊聊科地網(wǎng)管PoE交換機(jī)VLAN如何配置

    VLAN就是我們常說的虛擬局域網(wǎng)。VLAN是一種將局域網(wǎng)設(shè)備從邏輯上劃分成多個(gè)網(wǎng)段,從而實(shí)現(xiàn)虛擬工作組的數(shù)據(jù)交換技術(shù)。這一技術(shù)主要應(yīng)用于交換機(jī)和路由器中,但主流應(yīng)用還是在
    的頭像 發(fā)表于 12-11 16:29 ?9813次閱讀

    交換機(jī)劃分vlan的原因是什么

    有很多朋友就問到老胡vlan如何分配,這個(gè)是交換機(jī)在劃分網(wǎng)絡(luò)的時(shí)候會(huì)常用到,這里面我們就以最直接了解下,單獨(dú)對(duì)vlan基本操作,方便我們?nèi)粘L幚?b class='flag-5'>交換機(jī)配置,本期我們從
    發(fā)表于 08-18 15:44 ?2182次閱讀

    登錄網(wǎng)絡(luò)交換機(jī)的三種方法

    一般網(wǎng)絡(luò)交換機(jī)購買后就可以直接使用。那么,如果要配置VLAN或關(guān)閉端口,首先應(yīng)該知道如何訪問交換機(jī)。下面以FS 3900-24F4S交換機(jī)為例詳細(xì)說明三種常見的
    發(fā)表于 10-29 17:24 ?1.2w次閱讀
    <b class='flag-5'>登錄</b>網(wǎng)絡(luò)<b class='flag-5'>交換機(jī)</b>的三種方法

    python巡檢華為交換機(jī)

    SSH登錄到各個(gè)交換機(jī)收集軟件版本、CPU、內(nèi)存利用率和硬件狀態(tài)信息。
    的頭像 發(fā)表于 12-30 09:13 ?1901次閱讀

    如何配置交換機(jī)SSH遠(yuǎn)程登錄

    如何配置交換機(jī)SSH遠(yuǎn)程登錄,本期我們就來了解下ssh遠(yuǎn)程登陸的方式,以銳捷交換機(jī)為例。
    的頭像 發(fā)表于 08-02 09:35 ?4482次閱讀
    如何配置<b class='flag-5'>交換機(jī)</b>SSH遠(yuǎn)程<b class='flag-5'>登錄</b>?

    使用Python腳本備份華為交換機(jī)的配置信息

    在現(xiàn)代網(wǎng)絡(luò)管理中,備份交換機(jī)的配置信息是一項(xiàng)至關(guān)重要的任務(wù)。備份可以確保在交換機(jī)發(fā)生故障或配置錯(cuò)誤時(shí),能夠迅速恢復(fù)到之前的工作狀態(tài)。本文將詳細(xì)介紹如何使用Python腳本備份華為
    的頭像 發(fā)表于 08-12 17:50 ?1174次閱讀
    使用<b class='flag-5'>Python</b><b class='flag-5'>腳本</b>備份華為<b class='flag-5'>交換機(jī)</b>的配置信息

    VLAN 交換機(jī)與路由器的區(qū)別

    在現(xiàn)代網(wǎng)絡(luò)架構(gòu)中,VLAN交換機(jī)和路由器是構(gòu)建高效、安全網(wǎng)絡(luò)的基石。 VLAN交換機(jī) VLAN交換機(jī)
    的頭像 發(fā)表于 11-19 09:36 ?1098次閱讀
    主站蜘蛛池模板: 欧美性黑人极品1819hd | 开心丁香婷婷深爱五月 | 成人剧场| 四虎午夜剧场 | 天天干视频在线 | 97超在线| 四虎免费大片aⅴ入口 | 性欧美hd| 日本三级成人午夜视频网 | 麻豆国产一区二区在线观看 | 欧美在线视频免费播放 | 理论片免费午夜 | 亚洲五月综合缴情婷婷 | 欧美性色欧美a在线观看 | 天天草比| 伊人婷婷色香五月综合缴激情 | 91成人免费福利网站在线 | 色播在线视频 | 欧美第一网站 | 一级片免费在线播放 | 国产色综合天天综合网 | 97综合网 | 77se77亚洲欧美在线大屁股 | 四虎影院永久网站 | 一级女人毛片人一女人 | 好紧好爽太大了h视频 | 亚洲第一视频在线 | 亚洲婷婷六月 | 亚洲日本久久久午夜精品 | 午夜影院网站 | 天天摸夜班摸天天碰 | 免费观看四虎精品国产永久 | 亚洲欧洲国产精品你懂的 | 又色又污又爽又黄的网站 | 女人张腿让男桶免费视频观看 | 天堂在线国产 | 国产成人午夜片在线观看 | 深夜免费在线视频 | 丁香综合激情 | 国产午夜影院 | 午夜影院在线观看 |