sobre redes que protocolos protocolo para niños datos cual comunicacion capa administración acceso tcp network-protocols

redes - red de datos tcp ip



¿Cuál es el número de puerto de red TCP/IP más grande permitido para IPv4? (8)

Debería ser 65535.

¿Cuál es el número de puerto más alto que se puede usar?



El número de puerto es un entero de 16 bits sin signo, por lo que 65535.


El número de puerto más grande es un corto sin firmar 2 ^ 16-1: 65535

Un puerto registrado es uno asignado por la Corporación de Internet para Nombres y Números Asignados (ICANN) para un uso determinado. Cada puerto registrado está en el rango 1024–49151.

Desde el 21 de marzo de 2001, la agencia de registro es la ICANN; Antes de ese tiempo era la IANA.

Los puertos con números más bajos que los de los puertos registrados se denominan puertos conocidos; Los puertos con números mayores que los de los puertos registrados se denominan puertos dinámicos y / o privados.

Source


Los números válidos para los puertos son: 0 a 2 ^ 16-1 = 0 a 65535
Esto se debe a que un número de puerto es de 16 bits de longitud.

Sin embargo los puertos se dividen en:
Puertos conocidos : 0 a 1023 (utilizados para servicios del sistema, por ejemplo, HTTP, FTP, SSH, DHCP ...)
Puertos registrados / de usuario : 1024 a 49151 (puede usarlo para su servidor, pero tenga cuidado con algunas aplicaciones famosas: como el servidor de sistema de gestión de base de datos Microsoft MSSQL (MSSQL) o el servidor de red Apache Derby ya están tomando este rango, es decir, no se recomienda asignar el puerto de MSSQL a su servidor; de lo contrario, si MSSQL se está ejecutando, es probable que su servidor no se ejecute debido a un conflicto de puerto)
Puertos dinámicos / privados : 49152 a 65535. (no se utilizan para los servidores sino para los clientes, por ejemplo, en el servicio NATing)

En la programación, puede usar cualquier número del 0 al 65535 para su servidor, sin embargo, debe atenerse a los rangos mencionados anteriormente, de lo contrario, algunos servicios del sistema o algunas aplicaciones no se ejecutarán debido a un conflicto de puertos.
Consulte la lista de la mayoría de los puertos aquí: https://en.wikipedia.org/wiki/List_of_TCP_and_UDP_port_numbers


Según RFC 793, el puerto es un int sin signo de 16 bits.

Esto significa que el rango es 0 - 65535.

Sin embargo, dentro de ese rango, los puertos 0 - 1023 generalmente se reservan para propósitos específicos. Digo en general porque, aparte del puerto 0, generalmente no hay cumplimiento de la reserva 0-1023. Las implementaciones de TCP / UDP por lo general no imponen reservas aparte de 0. Puede, si lo desea, ejecutar el puerto TLS de un servidor web en el puerto 80, o 25, o 65535 en lugar del estándar 443. Del mismo modo, incluso si lo es el estándar que escuchan los servidores SMTP en el puerto 25, puede ejecutarlo en 80, 443 u otros.

La mayoría de las implementaciones reservan 0 para un propósito específico: asignación aleatoria de puertos. Así que en la mayoría de las implementaciones , decir "escuchar en el puerto 0" en realidad significa "no me importa qué puerto use, solo dame un puerto aleatorio no asignado para escuchar".

Por lo tanto, cualquier limitación en el uso de un puerto en el rango 0-65535, incluido 0, rango de reserva efímero, etc., es específica de la implementación (es decir, sistema operativo / controlador) , sin embargo, todos, incluido 0, son puertos válidos en el RFC 793.


Según tengo entendido, solo debe usar hasta 49151, ya que desde 49152 hasta 65535 están reservados para puertos efímeros.


Solo un seguimiento a la respuesta de smashery . El rango de puerto efímero (al menos en Linux, y sospecho que otros Unices también) no es un problema fijo. Esto se puede controlar escribiendo a /proc/sys/net/ipv4/ip_local_port_range

La única restricción (en lo que concierne a IANA) es que los puertos por debajo de 1024 están designados como puertos conocidos. Puertos por encima de que son gratuitos para su uso. A menudo encontrará que los puertos por debajo de 1024 están restringidos al acceso de superusuario, creo que por esta misma razón.