Какой самый большой номер сетевого порта TCP / IP допустим для IPv4?

попробуйте это.

SELECT TO_DATE('20160210','yyyymmdd') - 1 + LEVEL AS start_day 
from DUAL
connect by level <= (TO_DATE('20160228','yyyymmdd') + 1) - TO_DATE('20160210','yyyymmdd') ;
372
задан username 17 May 2009 в 18:03
поделиться

8 ответов

Номер порта представляет собой 16-разрядное целое число без знака, поэтому 65535.

522
ответ дан Greg Hewgill 17 May 2009 в 18:03
поделиться
  • 1
    По крайней мере, вы можете игнорировать первое событие. – Justin Johnson 18 December 2009 в 20:33

Самым большим номером порта является беззнаковое короткое 2 ^ 16-1: 65535

Зарегистрированный порт - это порт, назначенный Интернет-корпорацией для присвоения имен и номеров (ICANN) для определенного использования. Каждый зарегистрированный порт находится в диапазоне 1024–49151.

С 21 марта 2001 года регистрационным агентством является ICANN; до этого времени это была IANA.

Порты с номерами ниже номеров зарегистрированных портов называются хорошо известными портами; порт с номерами, превышающими номера зарегистрированных портов, называются динамическими и / или частными портами.

Википедия: Зарегистрированные порты

138
ответ дан Rohit Gupta 17 May 2009 в 18:03
поделиться
  • 1
    @ Джастин Джонсон, который кажется неловким, ты считаешь "загружен"? события, но только в опере? – Eric Bréchemier 19 December 2009 в 14:06

Насколько я понимаю, вы должны использовать только до 49151, так как от 49152 до 65535 зарезервированы для эфемерных портов

66
ответ дан Smashery 17 May 2009 в 18:03
поделиться

Просто продолжение ответа разгромить . Эфемерный диапазон портов (по крайней мере в Linux, и я подозреваю, что и другие Unices) не является фиксированным. Это можно контролировать записав в /proc/sys/net/ipv4/ip_local_port_range

Единственное ограничение (в отношении IANA) состоит в том, что порты ниже 1024 назначаются как хорошо известные порты. Порты выше, которые бесплатны для использования. Я считаю, что часто порты с номерами ниже 1024 ограничены доступом суперпользователя.

37
ответ дан Community 17 May 2009 в 18:03
поделиться
  • 1
    Я не уверен, что это было обязательно лучшее из возможных решений - оно привело к неловкости, подобной , коду в Guava , - но это не является необоснованным решением, и я предполагаю, что у них были причины для такого решения о котором я еще не думал. – Louis Wasserman 24 February 2012 в 23:33

Это зависит от того, о каком диапазоне вы говорите, но динамический диапазон увеличивается до 65535 или 2 ^ 16-1 (16 бит).

http://en.wikipedia.org/wiki/List_of_TCP_and_UDP_port_numbers

11
ответ дан Bardi Harborow 17 May 2009 в 18:03
поделиться
  • 1
    Я имел в виду, что myB был типа B, который не переопределял A.doThing(). ;) – Louis Wasserman 24 February 2012 в 23:58

Допустимые номера для портов: от 0 до 2 ^ 16-1 = от 0 до 65535
Это потому, что номер порта имеет длину 16 бит.

Однако порты делятся на:
Известные порты : от 0 до 1023 (используются для системных служб, например, HTTP, FTP, SSH, DHCP ...)
Зарегистрированные / пользовательские порты : от 1024 до 49151 (вы можете использовать его для своего сервера, но будьте осторожны с некоторыми известными приложениями: такими как сервер системы управления базами данных Microsoft SQL Server или сервер Apache Derby Network Server уже исходя из этого диапазона, т.е. не рекомендуется назначать порт MSSQL вашему серверу, иначе, если MSSQL работает, то ваш сервер, скорее всего, не будет работать из-за конфликта портов)
Динамические / частные порты : от 49152 до 65535. (не используется для серверов, а не для клиентов, например, в службе NATing)

В программировании вы можете использовать любые числа от 0 до 65535 для вашего сервера, однако вам следует придерживайтесь диапазонов, упомянутых выше, в противном случае некоторые системные службы или некоторые приложения не будут работать из-за конфликта портов.
Проверьте список большинства портов здесь: https://en.wikipedia.org/wiki/List_of_TCP_and_UDP_port_numbers

6
ответ дан Mosab Shaheen 17 May 2009 в 18:03
поделиться

Согласно RFC 793, порт является 16-битным беззнаковым целым.

Это означает, что диапазон составляет 0 - 65535.

Однако в этом диапазоне порты 0–1023 обычно зарезервированы для определенных целей. Я говорю вообще, потому что, кроме порта 0, обычно нет применения резервирования 0-1023. Реализации TCP / UDP обычно не обеспечивают резервирование, кроме 0. Вы можете, если хотите, запустить порт TLS веб-сервера на порту 80, или 25, или 65535 вместо стандартного 443. Аналогично, даже если SMTP-серверы прослушивают порт 25 по стандарту, вы можете запустить его на 80, 443 или других.

Большинство реализаций резервируют 0 для конкретной цели - случайного назначения порта. Поэтому в большинстве реализаций выражение «прослушивать порт 0» фактически означает «мне все равно, какой порт я использую, просто дайте мне какой-нибудь случайный неназначенный порт для прослушивания».

Таким образом, любое ограничение на использование порта в диапазоне 0-65535, включая 0, диапазон временного резервирования и т. Д., Является специфичным для реализации (т. Е. ОС / драйвер) , однако все, включая 0, являются действительными портами. в RFC 793.

13
ответ дан Eldakka 17 May 2009 в 18:03
поделиться

Это должно быть 65535.

7
ответ дан kiamlaluno 17 May 2009 в 18:03
поделиться
Другие вопросы по тегам:

Похожие вопросы: