摘要

  • RFC 3508 的用户字段是先以 UTF-8 编码、再按需转义的 Unicode 别名;原始字节、解码字符和目录查找键不是同一份证据。
  • IANA 注册、语法通过和目录命中都不能替代绑定来源、功能节点权力、gatekeeper 准入、信令、媒体、接收者身份与结果证明。

日志写着“地址解析成功”。原始 URL 已被覆盖,只留下目录返回的 IP。调查者能够看见终点,却无法回答系统究竟比较了什么。

RFC 3508 于 2003 年 4 月以信息类 RFC 发布。它复制 H.323 第 4 版的 H323-URL 定义,目的是便于访问并在 IANA 注册。文档明确不规定任何 Internet 标准。它给出公共语法,不替每个目录定义身份制度。

注册解决的是方案名冲突

IANA 当前把 h323 列为 Permanent URI scheme,并引用 RFC 3508。RFC 自己说明,登记能确保 h323 方案名不被重复使用。

这证明注册表中有一个受协调的名字。它不证明终端实现、gatekeeper 在线、别名已分配或电话能够接通。“永久”描述注册状态,不描述服务健康。

审计可以保存注册表快照和解释所用规范版本,但不得把注册行当作部署率或当前支持证据。

地址有三种形态

语法允许只有 user、只有 @hostport,或 user@hostport。host 可以是域名、IPv4 或方括号内的 IPv6,端口可选,之后还能跟分号参数。

只有 user 时,别名不携带位置,必须由外部上下文补齐。只有 host 时,可以找到某个功能节点,却可能仍不知道目标用户或服务。二者同时存在也不证明该主机当前拥有该别名。

解析器应该输出结构字段和仍待解决的问题,而不是直接制造“已认证端点”。

从线级字节到查找键至少有四步

第一份证据是收到的字节和百分号转义。第二步是转义后的字节序列。第三步是 UTF-8 解码得到的 Unicode 字符串。第四步才是依照比较规则生成的查找键。

host 不区分大小写。user 中数值低于 0x80 的字符不区分大小写,等于或高于 0x80 的字符区分大小写。全局 Unicode 小写化可能合并本应不同的别名;纯字节比较又可能拆开本应相等的 ASCII 写法。

目录还可能做组合、宽度、重音或私有别名规范化。那是目录自己的变换,必须记录算法、版本与所有者,不能冒充 RFC 原文。

匹配结果不是身份凭证

RFC 3508 所说的 entity 可以是用户、设备或服务。user 是 alias,并且没有位置内容。一个服务别名可以指向池,一个相同拼写可以在两个 zone 内分别有效。

URL 没有签发者、有效期或所有权证明。目录返回绑定时,证据应包含目录名称、管理者、作用域、记录版本、新鲜度和响应者身份。

若只保存最终 IP,别名是谁分配、在哪个空间有效以及当时为何有效都会消失。

hostport 指向功能节点

hostport 可以命名 Endpoint、Gatekeeper、Border Element 或其他接收呼叫、执行服务的功能节点。

连接 gatekeeper 不等于连接被叫方;到达边界节点不等于完成身份验证;DNS 回答不证明地址后的进程有权代表别名。

需要保存预期角色、选择规则、解析地址、连接身份和结果。注册、准入、呼叫信令与媒体仍是后续阶段。

参数槽位没有通用语义

RFC 3508 允许分号参数,却把具体参数定义留待研究,并要求每项定义自己的字符集和大小写规则。

通用解析器能够保留 token,不能自行决定未知参数必须执行、可以忽略、具有安全意义或能够改写路由。字符串被原样转发,也不证明接收端理解了它。

参数收据应包含定义文档、版本、支持状态、未知值策略与实际效果。

承载协议决定安全包络

H.323 URL 可以出现在 H.225.0、SIP、TRIP、网页或 XML 中。RFC 3508 把 H.225.0 的安全交给 H.235,其他承载则使用各自协议的安全机制。

SIP 对等方经过认证,不自动证明 H.323 别名所有权。TRIP 路由被接收,不等于 gatekeeper 准入。网页可以触发 handler,却不证明网页有权决定目标。

安全声明必须写清承载、认证身份、受保护字段、信任域和消费这份证据的决定。“安全 URL”太宽,无法复核。

互通函数选择映射权威

RFC 4123 允许 SIP-H.323 互通函数使用 gatekeeper、SIP registrar、其他数据库、LDAP、DNS 或 TRIP 来翻译地址。

这些来源没有被宣布为等价。它们可以有不同作用域、更新时间和冲突规则。同一 URL 在两个互通函数上得到不同目标,可能是映射上下文不同,而不是解析器坏了。

保留输入、输出、映射来源、记录版本、优先级和选择时间。按旧表正确翻译,仍可能得到已失去授权的有效地址。

解析之后还有四道门

找到功能节点之后,还要建立传输、获得可能需要的 gatekeeper 准入、完成呼叫信令、协商媒体、验证接收者并确认应用或人的结果。

可达节点可以拒绝准入;信令可以成功而没有媒体;媒体可以抵达错误身份;人接听后业务仍可失败。拆分状态并不是繁琐,而是防止上一步冒充下一步。

面板应显示已解析、可达、已准入、信令完成、媒体建立、接收者确认和结果确认,而不是一个绿色“成功”。

完整证据链

先保存原始 URL、来源、承载、字节、转义、UTF-8、Unicode 与比较键。记录字段、参数定义、算法版本和规范版本。注册表仅用于方案解释。

再保存别名目录、版本、新鲜度、DNS/TRIP/LDAP/registrar/gatekeeper 查询,功能角色与选择政策。跟踪连接、互通翻译、注册、准入、最终信令响应、媒体地址与密钥。

最后记录接收者身份、授权、认证结果、资源释放与替代解析重放。没有任何一层可以自动继承下一层的结论。

证据边界

本文不涉及现实产品、端点、gatekeeper、运营者、用户、通话、事故或部署,也不测量采用率、互操作或媒体质量。IANA 永久条目只是注册事实。

本文不重复 RFC 3305 的 URL/URN 分类、ipn 的延迟绑定、Gopher 图、VEMMI 启动或 SIP voicemail 路由。它拥有 RFC 3508 从原始编码到目录键的具体来源边界。

Heng Lu 关于最小初始规范和运行代码优先的论述,是明确披露的编辑视角。它们支持窄公共合同和执行路径收据,并非 H.323 测量。

结论很窄:成功命中目录之前,系统已经作出多次身份变换;不保留这些变换,目标就没有可审计来源。

Sources