如何选择 UDP 源端口?

Edd*_*die 8 udp

我刚刚从我的机器上捕获了一个数据包并过滤掉了所有的 UDP 连接。我看到某些连接使用似乎是随机生成的 UDP 源端口,并且某些连接使用与 UDP 目标端口相同的源端口。

我知道 TCP 连接会随机化源端口,因此响应有一个“专用”端口可以响应。但是它如何与 UDP 一起工作?

我正在寻找权威的答案。链接到 RFC(或诸如此类)的链接将不胜感激。

什么决定了 UDP 源端口?

  • 它是在预期响应时随机生成的吗?
  • 当预期没有响应时,它是否与目标端口匹配?(而不是使用 0 作为源端口)?

谢谢你。

Jef*_*unk 6

这取决于应用程序。例如,Linux 内核在内核 2.6.24 中未指定源端口时实现了 UDP 源端口随机化。

因此,您在某些连接中看到的行为必须是特定应用程序将源端口指定为与目标端口相同,而其他应用程序将其留给内核。