使用netconf配置交换机(华为交换机netconf)
1.什么是netconf?
NETCONF(Network Configuration Protocol,网络配置协议)是一种基于XML的网络管理协议,它提供了一种可编程的、对网络设备进行配置和管理的方法。用户可以通过该协议设置参数、获取参数值、获取统计信息等。 NETCONF报文使用XML格式,具有强大的过滤能力,而且每一个数据项都有一个固定的元素名称和位置,这使得同一厂商的不同设备具有相同的访问方式和结果呈现方式,不同厂商之间的设备也可以经过映射XML得到相同的效果,这使得它在第三方软件的开发上非常便利,很容易开发出在混合不同厂商、不同设备的环境下的特殊定制的网管软件。在这样的网管软件的协助下,使用NETCONF功能会使网络设备的配置管理工作,变得更简单更高效
特点:
a.基于 RPC,增加了事务支持
b.优化查询功能,增加过滤查询方式
c.拓展性强,在其协议内部分为 4 层,各层之间相互独立
d.更好的将配置和状态数据解耦,并区分状态数据(candidate, running, startup)
e.易使用,结合提供的 API,实现可编程性的网络操作
f.安全性更好,在传输层可选用 SSH,TLS 协议等。
a.Manager 请求 NETCONF 中 SSH 子系统建立连接。
b.Agent 回复 Hello 消息,包含本身支持的特性和能力。
c.Manager 告知 Agent 自己所支持的特性和能力。
d.Manager 开始发送 RPC 操作请求。
e.Agent 回复 RPC 请求操作结果。
2.netconf有什么用?
a.配置自动化下发时的校验,xml 是基于yang模型约束的,设备会基于[yang模型](https://cnblogs.com/michael9/p/14481135.html)校验xml配置是否合法。
b.提供网络配置的接口,更利于开发自动化工具或平台。
3.怎么使用netconf
a.实验环境搭建:
H3C_Comware7
Python3.7
ncclient-0.6.10
Win10
b.H3C netconf xml API
H3C《NETCONF XML API》 下载
链接:
提取码:ol9a
如果链接失效,请底部留言,笔者会不定时进行查看。
c.交换机开启ssh 和 netconf
#
local-user admin class manage
password simple admin
service-type ssh
authorization-attribute user-role network-admin
authorization-attribute user-role network-operator
#
line vty 0 14
authentication-mode scheme
user-role network-operator
#
netconf ssh server enable
netconf ssh server port 830
#
d.代码调用
from ncclient import manager
hostname = '172.16.1.100'
netconf_port = 830
username = 'admin'
password = 'admin'
vendor = 'h3c'
# 实例化一个netconf连接
manager_connect = manager.connect(
host=hostname,
port=netconf_port,
username=username,
password=password,
hostkey_verify=False,
device_params={'name': vendor},
allow_agent=False,
look_for_keys=False
)
#获取交换机的接口和MAC表项
request_xml = '''
'''
get_mac = manager_connect.get(filter=('subtree', request_xml))
manager_connect.close_session()
print(get_mac)
############################################
# 返回结果 是一行字符,下面是我格式化过了的 #
# 可以通过python的xml库可以将xml转化为json #
############################################
1
GigabitEthernet1/0/1
1
2
GigabitEthernet1/0/2
2
3
GigabitEthernet1/0/3
3
4
GigabitEthernet1/0/4
4
5
GigabitEthernet1/0/5
5
6
GigabitEthernet1/0/6
6
7
GigabitEthernet1/0/7
7
8
GigabitEthernet1/0/8
8
9
GigabitEthernet1/0/9
9
10
GigabitEthernet1/0/10
10
11
GigabitEthernet1/0/11
11
12
GigabitEthernet1/0/12
12
13
GigabitEthernet1/0/13
13
14
GigabitEthernet1/0/14
14
15
GigabitEthernet1/0/15
15
16
GigabitEthernet1/0/16
16
17
GigabitEthernet1/0/17
17
18
GigabitEthernet1/0/18
18
19
GigabitEthernet1/0/19
19
20
GigabitEthernet1/0/20
20
21
GigabitEthernet1/0/21
21
22
GigabitEthernet1/0/22
22
23
GigabitEthernet1/0/23
23
24
GigabitEthernet1/0/24
24
25
GigabitEthernet1/0/25
25
26
GigabitEthernet1/0/26
26
27
GigabitEthernet1/0/27
27
28
GigabitEthernet1/0/28
28
29
GigabitEthernet1/0/29
29
30
GigabitEthernet1/0/30
30
31
GigabitEthernet1/0/31
31
32
GigabitEthernet1/0/32
32
33
GigabitEthernet1/0/33
33
34
GigabitEthernet1/0/34
34
35
GigabitEthernet1/0/35
35
36
GigabitEthernet1/0/36
36
37
GigabitEthernet1/0/37
37
38
GigabitEthernet1/0/38
38
39
GigabitEthernet1/0/39
39
40
GigabitEthernet1/0/40
40
41
GigabitEthernet1/0/41
41
42
GigabitEthernet1/0/42
42
43
GigabitEthernet1/0/43
43
44
GigabitEthernet1/0/44
44
45
GigabitEthernet1/0/45
45
46
GigabitEthernet1/0/46
46
47
GigabitEthernet1/0/47
47
48
GigabitEthernet1/0/48
48
49
Ten-GigabitEthernet1/0/49
49
50
Ten-GigabitEthernet1/0/50
50
51
Ten-GigabitEthernet1/0/51
51
52
Ten-GigabitEthernet1/0/52
52
631
M-GigabitEthernet0/0/0
631
632
NULL0
633
InLoopBack0
634
LoopBack111
636
Vlan-interface1
637
Vlan-interface99
2
FE-BB-FE-BB-FE-BB
2
3
true
99
00-3C-10-66-0A-98
48
2
true
99
00-45-1D-79-B3-39
48
2
true
99
00-8E-73-E6-AC-19
48
2
true
99
00-8E-73-E6-AC-40
48
2
true
99
08-5B-0E-2F-62-6A
48
2
true
99
0C-11-67-9A-0E-98
48
2
true
99
0C-11-67-9A-0E-C0
48
2
true
99
2C-33-11-40-32-80
48
2
true
99
2C-33-11-6E-C3-00
48
2
true
99
40-A6-E8-8A-0A-B9
48
2
true
99
44-A8-42-05-7E-FD
48
2
true
99
4C-E9-E4-2E-B8-1A
48
2
true
99
70-4C-A5-EB-40-BB
48
2
true
99
70-EA-1A-AD-5C-6C
48
2
true
99
74-A2-E6-66-5A-39
48
2
true
99
78-2C-29-2B-2B-90
48
2
true
99
78-2C-29-2B-67-F0
48
2
true
99
78-2C-29-2B-85-37
48
2
true
99
78-2C-29-44-C5-CD
48
2
true
99
78-2C-29-44-D9-4D
48
2
true
99
78-2C-29-44-DE-95
48
2
true
99
78-2C-29-44-DF-CD
48
2
true
99
78-2C-29-AD-3F-DE
48
2
true
99
7C-1E-06-24-41-A5
48
2
true
99
7C-1E-06-24-45-B5
48
2
true
99
CC-98-91-03-DE-B9
48
2
true
99
CC-98-91-A4-71-39
48
2
true
99
CC-98-91-A4-C9-39
48
2
true
99
CC-98-91-A4-F6-39
48
2
true
99
CC-98-91-C3-7F-B9
48
2
true
99
CC-98-91-C3-9E-B9
48
2
true
99
CC-98-91-C3-B0-B9
48
2
true
99
CC-98-91-DA-2A-B9
48
2
true
99
CC-98-91-DA-39-39
48
2
true
99
DC-DA-80-61-94-89
48
2
true
99
DC-DA-80-61-A0-89
48
2
true
99
DC-DA-80-61-A0-98
48
2
true
99
F8-A0-3D-40-B8-1D
48
2
true
99
F8-A0-3D-40-C1-6F
48
2
true
99
F8-A0-3D-40-C1-7D
48
2
true
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
暂时没有评论,来抢沙发吧~