套接字 - IPEndpoint端口(最大值)

sto*_*oic 4 c# sockets tcp

当我执行绑定时,我可以在套接字上分配的端口的最大值是多少?

例:

int port = 0; //How far can i go?
Socket m_mainSocket;
m_mainSocket.Bind(new IPEndPoint(IPAddress.Parse("127.0.0.1"), port))
Run Code Online (Sandbox Code Playgroud)

Phi*_*oss 11

IP端口号是16位无符号整数.因此,65,535是您可以分配的最大端口号.

IPEndPoint 构造函数的文档声明ArgumentOutOfRangeException如果端口大于,将引发an MaxPort.MaxPort"MaxPort值设置为0x0000FFFF'(65,535)的状态文档.

  • 请注意,许多端口 - 特别是在更高的数字范围内 - 被保留用作[临时端口](http://en.wikipedia.org/wiki/Ephemeral_port)并且*应该*不受约束. (2认同)