Aplicativos como o TeamViewer são [Cliente - Servidor - Cliente]: eles dependem do uso de um servidor externo às redes locais de ambas as partes. Cada extremidade é um cliente e inicia sua própria conexão com o servidor externo. Firewalls e roteadores NAT geralmente transmitem conexões de saída com bastante liberdade, e o NAT permite que as respostas (vindas do servidor externo) atinjam os nós internos corretos (PCs).
Os serviços True [Client - Server] exigem que o servidor tenha um endereço roteável. Um PC que fornece um serviço por trás de um roteador NAT não tem um endereço roteável, apenas o roteador mais próximo da internet tem um. Portanto, as conexões de entrada para um determinado IP e porta # devem ser roteadas para o nó de rede local (PC) específico conhecido pelo seu roteador para atender a essa porta específica - por exemplo, Port Forwarded.