Anche i giochi che sono client / server al 100% a volte hanno problemi quando il client è protetto da NAT. I giochi Peee-peer sono ancora più grandi. Alcuni giochi devono utilizzare più trasporti (come UDP e TCP) o connessioni multiple (come una diversa porta UDP per la voce).
Quali sono alcuni modi per assicurarsi che un gioco funzioni in modo affidabile quando si esegue dietro un router NAT?
- Peer-Peer: non esiste un server centralizzato. Il giocatore A inizia una partita e il giocatore B vuole unirsi
- Client-Server: un server centralizzato su un indirizzo ben noto (nome host) accetta tutte le connessioni in entrata. Ogni client comunica solo con quel server.
- Combo: dove il server è solo matchmaking, ma gli aggiornamenti di gioco sono peer-peer. Peer diversi possono vedere ogni giocatore con un IP / porta diversi potenzialmente (ad esempio alcuni client sono dietro lo stesso NAT e alcuni si trovano su un router diverso)