Сокеты - порт IPEndpoint (максимальное значение) - PullRequest
4 голосов
/ 05 августа 2010

Какое максимальное значение порта я могу назначить для моего сокета, когда я выполняю привязку?

Пример:

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

Ответы [ 3 ]

11 голосов
/ 05 августа 2010

Номера портов IP представляют собой 16-разрядные целые числа без знака.Следовательно, максимальный номер порта, который вы можете назначить, составляет 65 535.

В документации для конструктора IPEndPoint указано, что ArgumentOutOfRangeException будет повышено, если порт больше MaxPort.В документации для MaxPort говорится, что «значение MaxPort установлено на 0x0000FFFF» (65 535).

0 голосов
/ 28 июля 2015

Для программного доступа к максимально допустимому значению вы можете использовать IPEndPoint.MaxPort а также IPEndPoint.MinPort за минимальное значение. Они полезны для проверки того, что порт, введенный пользователем, находится в надлежащих границах, прежде чем пытаться использовать его в соединении.

0 голосов
/ 05 августа 2010

Класс IPEndpoint имеет поля MaxPort и MinPort - согласно документации :

Значение MaxPort установлено на 0x0000FFFF.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...