O problema com o VNC é que na maioria dos casos você tem pelo menos um firewall entre seu computador de destino e sua máquina. É por isso que você não consegue se conectar a menos que esteja na mesma rede.
Os ISPs costumavam colocar firewalls em suas extremidades em alguns casos (por exemplo, internet móvel), mas se você usar um roteador para compartilhar a conexão de internet entre várias máquinas (ou apenas para facilitar a conexão ) você precisa atravessar seu firewall .
Em um caso ideal, você tem a seguinte configuração:
[You]---[Your ISP]---[Internet]---[Remote ISP]---[Remote PC]
Neste caso (e supondo que os ISPs não estabeleçam restrições na conexão), você só precisa saber o endereço IP dos PCs remotos.
Mas geralmente esta é a configuração:
[You]---[Your Router]---[Your ISP]---[Internet]
|
[Remote PC]---[Remote Router]---[Remote ISP]
Agora (ainda supondo que os ISPs não restrinjam suas tentativas de conexão) o firewall do Remoter Router o bloqueará, a menos que você faça uma porta para frente na máquina de destino.
Portanto, dependendo do roteador remoto, você precisa criar uma regra de encaminhamento de porta e encaminhar o TCP / 5900 para a porta TCP / 5900 dos PCs de destino.
Notas:
- No entanto, é aconselhável mudar a porta do roteador para outra coisa, para tornar mais difícil para qualquer pessoa “invadir” o PC do seu avô.
- Há um problema com endereços IP dinâmicos (toda vez que a conexão é estabelecida, geralmente um novo endereço IP é atribuído).
- Você pode estar melhor com uma solução mais flexível (por exemplo, TeamViewer).