Existem duas razões.
(1) O primeiro é a conectividade de ponta a ponta mais simples . Se a origem e o destino tiverem endereço IPv4 público (ou IPv6, é claro), eles poderão se conectar em qualquer direção a qualquer momento.
192.168.0.52
Entretanto, sua IoT com IP privado pode usar o NAT SOMENTE para conectar-se a qualquer IP público na Internet sempre que desejar, mas o restante da Internet não pode se conectar a ele. Havia kludges como DNAT e uPNP que permitem especificar que algumas conexões de entrada estão ativadas, mas estão quebrando cada vez mais atualmente devido à implementação do CGNAT devido à falta de IPv4.
Uma "solução" comum (chamada) para esse problema é que todos os seus dispositivos (NAT) se conectam a algum local central com IP público (geralmente hospedado pelo fabricante do dispositivo). Isso faz com que funcione tecnicamente, mas envolve um problema de privacidade (você está fornecendo todos os dados de suas IoTs), um problema de segurança (como você está aberto a eles, funcionários violados ou descontentes podem fazer qualquer coisa que seu dispositivo IoT possa fazer e acessar ) e problema de confiabilidade (quando o fabricante encerra suas atividades ou decide parar de oferecer suporte a dispositivos antigos ou está sofrendo interrupções), todos os seus dispositivos perfeitamente funcionais (e todos os outros) deixam de funcionar.
(2) o segundo problema é que ele deixará de funcionar de qualquer maneira (mesmo para conexões de saída) em algum momento no futuro (não em um ano ou dois, mas ainda assim).
Isso ocorre porque o NAT permite que endereços privados gostem 192.168.0.52
de acessar a Internet em geral. Ele faz isso alterando o endereço de origem 192.168.0.52
para o IP público do seu roteador, mas substitui a porta de origem pela gratuita do pool.
Por exemplo, sua primeira conexão pode ser 192.168.0.52:1000
pode ser (CG) -NATed para IP (público) 198.51.100.1:1000
, e seu vizinho 192.168.0.77:1000
pode ter NATed para 198.51.100.1:1001
. Sua segunda conexão 192.168.0.52:1001
seria então enviada para NAT 198.51.100.1:1002
etc.
O problema é que mesmo coisas simples como abrir uma página da web provavelmente abrirão dezenas de conexões e usarão uma dúzia de portas (para consultas DNS, conexão HTTP (S) para diferentes elementos, análises JS em diferentes sites etc.).
Programas mais caros, como clientes de torrent, consumirão facilmente milhares de portas . E há apenas 65535 portas disponíveis para qualquer IP.
O que significa que vários de seus vizinhos que compartilham o mesmo IP CGNAT usam uma parcela maior de conexões (e mais IoTs significam mais conexões) e, de repente, todas as 65535 portas nesse IP público 198.51.100.1 são usadas. O que significa que nenhuma nova conexão pode ser estabelecida para você e seus vizinhos. O que em maior escala significa que muitas pessoas são cortadas de suas IoTs e a civilização como a conhecemos entra em colapso :-)
Como gostaríamos de adiar o colapso da civilização o máximo possível, estamos migrando para o IPv6 . Por favor, apoie a existência contínua dessa civilização usando o IPv6, se possível . Obrigado!