继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

Python netmiko 管理devices简例

关注TA
已关注
手记
粉丝
获赞

netmiko是python中可用于network device 备份的库,目前支持的设备如下:As of June 2015, Netmiko has support for the following platforms:Cisco IOSCisco IOS-XECisco ASACisco NX-OSCisco IOS-XRCisco WLC (limited testing)Arista EOSHP ProCurveHP Comware (limited testing)Juniper JunosBrocade VDX (limited testing)F5 LTM (experimental)Huawei (limited testing)

下面是一段使用netmiko库登陆ciscorouter 3360 的python代码

from netmiko import ConnectHandler

#要连接设备的信息,顺序不重要

cisco = {    'device_type':'cisco_ios',    'ip':'192.168.60.222',    'username':'admin',    'password': 'password',    'secret':'google',   #enable password}

#进行ssh连接

connect=ConnectHandler(**cisco)     #对于两个*号,我的理解是:ConnectHandler()函数需要在cisco字典里面找"两"个东西,key和对应的value,所以用两个*星号

#如果enable有密码需要在配置连接的时候配置,例如 'secret':'google'  ,输入connect.send_command('enable') 是无效的

connect.enable()   #相当于进入特权模式output_1 = connect.send_command('show run')print("show run 的输出如下:\n"+output_1)print("----------------------")

#输入connect.send_command('config ter')是进不了配置模式的,需要配置直接输入connect.send_config_set('cli')

out_put_2 = connect.send_config_set('ip route 0.0.0.0 0.0.0.0 192.168.60.129')  #相当于输入特权模式 + 输入配置命令print("配置默认路由后的输出:\n\n"+out_put_2+"\n\n")          #输出配置过程

#查看上述的配置是否生效

show_route = connect.send_command('show ip route') #send_command('cli')命令执行的结果只能在本级,不能exit或者 enable、configure terminalprint("查看路由条目:\n"+show_route)
1、show run 的输出如下:Building configuration...Current configuration : 874 bytes!version 12.4service timestamps debug datetime msecservice timestamps log datetime msec logging synchronousline aux 0 exec-timeout 0 0 privilege level 15 logging synchronousline vty 0 4 login local!!end----------------------2、配置默认路由后的输出:config termEnter configuration commands, one per line.  End with CNTL/Z.R1(config)#ip route 0.0.0.0 0.0.0.0 192.168.60.129R1(config)#endR1#3、查看路由条目:Codes: C - connected, S - static, R - RIP, M - mobile, B - BGP       D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area        N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2       E1 - OSPF external type 1, E2 - OSPF external type 2       i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2       ia - IS-IS inter area, * - candidate default, U - per-user static route       o - ODR, P - periodic downloaded static routeGateway of last resort is 192.168.60.129 to network 0.0.0.0C    192.168.60.0/24 is directly connected, FastEthernet0/0S*   0.0.0.0/0 [1/0] via 192.168.60.129Process finished with exit code 0

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP