Dedicaded Server - mehrere Clients in einem Netz

taylorfx
Posts: 37
Joined: Mon Nov 30, 2009 8:09 am

Dedicaded Server - mehrere Clients in einem Netz

Post by taylorfx »

Hallo,

ich habe reichlich nach einer Problemlösung hier gesucht, und doch auch einige Antwortversuche gefunden, die aber meiner Meinung nach meistens falsch und Irreführend sind. Wohl am wichtigsten bei der ganzen Port-Schalterei, die so gefordert wird, ist die klare Ansage von "Stegei", ausschließlich Port 10823 udp ist im Standardfall freizuschalten, besser gesagt zu forwarden.

Auf dem Router im Server-Netz: alles was für 10823 udp kommt muss zur Server-IP-Adresse. Das ist Gesetz

Aber was ist in dem Client-Netz, setze ich diese Regel hier nicht um, kann man kein Online-Spiel connecten, und da beginnen meine Probleme, Im Client-Netz stehen mehrere Rechner, die zocken wollen. Man kann aber 10823 nur einmal fordwarden (zu einem Client). Ich verstehe überhaupt nicht, das der Port im Client-Netz überhaupt "geforwarded" werden muss. Jede gängige Serversoftware liefert die Pakete zum Client zurück ohne im Clientnetz einen Eingangsport zu erzwingen. Es wäre in der Realität auch kaum möglich, jedem ausgehenden Connect zu einem Server rückwärts einen Port zuzuordnen, der für die Antwort freigehalten wird.
Wie bitte soll das funktionieren.

Witzigerweise funktioniert das System, wenn der Rechner, dem das Portfordwarding zugeordnet ist sich in einem Online-Spiel anmeldet, dann kann auch ein weiterer Rechner an demselbem Spiel teilnehmen. Das ist aber keine Lösung, immer einen Rechner anzumelden, damit andere auch in die Session können.

Ich würde mich freuen, wenn "Stegei" hierzu vielleicht Stellung nehmen kann oder mir eine Lösung aufzeigen kann.

Gruß

Frank
User avatar
böserlöwe
GIANTS Software | Support Engineer
Posts: 10817
Joined: Thu Oct 01, 2009 10:09 pm
Location: Kreis Schaumburg
Contact:

Re: Dedicaded Server - mehrere Clients in einem Netz

Post by böserlöwe »

Ich muss gestehen, ich kann dienen Gedanken nicht so ganz folgen.

Wenn du ein eigenes Netz hast, dann ist doch auch die Frage ob sich alle Rechner an dem selben Router finden, oder ob für jeden ein eigener Router zur Verfügung steht.

Wenn ich jetzt mal von mehreren PCs in einem Netzwerk ausgehe, dann sollte nur einer der Rechner seine Porteinstellung auf dem Standardport haben, alle anderen sollten dann jeweils auhc einen anderen, einmaligen Port, innerhalb dieses Netzwerks, verwenden.
So kann man dnan im Router für jeden PC und jedes spiel darauf , auch einen eigenen Port weiterleiten.
Dann ist es auch möglich mehrere PCs zu betreiben.

Aber wie gesagt, das sind nur meine Gedanken zu deinem Text, verstanden habe ich den so nicht ganz.
taylorfx
Posts: 37
Joined: Mon Nov 30, 2009 8:09 am

Re: Dedicaded Server - mehrere Clients in einem Netz

Post by taylorfx »

Okay, jetzt weiß ich natürlich nicht wo dein Verständnisproblem liegt, aber ich versuche es mal anders, die Client-PCs hängen alle in einem Netz, sprich an einem Router. der Dedicaded Server steht an einem anderen Standort, also eigener Internetzugang, eigener Router. Eigentlich so, als würde man sich einen Server mieten.

Im Clientnetz kann man im Router eben nur einmal 10823 fortwarfen, nämlich eben nur auf einen Pc (nach meinem Wissen).

Wie soll ich denn am Client den Port bestimmen, an den die Pakete zurückgeschickt werden. Der wird scheinbar automatisch auf 10823 eingestellt wobei das nach allgemeinen Netzwerkregularien schon Unsinn ist. Clients brauchen im Allgemeinen kein Forwarding für die Antwortpakete, die zu Ihnen zurückkehren sollen. Erstens ist in den Paketen die Sie verschicken Ihre eigene Adresse enthalten und zusätzlich erzeugt der Router für sich selbst Informationen mit deren Hilfe er Pakete, die als Anwort zurückkommen dem richtigen Client zuschicken kann. Bei demnormalen Client-Server-Netzwerkverkehr ist kein Portforwarding zum Client möglich.

Wenn das Portforwarding sein muss, bedeutet das, das quasi zwei Server quasi neutral miteinander kommunizieren und erzeugt dann genau das Problem mit dem eindeutigen Portforwarding. Das hätte zur Konsequenz das man bei dem heimlichen Server den jeder Client darstellt, wenn er an einer Multiplayersession teilnimmt auch einen Port festlegen müsste, über den er vom Router Pakete zugewiesen.
Die Konfigurationsstelle habe ich bis jetzt nicht gefunden.

Bin gespannt auf deine Antwort.

Gruß

Frank
User avatar
böserlöwe
GIANTS Software | Support Engineer
Posts: 10817
Joined: Thu Oct 01, 2009 10:09 pm
Location: Kreis Schaumburg
Contact:

Re: Dedicaded Server - mehrere Clients in einem Netz

Post by böserlöwe »

Für jeden PC und amit jedes Spiel ist es wichtig das du einen Port für den LS auf dem Router für den uneingeschränkten Datenverkehr freigibst.
Der Standard ist zwar 10823, aber du kannst im Game unter Optionen selbst festlegen welcher Port dein Host belegen soll.

Der Client such sich automatisch den richtigen raus.

Woher z. B. soll ich jetzt hier bei mir wissen, wlechen Port der User xy im Nirgendwo gerade auf seinem PC eingeschaltet hat?
Demnach ist eine Zuordnung nur in dem Bereich des eigenen PCs wichitg.

Gib in der Firewal bei jedem PC in deinem Netzwerk, einen anderen Port für den LS frei, dann gibts kein Problem mehr.
taylorfx
Posts: 37
Joined: Mon Nov 30, 2009 8:09 am

Re: Dedicaded Server - mehrere Clients in einem Netz

Post by taylorfx »

Hallo,

erst mal danke für deine schnelle Reaktion, das ist schon toll,

um die sekundären Netzwerkprobleme erstmal zu eliminieren ist die Firewall sowieso aus und damit erst mal raus aus der Problematik.

Wo bitte kann man unter Optionen einen Port festlegen, die einzige Stelle das zu tun, die ich finde, ist unter
Multiplayer -> Spiel erstellen und genau die sagt aus über welchen Port mein Server in diesem Fall zu erreichen ist, das ist klar und wird ja jetzt im Webbrowser des Dedicaded Server ja auch eingestellt (Ist ja sogar Default).

Aber darum geht es doch garnicht. Mein Dedicaded Server funktioniert. Allerdings kommt eine Session mit dem Server nur zustande wenn ich dasselbe Portforwarding auch auf dem Router eintrage, an dem dem der Client hängt, und das ist ungewöhnlich, wenn der Client eben jetzt nicht mehr der Server ist und zweitens ist auch das Problem, wenn sich ein zweiter Client aus demselben Netz anmelden will, das geht das nämlich dann nicht. Das es so nicht funktioneren kann, ist mir netzwerktechnisch ganz klar, aber ich suche eine Lösung, ich befürchte nur, da müsste Giants was ändern, ich vermute mal, das der Dedicaded Server hardcodiert immer nach Port 10823 schiebt.

Wenn ich mich nicht verständlich machen kann, kannst du mir gerne deine Telefonnummer schicken per PN, dann rufe ich dich an.

Gruß

Frank
Schroeffu
Posts: 55
Joined: Thu Oct 25, 2012 11:57 pm

Re: Dedicaded Server - mehrere Clients in einem Netz

Post by Schroeffu »

taylorfx wrote:Ich verstehe überhaupt nicht, das der Port im Client-Netz überhaupt "geforwarded" werden muss.
Genau, das wäre blödsinn für den Client und nicht nötig.
Der Client kann auch Server sein, und nur dann ist ein PortForwarding notwendigt.
taylorfx
Posts: 37
Joined: Mon Nov 30, 2009 8:09 am

Re: Dedicaded Server - mehrere Clients in einem Netz

Post by taylorfx »

Jepp,
Und genau deswegen ist das bestimmt auch so, der Client ist immer auch ein bisschen Server, hoffentlich wird das noch geändert, das der horchende Port auf Clientseite variabel bestimmbar ist, dann muß man zwar für jeden Client ein Portforwarding eintragen (in der Businesswelt undenkbar), aber was soll es. so viele Clients werden es beim Spielen in einem Netz nicht werden. Aber der Dedicaded Server muß dann auch an die Ports adressieren. Es bei Dedicaded Servernutzung abzuschalten wäre wohl bestimmt einfacher

Gruß

Frank
Stegei
GIANTS Software | CTO
Posts: 1788
Joined: Sat Jun 09, 2007 10:51 am

Re: Dedicaded Server - mehrere Clients in einem Netz

Post by Stegei »

Für die Clients musst du keinen Port forwarden. Das einzige was du machen musst, ist sicherstellen, dass der Server über den eingestellten Port (default 10823) erreichbar ist.
Welche Ports die Client verwenden, spielt keine Rolle. Diese verwenden irgendeinen freien verfügbaren Port und versuchen damit auf den Server zu verbinden.

Das Port Forwarding ist nur dann nötigt, wenn eingehende Verbindungen angenommen werden müssen (also beim Server).

Ich versuche das ganze mal etwas an einem Beispiel zu erklären.
1. Der Server horch auf einem Port (z.B. 10823), und hat die interne IP 192.168.1.50 und die Externe 99.99.20.20
2. Der Client (z.B. IP 192.168.1.100) will mit dem Server verbinden. Er fordert eine Verbindung beim Betriebssystem an. Dieses weist dieser Verbindung den lokalen Port 8291 zu.
3. Der Verbindungsanforderung geht an den lokalen Router des Clients. Dieser wählt einen freien externen Port (kann der gleiche sein wie der lokale oder ein beliebig anderer).
4. Der lokale Router wählt z.B. 1234 als den externen Port. Er speichert sich: Externer Port 1234 geht an den lokalen Port 8291 and IP 192.168.1.100
5. Angenommen die Externe IP ist 81.91.21.45, dann wird eine Verbindunganfordung an den Server geschickt also an 99.99.20.20:10823
6. Der Router beim Server weiss (wegen Portforwarding) dass alle Requests an Port 10823 weiter an die Lokale IP 192.168.1.50 mit Port 10823 weitergeleitet werden müssen.
7. Der Server erhält die Antwort.
8. Der Server Schickt dann die Daten zurück an den Client an 81.91.21.45:1234
9. Der Router beim Client weiss (wegen automatischer Speicherung der Verbindung), dass alle Daten von 192.168.1.50:10823 an den Port 1234, weitergeleitet werden müssen zum Client mit der IP 192.168.1.100 und dem Port 8291.


Der Router bei den Clients, wählt sich also automatisch die externen Port je nach dem was gerade am besten passt. Es muss hier also nichts manuell forwarded werden oder so. Es ist allerdings wichtig, dass der Router so eingestellt ist, dass er asymmetrische Port Zuweisungen zulässt. Also einen anderen externen Port als internen, da es sehr wahrscheinlich ist, dass alle Clients den selben internen Port wählen. Bei allen typischen Routern die ich kenne ist das allerdings der Fall.
taylorfx
Posts: 37
Joined: Mon Nov 30, 2009 8:09 am

Re: Dedicaded Server - mehrere Clients in einem Netz

Post by taylorfx »

Hi,

erst mal Danke für die schnelle Antwort, die Ausführung über den Netzwerkverkehr kann ich nachvollziehen, das ist mir verständlich und bekannt, daher ja auch meine Verwunderung über das bei mir bis jetzt zwingende Forwarding auf der Clientseite. Ich habe halt nach einer Erklärung gesucht für diese Problematik. Ich werde heute Abend noch mal beide Router unter die Lupe nehmen, auf dem Router im Clientnetz das Forwarding rausnehmen und einen Debug auf dem Router Servernetz mitlaufen lassen. (Wenn beide Netze wie in dem Beispiel 192.168.1. ... wären, würde es meiner Meinung nach auch nicht funktionieren, dann würde der Router vor dem Server zwar Pakete bekommen und entsprechend forwarden, der Server wird seine Pakete aber züruck ins 1-er Netz schicken und der Router würde nichts rausschicken weil er ja selbst im 1-er Netz hängt.

Aber egal, das Beispiel ist schon klar
taylorfx
Posts: 37
Joined: Mon Nov 30, 2009 8:09 am

Re: Dedicaded Server - mehrere Clients in einem Netz

Post by taylorfx »

Hallo,

Das Problem hat sich wohl erledigt, es lag wie so Off zwischen den Ohren. Ein falsches Byte in der Netzwerkmaske bei Forwarding auf dem Router im Servernetz hat das Problem verursacht. Jetzt funktionieren alle Clients im Clientnetz auch ohne Forwarding auf dem Router in diesem Netz, so wie es sich gehört.

Gruß

Frank

Edit böserlöwe: Das ist doch schön zu lesen, dann noch viel Spass. Hier mach ich dann **Closed**
Locked