python获取网元的数据原理及方法是什么
Admin 2022-07-22 群英技术资讯 520 次浏览
通过NETCONF,网管能够用可视化的界面统一管理网络中的设备,并且安全性高、可靠性强、扩展性强。如下图所示,网管与网络中的所有交换机之间建立NETCONF会话,用户即可在网管提供的可视化界面上对网络中的所有交换机进行统一的管理,提高网络运维效率。
网管通过NETCONF对设备进行管理组网图
首先进行网元的配置开通netconf协议相关篇配置,然后编写python调用netconf模块:
登录ne40e的管理口,按照如下命令配置,配置说明参见上面图示中网元配置
system-view aaa local-user netconf001 password irreversible-cipher Root@123 local-user netconf001 service-type ssh local-user netconf001 user-group manage-ug ssh user netconf001 ssh user netconf001 authentication-type password ssh user netconf001 service-type all snetconf server enable
默认netconf的端口是SSH端口22,也可以用如下命令修改为其他端口:
protocol inbound ssh port 830
建议使用第三方库ncclient实现netconf的调用:
1.安装ncclient:
pip install ncclient
2.Python引用ncclient:
from ncclient import manager
3.Python通过netconf的get能力获取网元的接口状态信息:
#建立连接 conn = manager.connect(host="10.10.10.10", port=22, username="netconf001", password="Root@123", hostkey_verify=False, device_params={'name': 'huawei'}, allow_agent=False, look_for_keys=False) #设定获取端口的状态信息(down或者up) message = '''<ifm xmlns="http://www.huawei.com/netconf/vrp" content-version="1.0" format-version="1.0"> <interfaces> <interface> <ifName/> <ifDynamicInfo> <ifPhyStatus/> <ifLinkStatus/> </ifDynamicInfo> </interface> </interfaces> </ifm>''' #get调用 ret = conn.get(("subtree", message )) #打印返回的信息 print(ret)
4.返回信息参加如下样例,可以看到端口GigabitEthernet0/0/0是up:
<?xml version="1.0" encoding="UTF-8"?> <rpc-reply message-id="urn:uuid:ec1e9c29-5ff6-4582-8880-e887ceb8c512" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> <data> <ifm xmlns="http://www.huawei.com/netconf/vrp" format-version="1.0" content-version="1.0"> <interfaces> <interface> <ifName>GigabitEthernet0/0/0</ifName> <ifDynamicInfo> <ifPhyStatus>up</ifPhyStatus> <ifLinkStatus>up</ifLinkStatus> </ifDynamicInfo> </interface> </interfaces> </ifm> </data> </rpc-reply>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
大家好,本篇文章主要讲的是python的广播机制详解,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下,方便下次浏览
本文主要介绍了Selenium多窗口切换解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
这篇文章主要为大家详细介绍了Python使用Pillow添加水印,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
这篇文章主要介绍了Python字符串对齐方法使用(ljust()、rjust()和center()),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
这篇文章主要介绍了用Python的绘图库(matplotlib)绘制小波能量谱,代码简单详细,思路清晰,需要的朋友可以参考下
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008