Il comportamento dietro NAT è questo:
Un pc dietro NAT fa una richiesta (utilizzando una sua porta locale) verso una determinata destinazione. La richiesta arriva al NAT che la inoltre alla destinazione. La destinazione risponde al NAT, che fa avere la risposta al dispositivo giusto. Questo perché il NAT associa sorgente-porta-destinazione.
Per poter raggiungere un client in VPN, quindi, il NAT deve avere già le associazioni. Il server serve proprio per creare questa associazione. A non può contattare direttamente B, perché il NAT di B non ha l'associazione.
A deve contattare il sevrer, B deve contattare il server e solo a questo punto A può contattare B, ma passando dal server.
In pratica con un NAT funziona tutto bene quando le richieste partono dall'interno. Se una richiesta arriva dall'esterno, il NAT la filtra e la scarta/inoltra.
Il server di una VPN deve quindi poter essere raggiungibile.