Uma conexão iniciada na Internet só chega a um computador da rede interna se o roteador souber para qual computador entregá-la. Essa informação vem de uma regra de encaminhamento de portas, chamada em inglês de port forwarding.
A regra no cenário
No cenário, o serviço de sincronização é executado no servidor geral da matriz e recebe as conexões das filiais. A regra configurada no roteador da matriz reúne quatro informações:
- a porta externa, 9000, no endereço público da matriz,
203.0.113.20; - o endereço interno de destino,
192.168.0.50, do servidor geral; - a porta interna, 9000, em que o serviço de sincronização escuta;
- o protocolo, TCP.
O caminho de uma conexão vinda da filial
- O servidor da loja, na filial 01, abre uma conexão para o endereço
203.0.113.20, na porta 9000. - A conexão atravessa a Internet e chega ao roteador da matriz.
- O roteador da matriz encontra a regra da porta 9000 e encaminha a conexão para o endereço
192.168.0.50, na porta 9000. - O serviço de sincronização, no servidor geral, aceita a conexão.
O roteador da matriz também anota essa conexão na tabela de tradução do NAT. Por isso, as respostas do servidor geral voltam à filial pelo mesmo caminho.
Os pontos que costumam falhar
- A porta externa e a porta interna podem ser diferentes. Uma regra que recebe na porta externa 9001 e entrega na porta interna 9000 é válida. Nesse caso, o cliente precisa usar a porta externa, 9001.
- A regra aponta para um endereço interno fixo. Se o servidor mudar de endereço, a regra continua apontando para o endereço antigo.
- A regra vale para um protocolo. Uma regra para TCP não encaminha UDP, e o protocolo da regra precisa ser o mesmo do serviço.
- O firewall do servidor também precisa permitir a conexão. Mesmo com a regra correta no roteador, o firewall do servidor geral pode bloquear a porta 9000.
- O roteador precisa de um endereço público próprio. Quando o provedor compartilha o mesmo endereço público entre vários clientes, mecanismo chamado CGNAT, as conexões vindas da Internet não chegam ao roteador, e a regra não tem efeito.
No suporte
Quando a filial não alcança a matriz, convém conferir a regra de encaminhamento em três pontos: a porta externa, o endereço interno de destino e o protocolo. Em seguida, convém conferir se o serviço está escutando no servidor e se o firewall do servidor permite a conexão.
Para guardar
- O encaminhamento de portas trata as conexões que chegam de fora da rede.
- A regra liga a porta externa ao endereço interno, à porta interna e ao protocolo.
- O cliente usa sempre a porta externa.
- A regra não acompanha as mudanças de endereço do servidor.
- O encaminhamento depende de um endereço público próprio no roteador.
A regra do roteador recebe conexões na porta externa 9001 e as entrega na porta 9000 do endereço 192.168.0.50. Qual porta a filial deve configurar?
A porta externa, 9001. O roteador recebe a conexão nessa porta e a entrega na porta 9000 do servidor geral.
Em uma matriz cujo roteador mostra, na porta WAN, o endereço 100.80.3.15, a regra de encaminhamento está correta e o serviço está em execução, mas as conexões das filiais não chegam. Qual é a explicação?
O endereço 100.80.3.15 pertence à faixa usada pelos provedores no CGNAT. O roteador não tem um endereço público próprio, e as conexões iniciadas na Internet não chegam até ele. A regra de encaminhamento só passa a ter efeito quando o provedor entrega um endereço público ao roteador.