EIM-NAT 是否可以跨 UDP 和 TCP 工作?

网络工程 tcp 纳特 UDP 第 4 层 射频
2022-02-12 14:54:44

我已经阅读了 RFC 4787、5382 和 5128,我只需要澄清一下。

假设 NAT 具有针对 UDP 和 TCP 的端点独立映射行为。

虽然我知道如果一台机器将 UDP 数据报发送到一个目的地和端口,然后将另一个 UDP 数据报发送到不同的目的地和端口,它会为两者获得相同的映射(假设它从相同的端口号发送这些 UDP 数据包),如果这两个不同目的地使用的协议不同,我不确定 NAT 会如何表现。

换句话说,如果一台机器将源端口号 7000 分配给它发出的任何第 4 层数据报,它首先向某个目标 Y1:y1 (IP:port) 发送一个 UDP 数据报,然后发送一个 TCP 段到某个目的地 Y2:y2,其中 Y1:y1 != Y2:y2,UDP 数据报的 NAT 映射端口号最终是否与 TCP 段的 NAT 映射端口号相同?

1个回答

NAT 代表网络地址转换,它转换地址,而不是协议。一些第 4 层协议(TCP 和 UDP)具有称为端口的地址,它们巧合地使用同一组地址编号,但地址(端口)是每个协议的;TCP 端口9876UDP 端口不同9876

NAT 可以转换源 IP 地址和目标 IP 地址中的一个或两个,并且在某些 NAT 版本中,还可以转换某些第 4 层协议寻址。如果 NAT 将 UDP 数据报源端口7000转换为 UDP 端口37500,则与 TCP 无关,任何 TCP 段源端口7000,都可以同时转换为 TCP 端口37500