解析网络设备输入配置的框架

问题描述 投票:0回答:1

Genie Parser 或 TextFSM 等框架解析配置的 output。这就是当您询问配置的某些部分时设备会回答的问题,例如

show ip route
show access-lists

例如,这是ACL的输出,它可以被上述框架解析:

switch1#show access-lists
Standard IP access list acl-snmp-4
    10 permit 10.0.0.1
    20 permit 10.0.0.2
    30 permit 192.168.0.1
    40 permit 192.168.0.2

我正在寻找的是解析 input - 人们在配置设备时需要输入的文本。当人们想要以编程方式验证配置标准是否正确时,这非常有用。

例如,验证以下代码段是否具有正确的 IP:

ip access-list standard ACL1

remark Server1
permit host 10.0.0.1
permit host 10.0.0.2
remark Server2
permit host 192.0.0.3
permit 54.101.80.0 0.0.0.63

我目前正在使用一些 for 循环和正则表达式,但是当您获得数十种设备类型、操作系统类型、配置样式时,它会变得混乱。

python parsing cisco
1个回答
0
投票

使用

show access-list
,您可以看到操作数据,而不是直接查看配置,是的,Genie 或 TextFSM 是将操作文本输出转换为结构化数据的解决方案。

对于配置数据,我建议查看ttp

我不太确定您要解决什么用例。如果你想生成配置,为什么不使用模板引擎呢?例如,jinja2

CLI 并不是真正为自动化而设计的,因此请检查您的设备是否具有正确的 API,例如 netconf-yang。

© www.soinside.com 2019 - 2024. All rights reserved.