O endereço, o gateway, o NAT, o endereço público, o encaminhamento de portas e o serviço se juntam no caminho completo entre a loja e a matriz. Enxergar esse caminho como uma sequência de etapas é o que permite localizar uma falha.
O caminho, etapa por etapa
A filial não pode acessar o endereço 192.168.0.50 pela Internet, porque esse endereço é privado. A filial usa o endereço público da matriz, e cada etapa do caminho tem um conceito responsável:
- Servidor da filial, no endereço
192.168.1.10: o destino está fora da rede da filial, e o servidor da filial envia o pacote ao gateway. - Roteador da filial, no endereço
192.168.1.1: o NAT troca o endereço de origem pelo endereço público da filial. - Internet: os roteadores dos provedores levam o pacote até o endereço
203.0.113.20, na porta 9000. - Roteador da matriz: o encaminhamento de portas entrega a conexão ao endereço
192.168.0.50, na porta 9000. - Servidor da matriz: o serviço de sincronização, que escuta na porta 9000, aceita a conexão.
Como testar o caminho
O primeiro passo é descobrir, no servidor da matriz, o endereço público pelo qual a matriz aparece na Internet:
curl -4 ifconfig.me: no Prompt de Comando;curl.exe -4 ifconfig.me: no Windows PowerShell.
O segundo passo é testar, a partir do servidor da filial, a porta nesse endereço:
Test-NetConnection 203.0.113.20 -Port 9000: no PowerShell;telnet 203.0.113.20 9000: onde o cliente telnet estiver habilitado.
O terceiro passo é conferir, no registro do serviço de sincronização, no servidor da matriz, se as conexões da filial estão chegando. Se a porta responde e nada aparece no registro, o caminho de rede funciona, e a investigação passa para o programa.
O teste precisa partir de fora da matriz
O teste do endereço público precisa partir de fora da rede da matriz. Testar o endereço público de dentro da própria matriz costuma falhar mesmo com tudo certo, porque muitos roteadores não conseguem encaminhar uma conexão que sai da rede interna e volta pelo próprio endereço público. O recurso que permite esse retorno se chama NAT loopback. Para um teste externo, servem a filial ou um celular conectado pela rede móvel, como o 4G.
Redes diferentes de propósito
A matriz usa endereços que começam com 192.168.0, e a filial usa endereços que começam com 192.168.1. Se as duas redes usassem a mesma faixa e depois fossem ligadas por uma VPN, um computador da filial, ao procurar o endereço 192.168.0.50, concluiria pela máscara que o destino é local e nem enviaria o pacote ao túnel da VPN.
No suporte
Percorrer o caminho na ordem localiza a falha:
- na filial, o endereço e o gateway do servidor da filial;
- na Internet, a conexão das duas pontas com os provedores;
- na borda da matriz, o endereço público e a regra de encaminhamento;
- no servidor da matriz, o serviço de sincronização e a porta em que ele escuta.
Para guardar
- A filial chega à matriz pelo endereço público, nunca pelo endereço privado.
- Cada etapa do caminho corresponde a um conceito: gateway, NAT, Internet, encaminhamento de portas e serviço.
- O teste do endereço público deve partir de fora da rede da matriz.
- Redes ligadas por VPN precisam usar faixas de endereços diferentes.
De dentro da matriz, o comando Test-NetConnection 203.0.113.20 -Port 9000 indica falha, e o técnico conclui que a regra do roteador está errada. A conclusão é confiável?
Não. Testar o endereço público de dentro da própria rede falha em roteadores sem NAT loopback. O teste deve ser refeito de fora, a partir da filial ou de um celular conectado pela rede móvel.
O teste da porta 9000, feito a partir do servidor da filial, é bem-sucedido, mas nada aparece no registro do serviço de sincronização. Onde está o problema?
O caminho de rede funciona até o serviço, porque a porta aceitou a conexão. A investigação passa para o programa, como a configuração do destino na filial, a autenticação e a versão do serviço.