¿Que é o Porto 0 usado?

O porto 0 non é un número de porto real, pero hai un propósito para iso

A diferenza da maioría dos números de porto , o porto 0 é un porto reservado na rede TCP / IP , o que significa que non debe ser usado en mensaxes TCP ou UDP .

O porto 0 ten un significado especial na programación de rede , en particular a programación de socket Unix, para solicitar portos dinámicos e dinámicos. O porto cero é como un porto comodín que lle indica ao sistema que busque un número de porto axeitado.

Os portos de rede en TCP e UDP varían desde o número cero ata o 65535. Os números de porto dentro do intervalo entre cero e 1023 defínense como portos de sistema ou portos coñecidos. A Autoridade de Números Asignados por Internet (IANA) mantén unha lista oficial do uso previsto destes números de porto en internet, eo porto do sistema 0 non se debe empregar.

Como funciona o porto 0 na programación de rede

Configurar unha nova conexión de socket de rede require que un número de porto se distribúa tanto no lado de orixe como de destino. As mensaxes TCP ou UDP enviadas polo orador (fonte) conteñen ambos os números de porto para que o destinatario da mensaxe (destino) poida emitir mensaxes de resposta ao punto final do protocolo correcto.

IANA ten asignado os portos de sistema designados previamente para aplicacións básicas de Internet como servidores web (porto 80), pero moitas aplicacións de rede TCP e UDP non teñen o seu propio porto de sistema e deben obter un do sistema operativo do seu dispositivo cada vez que se inicien.

Para asignar o seu número de porto de orixe, as aplicacións chámano ás funcións de rede TCP / IP como ligar () para solicitar un. A aplicación pode fornecer un número fixo (codificado duro) para ligar () se prefiren pedir un número específico, pero tal solicitude pode fallar debido a que outra aplicación executante no sistema pode estar a empregar actualmente.

Alternativamente, pode fornecer o porto 0 para ligar () como parámetro de conexión no seu lugar. Isto activa o sistema operativo para buscar automaticamente e devolver un porto axeitado dispoñible no rango de número de porto dinámico TCP / IP.

Teña en conta que a aplicación en realidade non se lle concede o porto 0 senón algún outro porto dinámico. A vantaxe desta convención de programación é a eficiencia. No canto de cada aplicación ter que implementar e executar código para probar múltiples portos ata obter un válido, as aplicacións poden confiar no sistema operativo para facelo.

Unix, Windows e outros sistemas operativos varían lixeiramente no seu manexo do porto 0, pero aplícase a mesma convención xeral.

Porto 0 e seguridade de rede

O tráfico de rede enviado a través de Internet para os hosts que escoitan no porto 0 pode xerarse a partir de atacantes de rede ou accidentalmente por programas programados de forma incorrecta. As mensaxes de resposta que os hosts xeran en resposta ao tráfico do porto 0 poden axudar aos atacantes a aprender máis sobre o comportamento e as posibles vulnerabilidades da rede deses dispositivos.

Moitos provedores de servizos de Internet (ISP) bloquean o tráfico no porto 0 (mensaxes entrantes e saíntes) para axudar a protexer estas fazañas.