Я хочу много знать о номерах портов, используемых источником (клиентами) и получателем (серверами). Могут ли клиенты получить любой номер порта или есть общий способ дать им номера портов? В качестве примера, если номер порта меньше 1024, могу ли я сказать, что это 100% номер порта сервера.
эта информация важна для меня указать конечные точки только с номерами портов в нашей сети.
Нет. Если клиент явно не привязывается к определенному порту источника (редко), порт, используемый клиентскими приложениями, определяется исключительно сетевым стеком операционной системы. Они известны как эфемерные порты. В Linux диапазон обычно составляет 32768–61000.
Порты 0–1023 считаются «хорошо известными» портами и почти всегда * зарезервированы для определенных хорошо известных серверов. например 80 - HTTP, 443 - HTTPS, 22 - SSH.
* Некоторые из них являются клиентскими портами, например BOOTP
Существует много «зарегистрированных» портов в диапазоне 1024–49151, хотя многие ОС выделяют клиентские порты из подмножества этого пула (например, Linux перекрывает 32768–49151).
Для получения дополнительной информации в Википедии есть полная список номеров портов TCP и UDP.