1. 引言 (Introduction)
本规范定义的协议, Session Traversal Utilities for NAT (STUN), 提供了一种处理 NAT 的工具. 它为端点提供了一种方法, 用于确定 NAT 为其私有 IP 地址和端口分配的对应 IP 地址和端口. 它还提供了一种方式, 使端点能够保持 NAT 绑定处于活动状态. 通过一些扩展, 该协议可用于在两个端点之间执行连通性检查 [MMUSIC-ICE], 或在两个端点之间中继数据包 [BEHAVE-TURN].
为契合其工具属性, 本规范定义了一种可扩展的数据包格式, 定义了在多种传输协议上的操作方式, 并提供两种认证形式.
STUN 旨在一个或多个 NAT 穿越解决方案的上下文中使用. 这些解决方案称为 STUN 用法 (STUN usages). 每种用法都会描述如何利用 STUN 实现 NAT 穿越解决方案. 通常, 一种用法会指明何时发送 STUN 消息, 要包含哪些可选属性, 使用哪个服务器, 以及采用哪种认证机制. Interactive Connectivity Establishment (ICE) [MMUSIC-ICE] 是 STUN 的一种用法. SIP Outbound [SIP-OUTBOUND] 是 STUN 的另一种用法. 在某些情况下, 用法会要求对 STUN 进行扩展. STUN 扩展可以表现为新的方法, 属性, 或错误响应代码. 关于 STUN 用法的更多信息见 Section 14.