摘要

  • RFC 5007 把 LEASEQUERY 定义为只读查询;成功回复描述服务器掌握的绑定信息,并不证明终端当前在线、流量可信或身份与权限已经确认。
  • 可辩护的结论必须记录查询了哪些服务器、收到哪种回复、怎样展开多链路与处理冲突、本地状态发生何种变化,以及随后独立观察到什么结果。

一张运营报表把“租约查询成功”换成了“用户在线”。绿色指标看起来清晰,证据链却在颜色改变之前已经断开。

RFC 5007 的用途更窄:让设备或进程轻量查询 DHCPv6 服务器持有的绑定信息。规范明确说,LEASEQUERY 只是查询,不会改变 IPv6 地址、前缀或相应绑定的状态。服务器返回的是其自身视图,不是对终端物理存在的测量。

按需查询的典型情形是:接入集中器先收到一个 IPv6 数据包,需要刷新该地址当前租给哪个 DHCPv6 客户端的信息。这里至少有两个证据对象。数据包是一次网络观察;回复是服务器记录。后者不能反向证明数据包来源合法,也不能保证终端下一刻仍可达。

“成功”本身还有三种不同结构。服务器若有绑定,会返回 OPTION_CLIENT_DATA,请求方据此更新本地绑定状态。若同一客户端在多个链路上有绑定,服务器会返回 OPTION_LQ_CLIENT_LINK,请求方还必须逐个链路继续查询。服务器若没有绑定,成功回复可以同时缺少客户端数据和链路列表。一个成功码可能表示得到数据、得到后续查询目录,或者得到空结果。

错误状态也不等于不存在。请求方可以根据本地策略改查另一台服务器、纠正查询、向多台服务器组播,或者终止。规范要求优先查询被认为掌握权威信息的服务器;如果无法确定,应查询所有已知或已配置的服务器。只查一台并停止可以是合理的资源策略,但不能代表所有权威来源已经一致回答。

多服务器回复需要合并。不同来源可能给出互补数据,例如一台给出地址租约,另一台给出委派前缀;这种不相交数据应当合并。不同服务器若报告同类型同值的数据,规范把它们视为重叠或冲突数据,并建议采用 OPTION_CLT_TIME 更新的那一份。

RFC 5007 勘误 对此有关键修正。技术勘误 3763 删除了原文中“缺少 OPTION_CLT_TIME 就应丢弃客户端数据”的要求。在故障切换情形中,备用服务器可能持有绑定,却没有与客户端直接进行最后一次事务,因而没有该时间。若同时有带时间的回复,应优先采用它;若只能收到无时间回复,数据仍可以接受。编辑勘误 4816 则把不存在的 OPTION_CLIENT_LINK 名称改为已注册的 OPTION_LQ_CLIENT_LINK。

即使有 OPTION_CLT_TIME,它也不是在线探针。它表示服务器生成回复时,距离其上一次与客户端事务经过了多久。它不是终端发出的即时心跳,不是人员身份证明,也不是访问控制裁决。“在已收到的服务器报告中更新”与“现在在线”是两个结论。

委派前缀的重启困境进一步暴露了边界。接入集中器重启后,如果还不能注入正确路由,流量可能根本无法抵达;而按需查询又通常等流量触发。RFC 5007 提到可以预先重建内部状态,但明确说这种预期查询不在该文档定义范围内。后来的 RFC 5460 规定批量查询,RFC 7653 规定主动变更通知。一次点查询不能借用批量恢复或持续订阅的能力。

安全机制同样不能跨越事实层级。规范讨论 DHCP 认证与 IPsec,也提醒可信中继可能转发不可信来源的查询;服务器可以拒绝中继查询,或即使面对可信请求方也限制返回字段。恶意服务器还可能发送错误租约或路由信息。通信参与方得到认证,不代表其保存内容天然完整、及时或符合外部现实。

负缓存只是抑制资源消耗。请求方可以缓存“近期查询未返回客户端数据”,避免因数据包洪泛反复压迫 DHCP 服务器。这个记录必须带时间和范围;它不能升级成“没有设备”“没有绑定”或“没有授权用户”的长期证明。

一份可辩护的绑定视图凭证应保留:

  1. 触发事件、查询类型、地址或 DUID 与链路上下文;
  2. 预期权威服务器集合,以及实际联系和遗漏的对象;
  3. 每次请求、回复、认证与中继上下文、重试和停止原因;
  4. 客户端数据、链路列表、空成功或错误等确切回复形态;
  5. 多链路后续查询、不相交数据合并和冲突裁决;
  6. OPTION_CLT_TIME 是否存在以及实际采用的优先规则;
  7. 负缓存状态和本地绑定状态的修订版本;
  8. 独立的路由、过滤或授权决定;
  9. 决定执行后另外观察到的数据包或终端结果。

这是一项治理建议,不是 RFC 5007 隐含的额外要求。它遵循 Heng Lu 的现实层级方法:服务器表述、协议交换、本地留存状态、执行动作与外部效果必须分别保存,直到证据明确连接它们。

RFC 7513 说明 Leasequery 可以辅助 SAVI 恢复绑定状态,但供执行系统使用的绑定仍不是人的身份,也不是终端当前存在的证明。DHCPv6 与前缀委派背景来自 RFC 3315、RFC 3633,IPv4 先例见 RFC 4388。后续的 RFC 8415 与 RFC 9915 也没有把一份 RFC 5007 回复变成在线证明。

领导者真正要问的不是“Leasequery 是否成功”,而是“哪台服务器提供了什么视图,哪些权威与后续查询尚未覆盖,本地做了什么选择,最终效果由什么独立观察支持”。

来源