0

假设我在某个 NAT 后面(类型无关紧要),并且我想将数据包发送到公共 Internet。我第一次发送数据包时,我的数据包会被 NAT,NAT 会为我的数据包分配和映射一些外部端口号。如果我继续(非常频繁地)从我的私人机器发送具有相同源端口的数据包,那么据我所知(通过检查服务器目标上的数据包地址),相同的 NAT 映射仍然存在。

但是,如果我在发送数据包之间等待约 1-2 分钟,下次我发送数据包时,NAT 似乎已经回收了 NAT 映射并分配了不同的外部端口。NAT 通常会等待多长时间才能回收映射?是否有所有NAT 符合的最短时间(如标准规范)?

4

1 回答 1

0

我能找到的最接近答案的是draft-audet-nat-behave-00 的第 14 页。本文档规定 NAT 不得在 2 分钟之前使动态 UDP 绑定失效,建议的时间为 5 分钟,而 TCP 绑定的时间为 7800 秒。

在实践中,我们最终每 50 秒发送一个微不足道的刷新数据包,以确保我们的 UDP 绑定在我们的应用程序中保持活动状态。

于 2012-10-09T15:40:26.123 回答