Sogar Spiele, die 100% Client / Server sind, haben manchmal Probleme, wenn sich der Client hinter NAT befindet. Peee-Peer-Spiele sind ein noch größeres Problem. Einige Spiele müssen mehrere Transporte (z. B. UDP und TCP) oder mehrere Verbindungen (z. B. einen anderen UDP-Port für Sprache) verwenden.
Wie kann sichergestellt werden, dass ein Spiel zuverlässig funktioniert, wenn es hinter einem NAT-Router ausgeführt wird?
- Peer-Peer: Es ist kein zentraler Server vorhanden. Spieler A startet ein Spiel und Spieler B möchte mitmachen
- Client-Server: Ein zentraler Server an einer bekannten Adresse (Hostname) akzeptiert alle eingehenden Verbindungen. Jeder Client kommuniziert nur mit diesem Server.
- Combo: Wo der Server nur Matchmaking betreibt, aber Spielaktualisierungen Peer-Peer sind. Unterschiedliche Peers können möglicherweise jeden Player mit einer anderen IP / einem anderen Port sehen (z. B. einige Clients befinden sich hinter demselben NAT und einige befinden sich auf einem anderen Router).