0
点赞
收藏
分享

微信扫一扫

网络工程师的Python之路-netmiko实验1,初来乍到,ENSP

前面我们已经对环境搭建,paramiko,telnetlib 等做了一些实验探讨。 ​​@弈心​​​ 大神说如果把 paramiko 比做手动挡汽车,netmiko 则可以说是自动挡汽车。来吧,快上车!快上车!今天我们就来初识一下 netmiko 模块。

实验背景

Netmiko 是作者 Kirk Byers 在 2014 年底基于 paramiko 开始开发的。它做了很多改进,如精简了 show (华为就是 display )命令的执行和回显内容的读取,简化了设备配置命令,支持了多厂商的设备和平台。

实验拓扑

【SSH 客户端】Win10 虚拟网卡,IP 为 192.168.11.2/24,桥接到云彩,Python所在。

【透明交换机】SW1(启动即可,无需配置,给云彩扩展端口使用)。

【SSH 操作对象】L3Sx,IP为 192.168.11.1x/24。

网络工程师的Python之路-netmiko实验1,初来乍到,ENSP_python

实验目的

使用 netmiko 模块登录交换机 L3S2 ,给它的 LoopBack0 口配置 IP 2.2.2.2/32, 之后保存退出,打印回显。

实验准备

首先我们联网安装 netmiko 模块。如果不考虑 Windows 系统【环境变量】等设置的话,我们可以直接 cd 到安装 Python 程序对应的 pip.exe 所在的文件夹路径中,执行 pip install netmiko。

按照拓扑,每台交换机 vlan 1 都配置 vlanif 的 IP 作为管理,需做到能手工逐台登录,具体可参见前序文章

实验前检查

  1. 按之前实验套路,PC 到 L3S2 的网络连通性,如不通需要排网络,本文此处描述从简。

2. 检查 L3S2 的 LoopBack0 情况。

网络工程师的Python之路-netmiko实验1,初来乍到,ENSP_分割线_02


Python 代码

代码 

​​@弈心​​

 大神在视频和书中都逐条做了详细解释,如需要请移步阅读,强烈建议看视频中的代码解释。这里我将其代码中的思科指令修改成华为指令,让实验能在华为设备来跑起来,然后结合华为指令对代码再做一点个人感受分享。好吧!看了下面的代码,是不是感觉比 paramiko 简介太多太多了,各种“多余”的操作,netmiko 都帮咱们完美屏蔽掉了。


from netmiko import ConnectHandler


S2 = {'device_type':'huawei',

     'ip':'192.168.11.12',

     'username':'python',

     'password':'123'}


connect = ConnectHandler(**S2)

print('已经成功登录交换机' + S2['ip'])


#netmiko 已集成休眠、截屏等操作

config_commands = ['interface LoopBack 0','ip add 2.2.2.2 32']

#如果需要在系统视图下执行,可用send_config_set,会自动执行sys

#截屏直接作为函数返回

output = connect.send_config_set(config_commands)

print(output)


print('\n=============我是分割线===================\n')



#如果需要用户视图下执行,可用send_command

#截屏直接作为函数返回


result = connect.send_command('display current-configuration interface LoopBack 0')

print(result)

网络工程师的Python之路-netmiko实验1,初来乍到,ENSP_分割线_03

实验过程

这个实验过程只是执行脚本,跑跑代码,等待回显过程展示。

网络工程师的Python之路-netmiko实验1,初来乍到,ENSP_函数返回_04

网络工程师的Python之路-netmiko实验1,初来乍到,ENSP_函数返回_05

实验结果检查

display current-configuration interface LoopBack0

网络工程师的Python之路-netmiko实验1,初来乍到,ENSP_分割线_06

举报

相关推荐

网络工程师每日练习(1)

0 条评论