Clients aus mehreren Subnetzen können nicht gleichzeitig eine Verbindung zum Server herstellen

Clients aus mehreren Subnetzen können nicht gleichzeitig eine Verbindung zum Server herstellen

Ich habe in der Vergangenheit für mehrere Spiele Server eingerichtet, denen entweder Spieler von außerhalb meines lokalen Netzwerks oder Spieler aus meinem lokalen Netzwerk beitreten konnten, aber nicht beide gleichzeitig. Wer zuerst beitrat, blockierte den anderen. Sowohl lokale als auch „Remote“-Verbindungen (Internet) erfolgen über dieselbe Netzwerkschnittstelle auf dem Server-Host. Andere Spieler desselben „Typs“ (lokal oder Internet) wie der erste, der beigetreten ist, können eine Verbindung herstellen, aber keiner vom anderen „Typ“. Wenn alle diese Spieler die Verbindung trennen, können die Spieler des anderen „Typs“, die zuvor keine Verbindung herstellen konnten, eine Verbindung herstellen.

Ich verzichte bewusst auf die Namen der konkreten Spiele, da ich nicht nach diesen Spielen frage. Wenn sich herausstellt, dass die Spielsoftware die Ursache ist, dann ist das so. Diese Frage bezieht sich auf mögliche Netzwerkprobleme, die die Ursache sein könnten.

  • Gibt es eine Erklärung dafür, warum sich das Netzwerk so verhält?
  • Wenn es sich um ein Netzwerkproblem handelt, gibt es eine Lösung oder Problemumgehung?
  • Wenn es sich um ein Software-/Serverproblem handelt, gibt es eine Erklärung dafür, wie dieses Netzwerkverhalten zustande kommen könnte? Und gibt es eine Art Workaround, der nicht zu invasiv ist und keine Topologieänderungen erfordert? Vielleicht eine Art Tunneling/Weiterleitung, um den Server „auszutricksen“?

Einzelheiten

HAFTUNGSAUSSCHLUSS: Ich bin kein Netzwerkexperte.
Ich habe zwei NAT-Router „verkettet“. Ich betrachte sie als „inneren“ und „äußeren“. Jeder führt DHCP aus und erstellt zwei Subnetze. (192.168.1-2.x)Beachten Sie, dass derzeit keine Probleme mit dem Netzwerk bekannt sind. Jeder kann auf das Internet und alle Adressen/Dienste zugreifen, die ich erwarte.

Netzwerk

Die Server befinden sich normalerweise hinter dem inneren Router. Die lokalen Benutzer befinden sich hinter dem äußeren Router und stellen die Verbindung über Portweiterleitung her (sie befinden sich in einem anderen Subnetz als der Server). Remote-/Internetbenutzer gelangen ebenfalls über Portweiterleitung durch den äußeren Router. Beachten Sie erneut, dass jedes Szenario unabhängig funktioniert. Nur wenn sowohl Remote- als auch „lokale“ Clients gleichzeitig versuchen, eine Verbindung herzustellen, wird jemand blockiert.

Was dies besonders merkwürdig macht (und vielleicht darauf hinweist, dass die Software der Übeltäter ist), ist, dass die lokalen und Remote-Verbindungen, da sie beide von einem anderen Subnetz weitergeleitet werden, für den Server identisch erscheinen sollten, wenn ich mich nicht irre.

Antwort1

Doppeltes NAT ist Ihr Problem.

Ihre Konfigurationsollenfunktioniert, aber es ist nicht überraschend, dass Sie Probleme haben. Echte Router würden in Ihrem Setup problemlos funktionieren, aber hintereinander gestapelte NAT-Gateway-„Router“ können zu einer Reihe unerwünschter Verhaltensweisen führen.

Es ist vernünftig, hierfür eine Erklärung zu wollen, aber in einem Fall, in dem die Konfiguration „funktionieren sollte“, wäre die Erklärung darin zu finden, wie jeder Router NAT und/oder Portweiterleitung implementiert, und selbst das Benutzerhandbuch des Geräts liefert dazu nicht genügend technische Details.

Wenn Sie den Spieleserver in ein Subnetz hinter einem einzelnen Router/Gateway mit Internetzugang verschieben, sollten Ihre Probleme verschwinden.

verwandte Informationen