您好,登錄后才能下訂單哦!
這篇文章給大家介紹netmiko模塊如何在Python中使用,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。
一、簡介
此模塊用于簡化paramiko與網絡設備之間的ssh連接,可在windows與Unix平臺使用
二、目前支持的設備
(2019.03.07)
Regularly tested Arista vEOS Cisco ASA Cisco IOS Cisco IOS-XE Cisco IOS-XR Cisco NX-OS Cisco SG300 HP Comware7 HP ProCurve Juniper Junos Linux Limited testing Alcatel AOS6/AOS8 Apresia Systems AEOS Calix B6 Cisco AireOS (Wireless LAN Controllers) Dell OS9 (Force10) Dell OS10 Dell PowerConnect Extreme ERS (Avaya) Extreme VSP (Avaya) Extreme VDX (Brocade) Extreme MLX/NetIron (Brocade/Foundry) Huawei IP Infusion OcNOS Mellanox NetApp cDOT OneAccess Palo Alto PAN-OS Pluribus Ruckus ICX/FastIron Ubiquiti EdgeSwitch Vyatta VyOS Experimental A10 Accedian Aruba Ciena SAOS Citrix Netscaler Cisco Telepresence Check Point GAiA Coriant Dell OS6 Dell EMC Isilon Eltex Enterasys Extreme EXOS Extreme Wing Extreme SLX (Brocade) F5 TMSH F5 Linux Fortinet MRV Communications OptiSwitch Nokia/Alcatel SR-OS QuantaMesh Rad ETX
三、實驗環境
1.操作系統:win10
2.python版本: python3.6.6
3.netmiko模塊版本:2.3.0
四、安裝netmiko模塊
#前提準備模塊(安裝netmiko可自動下載依賴項): Paramiko >= 2.4.1 scp >= 0.10.0 pyyaml pyserial textfsm #安裝netmiko pip install netmiko
ps:沒有全部安裝前提模塊,在使用netmiko沒有報錯,說明運行代碼里沒有調用到而已,而不是不需要
五、簡單實例
5.1 執行查看命令:show ip int brief
from netmiko import ConnectHandler cisco = { 'device_type':'cisco_ios', 'host':'ip地址', 'username':'用戶名', 'password':'密碼' } net_connect = ConnectHandler(**cisco) ##或者 # net_connect = ConnectHandler(device_type='cisco_ios',host='IP地址',username='用戶名',password='密碼') #找到目前所在視圖 current_view = net_connect.find_prompt() print(current_view) #執行命令,返回結果為字符串,賦值給output output = net_connect.send_command('show ip int brief') print(output) # #此為在windows里如果\n不能顯示回車,則進行如下語句格式化 # o_list = output.split("\n") # for line in o_list: # print(line)
5.2 執行配置命令:手動關閉接口G1/0/29
from netmiko import ConnectHandler cisco = { 'device_type':'cisco_ios', 'host':'ip地址', 'username':'用戶名', 'password':'密碼' } net_connect = ConnectHandler(**cisco) ##或者 # net_connect = ConnectHandler(device_type='cisco_ios',host='IP地址',username='用戶名',password='密碼') #要配置的命令 config_commands = ['interface GigabitEthernet1/0/29','shutdown'] #提交要配置的命令,input為提交的真實內容 input = net_connect.send_config_set(config_commands) #驗證shutdown是否執行成功 output = net_connect.send_command('show run inter gi1/0/29') print(output) # #此為在windows里如果\n不能顯示回車,則進行如下語句格式化 # o_list = output.split("\n") # for line in o_list: # print(line)
六、常用方法
net_connect.send_command() # 向下發送命令,返回輸出(基于模式)
net_connect.send_command_timing() # 沿通道發送命令,返回輸出(基于時序)
net_connect.send_config_set() # 將配置命令發送到遠程設備
net_connect.send_config_from_file() # 發送從文件加載的配置命令
net_connect.save_config() # 將running#config保存到startup#config
net_connect.enable() # 輸入啟用模式
net_connect.find_prompt() # 返回當前路由器提示符
net_connect.commit() # 在Juniper和IOS#XR上執行提交操作
net_connect.disconnect() # 關閉連接
net_connect.write_channel() # 通道的低級寫入
net_connect.read_channel() # 通道的低級寫入
關于netmiko模塊如何在Python中使用就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。