摘要

  • RFC 2011 用 SMIv2 重新定义 MIB-II 中剩余的 IP/ICMP 对象,并以 ipGroup 与 icmpGroup 规定模块合规;IESG Note 同时明说,四字节 IpAddress 只能表示 IPv4。
  • 表能被遍历、对象能被读取、计数器能递增,只能证明已声明对象集合中的事实,不能证明 IPv6 地址、前缀、路由、邻居、配置结果或故障原因也被观察到。
  • RFC 2465 先在旧模型旁边建立独立 IPv6 MIB,RFC 4001 把地址类型与地址值绑定,RFC 4293 再统一两条谱系;每一步都要求新的索引、仪表和采集选择,发布本身不等于迁移完成。

绿色状态灯的边界

RFC 2011 最值得重读的是第一页的警告。它说,当时 IP、UDP 和 TCP 的 MIB 只支持 IPv4。原因非常具体:SNMPv2 SMI 的 IpAddress 是长度为 4 的 OCTET STRING,用来表示 32 位地址,不能表示新的 128 位 IPv6 地址。

这不是“页面上少显示一列”。ipAddrTable 用 ipAdEntAddr 给行做索引,地址和掩码都采用 IpAddress;ipNetToMediaTable 也把同一类型写进地址到物理地址映射的行身份。四字节边界决定了哪些行能存在、管理站怎样点名它们、一次 walk 最多能发现什么。IPv6 行没有报错,是因为这个世界里根本没有它的位置。

因此,绿灯可以完全诚实。agent 编译了模块,两个必选对象组都在,授权查询拿到值,语法和访问规则没有违反规范。错误只发生在解释阶段:有人把“符合这份 MIB”说成“覆盖这台设备的 IP 运行状态”。

合规清单不是网络清单

RFC 2011 的任务范围本来很窄。MIB-II 里的 IP 和 ICMP 对象最初属于 SNMPv1;路由管理对象此前已由 RFC 1354 更新。RFC 2011 迁移的是其余对象,而且模块说明明确排除 IP routes。

它的合规声明要求实现 IP 的 SNMPv2 entity 提供 ipGroup 和 icmpGroup。前者包括转发状态、默认 TTL、输入输出计数、重组和分片、地址表、地址映射以及路由条目丢弃;后者记录 ICMP 消息与错误。这个集合很有用,也很具体,但它不是“网络”的别名。

计数器名称同样不能替代分母。ipInReceives 包括收到时已有错误的数据报;ipInDiscards 记录处理上没有问题却被丢弃的数据报,但不包括等待重组时的丢弃;ipOutNoRoutes 只指因找不到路由而丢弃;ipReasmFails 也不必等于损失的分片数。数字增长说明某个定义好的总体发生了变化,不能还原是哪一个包、哪种地址族、哪条路径、哪项业务或哪种根因。

读写对象也保留同样的证据断层。ipForwarding 和 ipDefaultTTL 可写,网络到介质的映射行也可创建或失效。管理协议返回成功,可以证明请求被接受;它不能单独证明批准者是谁、值是否持久化、哪个协议栈采用、转发是否改变、远端是否可达。

IPv6 不是把旧槽拉长

RFC 2465 在 1998 年选择另建一套 IPv6 General group,而不是把四字节槽位强行拉长。六张表分别覆盖 IPv6 接口、接口统计、前缀、地址、路由和邻居映射,地址采用长度 16 的 OCTET STRING。这个做法不要求改变 SMIv2,也不要求改变合规的 SNMP 实现。

表示问题解决了,管理上的拼接问题随即出现。双栈节点可能同时提供旧 IPv4 MIB 和独立 IPv6 MIB;采集器必须知道查询哪套 OID、接口身份怎样对齐、计数是否按地址族分开、看板有没有悄悄只选择一边。RFC 2011 通过合规并没有变成失败,它只是继续证明 IPv4 那一侧。

RFC 4001 又把这项经验抽象成 InetAddressType 与 InetAddress 的组合。地址值必须在类型上下文中解释;用作索引时,类型排在地址前面,随后才是长度和 octets。它反对用 IpAddress 把对象永远锁在 IPv4 格式上,却仍允许合规声明只要求部分地址类型。显式类型让覆盖范围可审计,并不会自动制造全地址族实现。

统一模型也是迁移控制面

2006 年的 RFC 4293 废止 RFC 2011、RFC 2465 和 RFC 2466,把 IPv4 与 IPv6 合并进版本无关的 IP-MIB。系统级和接口级统计引入地址类型区分;地址对象增加类型;前缀、默认路由器和邻居表得到统一安排。

规范没有把这次变化写成轻松替换。它说旧 ipAddrTable 到新 ipAddressTable 只是“宽松地”转换,新表差异大到重新写代码可能比修改旧代码更容易。SNMP 例程需要处理新索引,新计数器也需要添加仪表。标准给出目标结构,却不能替 agent、采集器、历史库、告警规则和运维决定完成迁移。

真正可审计的过渡记录应当同时保留:MIB 修订、支持的地址类型、SNMP context、所查询的表、对象实例、采集时间、写入回执、协议观察和业务结果。缺少这些连接,绿灯会遮住一个地址族,统一曲线会遮住两个不可直接混用的观测面。

来源

证据边界

这些来源能证明规范状态、对象语法、合规对象组与后继设计;它们不能证明任何厂商缺陷、部署比例、当前事故、具体网络的监控覆盖、SLA 表现或真实迁移日期。