Estou simplesmente tentando acessar meus serviços hospedados no meu sistema pela internet. Para fazer isso, segui este guia do No-IP .
- Criei um DNS dinâmico sem IP
padmahasa-desktop.ddns.net
. - Porta encaminhada no roteador TP-Link.
192.168.0.107
É meu endereço IP interno atual. - Mas o “Port Checker” está dizendo que nenhuma das portas que encaminhei está aberta. Tentei verificar todas as portas 9099, 80, 8080 etc mostradas na imagem.
Como estou usando o Ubuntu 24.04.1, tentei verificar se há algum firewall ativo pelo comando abaixo. Mas ele mostrou que o firewall está inativo.
$ sudo ufw status
Status: inactive
- Aqui está o status da WAN e o endereço IP. Mas como @grawity_u1686 disse, o IP da WAN e o endereço IP externo não estão correspondendo.
Outra coisa a ser observada aqui é que a porta UDP 20595 foi encaminhada como parte da hospedagem de partidas multijogador no jogo 0AD e funcionou perfeitamente naquela época (talvez cerca de 8 anos atrás).
Como começar a diagnosticar para descobrir exatamente onde está o problema?
"Aberto" e "Fechado" são um pouco vagos, pois você tem pelo menos 3-5 "portas" distintas que podem estar abertas ou fechadas – o firewall do ISP, o firewall do seu roteador (e encaminhamento de porta), o firewall do seu servidor e, finalmente, se o seu servidor está atualmente executando algum serviço que esteja escutando conexões naquela porta. Simplesmente configurar uma regra de encaminhamento de porta no seu roteador não é suficiente para que ele esteja "aberto" o tempo todo.
Execute uma captura de pacote, por exemplo, Wireshark (GUI) ou tshark/tcpdump (CLI), enquanto faz a verificação de porta. Isso lhe dirá se os pacotes chegam ao seu sistema.
Se você vir os pacotes chegando ao servidor e sendo ignorados, o problema provavelmente está no firewall do servidor. (O ufw não é o único firewall; na verdade, é apenas uma ferramenta para autoconfigurar o iptables, e é possível ter regras do iptables carregadas sem que o ufw esteja ativo.)
Se você vir os pacotes chegando e uma resposta TCP 'RST' saindo, o firewall está bom, mas o servidor não está executando nenhum serviço que aceitaria conexões naquela porta.
Se você não vê nenhum pacote, eles estão sendo bloqueados pelo seu roteador ou pelo seu ISP. Hoje em dia é muito comum que os ISPs sejam o problema – veja o outro ponto.
Certifique-se de que seu roteador tenha um endereço IP público. O que sistemas externos veem sobre você (por exemplo, o que seu provedor de DDNS vê, ou o que um site "What's my IP" vê) não é necessariamente o endereço que realmente pertence ao seu sistema.
Ou seja, vá até a página "WAN Status" do seu roteador TP-Link (ou similar) e encontre o endereço IP WAN atribuído pelo seu ISP.
Se o endereço mostrado ali não corresponder ao endereço 103.228.222.115 mostrado pelo provedor DDNS, significa que sua conexão está atrás de CGNAT (ou seja, uma segunda camada de NAT feita pelo seu ISP) e suas próprias regras de encaminhamento de porta não poderão fazer nada.
Isso significa CGNAT, ou seja, NAT de nível ISP.
99% das vezes, o CGNAT é configurado de uma forma que impede que os clientes recebam qualquer conexão de entrada.
Às vezes é porque o ISP faz NAT "Many:1" e o endereço IP público é compartilhado entre vários clientes (assim como o NAT do seu próprio roteador compartilha seu endereço entre vários dispositivos). Às vezes é NAT "1:1", mas com atribuições de IP de curtíssimo prazo — potencialmente muito dinâmicas até para o DynDNS lidar — e então o ISP simplesmente não configura nenhuma tradução de entrada deliberadamente.
As soluções alternativas são:
Ligue para seu ISP e pergunte se eles podem atribuir a você um endereço IP público (ou um "IP estático", como muitos ISPs cobram). Alguns ISPs farão isso por US$ 1/mês, outros não.
Se o ISP não lhe der um endereço IP público dedicado, a outra opção é usar uma VPN que lhe dê um. (Um serviço comercial ou configure o seu próprio através de um VPS barato.)
Se os serviços forem apenas para seu próprio acesso remoto (ou seja, não necessariamente públicos), há muitas outras opções de VPN que farão o trabalho, desde que você esteja satisfeito em instalar o cliente VPN em seu telefone/laptop/etc. Tailscale ou ZeroTier serviriam.
Não é relevante, porque foi há 8 anos – sua conectividade com a Internet depende de um fator externo (a configuração de rede do seu ISP) que pode ter mudado diversas vezes ao longo desses 8 anos.
De fato, muitos ISPs implementaram o CGNAT nos últimos 8 anos, a ponto de esta ser praticamente uma pergunta semanal neste site. (e eu continuo postando respostas pensando "vou escrever uma resposta geral que posso usar para fechar como duplicado no futuro", mas acabo escrevendo novas respostas novamente, independentemente disso...)