背景

在一个网络自动化项目中,防火墙策略由 NSO 缓存在 Redis 中,主要有两种数据结构:

  • object:地址对象,key 是名称,value 是一个数组,数组元素是实际的 IP 地址或 CIDR 网段
  • group_object:地址组,有自己的 namevaluevalue 是一个数组,数组元素是 object 的 name 或另一个 group_object 的 name

group 和 object 形成嵌套结构:一个 group 的 value 列表里,既可以直接引用 object,也可以引用其他 group,形成递归树。