Para que serve a porta 0?

Índice:

Para que serve a porta 0?
Para que serve a porta 0?
Anonim

Porta 0 tem um significado especial na programação de rede, particularmente no sistema operacional Unix quando se trata de programação de soquete onde a porta é usada para solicitar portas dinâmicas alocadas pelo sistema. A porta 0 é uma porta curinga que informa ao sistema para encontrar um número de porta adequado.

Ao contrário da maioria dos números de porta, a porta 0 é uma porta reservada em redes TCP/IP, o que significa que não deve ser usada em mensagens TCP ou UDP. As portas de rede em TCP e UDP variam do número zero até 65535. Os números de porta no intervalo entre zero e 1023 são definidos como portas não efêmeras, portas do sistema ou portas conhecidas. A Internet Assigned Numbers Authority (IANA) mantém uma lista oficial do uso pretendido desses números de porta na Internet, e a porta 0 do sistema não deve ser usada.

Como funciona a porta TCP/UDP 0 na programação de rede

Image
Image

Configurar uma nova conexão de soquete de rede requer que um número de porta seja alocado nos lados de origem e destino. As mensagens TCP ou UDP enviadas pelo originador (origem) contêm os dois números de porta para que o destinatário da mensagem (destino) possa emitir mensagens de resposta para o terminal de protocolo correto.

IANA pré-alocou portas de sistema designadas para aplicativos básicos da Internet, como servidores da Web (porta 80), mas muitos aplicativos de rede TCP e UDP não têm sua própria porta de sistema e devem obter uma do sistema operacional do dispositivo toda vez que são executados.

Para alocar seu número de porta de origem, os aplicativos chamam funções de rede TCP/IP como bind() para solicitar um. O aplicativo pode fornecer um número fixo (codificado) para bind() se preferir solicitar um número específico, mas tal solicitação pode falhar porque outro aplicativo em execução no sistema pode estar usando-o no momento.

Alternativamente, ele pode fornecer a porta 0 para bind() como seu parâmetro de conexão. Isso aciona o sistema operacional para procurar e retornar automaticamente uma porta disponível adequada no intervalo de números de porta dinâmica TCP/IP.

A aplicação não recebe a porta 0, mas sim alguma outra porta dinâmica. A vantagem desta convenção de programação é a eficiência. Em vez de cada aplicativo implementar e executar o código para testar várias portas até obter uma válida, os aplicativos dependem do sistema operacional.

Unix, Windows e outros sistemas operacionais variam no manuseio da porta 0, mas a mesma convenção geral se aplica.

Porta 0 e Segurança de Rede

Tráfego de rede enviado pela Internet para hosts que escutam na porta 0 pode ser gerado por invasores de rede ou acidentalmente por aplicativos programados incorretamente. As mensagens de resposta que os hosts geram em resposta ao tráfego da porta 0 ajudam os invasores a aprender o comportamento e as possíveis vulnerabilidades de rede desses dispositivos.

Muitos provedores de serviços de Internet (ISPs) bloqueiam o tráfego na porta 0, tanto mensagens de entrada quanto de saída, para se proteger contra essas explorações.

FAQ

    O que são números de porta?

    Os números de porta usados para conexões de rede TCP/IP atuam como informações de endereço, identificando os remetentes e destinatários de uma mensagem. Os números de porta permitem que vários aplicativos na mesma rede compartilhem recursos ao mesmo tempo.

    Como encontro os números das portas?

    Para encontrar o número da porta de um endereço IP específico, vá para o prompt de comando, digite netstat -a e pressione Enter. Você verá uma lista de conexões TCP ativas junto com endereços IP e números de porta separados por dois pontos.

    Posso conectar à porta 0?

    Não. Oficialmente, a porta 0 não existe e você não pode se conectar a ela, pois é um número de porta inválido. No entanto, você pode enviar um pacote de Internet de e para a porta 0 da mesma forma que faria com outro número de porta.

Recomendado: