Por que o redirecionamento de porta é necessário para servidores, mas não para clientes?

2

Sempre que eu hospedo um servidor, sou obrigado a encaminhar as portas de escuta do servidor no meu dispositivo NAT.

No entanto, se eu me conectar a um servidor remoto, não será necessário encaminhar a porta usada para dados de entrada do servidor remoto.

Por que isso acontece?

    
por asmo 02.04.2011 / 18:48

3 respostas

2

Quando você faz uma conexão de saída, o endereço de destino pode ser visto no pacote, o endereço de origem do seu host interno está no pacote, então a caixa NAT "apenas" substitui o endereço de origem com o seu próprio e configura uma entrada em uma tabela interna, de modo que, para pacotes que correspondam a "características desta conexão", ela saiba substituir o endereço de destino pelo endereço original, para que os pacotes voltem para você.

Para um servidor, o pacote entra no NAT do lado de fora e não há nada para dizer para qual host interno ele está destinado. Não há tabela atual de conexões. Então, em vez disso, você precisa definir uma regra dizendo "novas solicitações de conexão para a porta 22 devem ser passadas para essa caixa aqui".

Além disso, o software executado em seus computadores pode optar por falar com qualquer caixa NAT local com NAT-PMP (Apple) ou UPnP (protocolo da Microsoft) para configurar essas associações automaticamente. Mas isso só ajuda muito quando você não se importa com qual número de porta externo você tem.

    
por 03.04.2011 / 00:51
1

A conexão de saída é assumida como sendo o que você pretende e deseja, portanto, permite a conexão por padrão. O contrário não é verdade; você não desejaria que qualquer cliente da internet do rouge se conectasse a qualquer servidor em seu computador, portanto, você deve explicitamente abri-lo. Caso contrário, seria o mesmo que colocar seu servidor na internet sem firewall.

    
por 02.04.2011 / 19:02
0

O NAT bloqueia conexões de entrada e permite a saída de conexões. Uma vez que a conexão é feita, os pacotes podem ir de qualquer maneira.

Se você configurar um servidor, você terá que lidar com o NAT se usar o NAT. Se você se conectar a um servidor, eles terão que lidar com o NAT no final, se usarem NAT.

Se o NAT bloqueasse as conexões de saída (isso não acontece, mas supondo que sim), você não conseguiria acessar a Internet.

    
por 14.06.2012 / 16:42

Tags