Registrierung Kalender Häufig gestellte Fragen Suche Mitgliederliste Moderatoren und Administratoren Startseite
CWAIN-Clan » Allgemeines Forum » BattleCom » Hallo Gast [registrieren|anmelden]
« Vorheriges Thema Nächstes Thema » Druckvorschau | An Freund senden | Thema zu Favoriten hinzufügen
Neues Thema erstellen Thema ist geschlossen
Autor
Beitrag
Chris
Linux-Master




Dabei seit: November 2001
Herkunft: Göttingen
Beiträge: 1676

Chris ist offline
  BattleCom Nach weiteren Beiträge von  suchen Diesen Beitrag einem Moderator melden        IP Adresse Zum Anfang der Seite springen

Moin!
Ich hab mal ein bißchen mit BC experimentiert, insbesondere mit der Frage, wie sich BC mit NAT-(Masquerading)-Routern verträgt. Das Ergebnis ist ziemlich erschreckend hinsichtlich der Art, wie BC arbeitet. Ich denke, das hätten die Programmierer besser lösen können -- haben sie aber nicht ...
Wie auch immer ... Die folgenden Erläuterungen sind recht technisch -- unten gibt es noch mal eine Art HowTo, was konkret zu tun ist, damit es (hoffentlich) läuft.

Technischer Hintergrund
Also, Folgendes passiert wohl beim Verbindungsaufbau, zumindest zu unserem festen BC-Server, auf dem ja mehrere Sessions laufen. (Mag sein, daß es bei Verbindungen zu einem Server mit nur einer Session anders aussieht. Das probiere ich noch aus.)
Der Client baut zum einen eine TCP-Verbindung zum gewünschten Server auf. Wozu diese dient, weiß ich noch nicht. Ist aber eigentlich auch egal.
Desweiteren schickt er ein UDP-Paket, in dem er dem Server eine Portadresse mitteilt, auf der er (der Client) TCP-Verbindungen annimmt. Der Server (oder besser gesagt: irgendein Server, denn es ist nicht der Server, zu dem der Verbindungsaufbau versucht wird) baut jetzt seinerseits zahlreiche TCP-Verbindungen zum Client unter der vorher übermittelten Portadresse auf. Soweit ich das erkennen kann, wird für jede Session eine Verbindung aufgebaut. Darin teilen wohl die Sessions dem Client irgendwelche Daten mit, z.B. den Namen der Session, die aktuelle Spieleranzahl etc.
Wenn im Client eine Session ausgewählt worden ist, werden zahlreiche UDP-Pakete ausgetauscht, um die Kompression etc. auszuhandeln. Die UDP-Pakete gehen sowohl vom Client zum Server als auch umgekehrt. Die eigentliche Kommunikation erfolgt dann wohl im Folgenden ebenfalls über UDP, das hab ich mir aber nicht mehr angeschaut.

Routing und NAT
Die normale Situation bei unsereins ist eine PPP-Einwahl via ISDN oder DSL bei einem Provider. Über PPP wird dem Einwahlrechner eine IP mitgeteilt, unter der dieser für die Dauer der Verbindung erreichbar ist. Problematisch wird es, wenn ein lokales Netzwerk ins Internet geroutet werden soll, denn die Rechner im lokalen Netz haben nur eine lokale IP-Adresse, aber keine "nach außen" gültige. Damit die Rechner trotzdem ins Internet können, muß der Router (also der Rechner im lokalen Netz, der die Verbindung nach draußen herstellt) ein sog. NAT (Network Address Translation) oder auch Masquerading durchführen. Das Prinzip ist eigentlich ganz einfach: Ein Rechner in lokalen Netz schickt ein Paket an das Internet. Das Paket kommt beim Router an, und dieser schickt es jetzt nicht einfach raus (das wäre ein Router ohne NAT), sondern er verändert das Paket, so daß es aussieht, als hätte er selbst das Paket geschickt. Wenn eine Antwort aus dem Internet kommt, gelangt diese nun wieder zum Router. Dieser merkt, daß es sich um die Antwort auf ein Paket handelt, das von einem anderen Rechner aus dem lokalen Netz stammte, und schickt das Paket an diesen weiter. Der Rechner im lokalen Netz merkt nix davon, d.h. für den sieht es so aus, als sei er direkt mit dem Internet verbunden.

Und was hat das mit BC zu tun?
Der erste Schritt des Verbindungsaufbaus bei BC ist noch kein Problem: Der Client (im lokalen Netz) baut eine Verbindung zum Server (irgendwo im Internet) auf. Dazu schickt er ein Paket, das vom Router verändert wird. Die Antwortpakete vom Server kann der Router zuordnen und an den Client zurückschicken.
Problematisch ist der zweite Punkt Hier wird versucht, von außen (aus dem Internet) eine Verbindung zum Client aufzubauen. Die Pakete gehen aber an den Router, und dieser kann nicht wissen, daß sie eigentlich zum Client weitergeleitet werden müßten. Damit schlägt der Verbindungsaufbau fehl. Auch die später versendeten UDP-Pakete gehen nur bis zum Router und werden von dort nicht zum Client durchgereicht.

Was muß man machen, damit es geht?
Eigentlich recht einfach: Der Router muß (neben der normalen NAT-Funktionalität) alle eingehenden TCP- und UDP-Pakete auf den Portadressen 2300-2400 (der Client sucht sich aus dem Bereich zufällig eine Portnummer raus) an den Client routen. Damit sollte es dann funktionieren.


__________________
Ist diese Nachricht Spam???

Visit:
http://www.sockenseite.de/usenet/plenken.html
http://www.seidseit.de
http://www.idiotenapostroph.de.vu

($_=q!3(5/;,6;&22/%!)&&split'';$%++;$==$%; ($%=$=+=$%+$= )&&$%--;@_=map{ord
($_)-$=+$%**($=+$%)}@_;$.=$;=$=+$%;$;++;$-=$=+$.;$..=$;;$;.=$;;$-.=$-;print
+map{s#($;|$-)#$+-$.#e;chr$_}@_;

02.04.2002, 13:01 Profil von Füge  deiner Freunde-Liste hinzu Email an Chris senden Füge Chris in deine Contact-Liste ein
bastard
Administrator




Dabei seit: März 2002
Herkunft: nervenheilanstalt
Beiträge: 69

bastard ist offline
  Nach weiteren Beiträge von  suchen Diesen Beitrag einem Moderator melden        IP Adresse Zum Anfang der Seite springen

also bei mir hab ich des so eingestellt das alles ( dabei kann ich nicht zwischen udp oder tcp unterscheiden ) was auf port 2300-2400 läuft direkt an meinen rechner geht. zusätzlich hab ich noch meine ip als defaultadresse eingetragen ...

trotzdem funzt nichts


__________________

... just don't mention the war !

02.04.2002, 18:49 Profil von Füge  deiner Freunde-Liste hinzu Email an bastard senden Homepage von bastard Füge bastard in deine Contact-Liste ein AIM Screenname: nope YIM Screenname: nope
Famm
Hohepriesterin




Dabei seit: November 2001
Herkunft: Erlangen
Beiträge: 1221

Famm ist offline
  Nach weiteren Beiträge von  suchen Diesen Beitrag einem Moderator melden        IP Adresse Zum Anfang der Seite springen

Haste auch schon neu installiert??


__________________
Nimm Dein Schicksal an - es ist Gottes Weg zu Deiner Seele!
Jüdische Weisheit

02.04.2002, 20:05 Profil von Füge  deiner Freunde-Liste hinzu Email an Famm senden Homepage von Famm Füge Famm in deine Contact-Liste ein
Chris
Linux-Master




Dabei seit: November 2001
Herkunft: Göttingen
Beiträge: 1676

Chris ist offline
  Nach weiteren Beiträge von  suchen Diesen Beitrag einem Moderator melden        IP Adresse Zum Anfang der Seite springen

Zitat:
Original von bastard
also bei mir hab ich des so eingestellt das alles ( dabei kann ich nicht zwischen udp oder tcp unterscheiden ) was auf port 2300-2400 läuft direkt an meinen rechner geht. zusätzlich hab ich noch meine ip als defaultadresse eingetragen ...

trotzdem funzt nichts


Hast Du das normale NAT aktiviert? Der Client muß zum Server unter der Portadresse 47624 eine Verbindung aufbauen. Wenn die nicht korrekt geroutet wird, geht's auch nicht.

Ach ja, und noch ein Nachtrag zu meiner ersten Mail: Die beschriebene Technik funzt leider nicht, wenn mehrere Clients im lokalen Netz hängen. Im Router muß ja eingetragen werden, wohin die eingehenden Verbindungen weitergeleitet werden sollen. Da muß man sich dann leider für einen Client entscheiden.


__________________
Ist diese Nachricht Spam???

Visit:
http://www.sockenseite.de/usenet/plenken.html
http://www.seidseit.de
http://www.idiotenapostroph.de.vu

($_=q!3(5/;,6;&22/%!)&&split'';$%++;$==$%; ($%=$=+=$%+$= )&&$%--;@_=map{ord
($_)-$=+$%**($=+$%)}@_;$.=$;=$=+$%;$;++;$-=$=+$.;$..=$;;$;.=$;;$-.=$-;print
+map{s#($;|$-)#$+-$.#e;chr$_}@_;

02.04.2002, 23:34 Profil von Füge  deiner Freunde-Liste hinzu Email an Chris senden Füge Chris in deine Contact-Liste ein
Redrum
Administrator




Dabei seit: November 2001
Herkunft: Braunschweig
Beiträge: 634

Redrum ist offline
  Nach weiteren Beiträge von  suchen Diesen Beitrag einem Moderator melden        IP Adresse Zum Anfang der Seite springen

Als ich mich damals mit dem Thema beschäftigt habe, tauchte in dem Zusammenhang auch der Portbereich 28800 bis 28900 auf. Schau dir mal diesen Link an, ich hoffe, er hilft dir weiter: http://www.fli4l.de/german/howtos/howto-battlecom-fli4l.htm


__________________
_____________________
Redrum

02.04.2002, 23:44 Profil von Füge  deiner Freunde-Liste hinzu Email an Redrum senden Homepage von Redrum Füge Redrum in deine Contact-Liste ein
bastard
Administrator




Dabei seit: März 2002
Herkunft: nervenheilanstalt
Beiträge: 69

bastard ist offline
  Nach weiteren Beiträge von  suchen Diesen Beitrag einem Moderator melden        IP Adresse Zum Anfang der Seite springen

@famm

neu installiert hab ich, brachte nichts.

@chris

na sicher hab ich den port auch eingetragen. bei meinem router heißt das SUA ( single user account ) wo ich des eintrage und wie gesagt, zwischen udp und tcp kann ich da nich unterscheiden ... ansonsten hab ich noch ein srs ( static route setup ), damit kann ich aber überhaupt nichts anfangen.

@redrum

danke, ich guck heut abend gleich mal.

wär nett wenn mir einer von euch ne bc-ip schickt sobald er mich im icq sieht


__________________

... just don't mention the war !

Dieser Beitrag wurde von bastard am 03.04.2002, 09:42 Uhr editiert.

03.04.2002, 09:41 Profil von Füge  deiner Freunde-Liste hinzu Email an bastard senden Homepage von bastard Füge bastard in deine Contact-Liste ein AIM Screenname: nope YIM Screenname: nope
Asghan
Administrator



Dabei seit: Februar 2002
Herkunft: 35001 Marburg
Beiträge: 395

Asghan ist offline
  HI Bastard.. Nach weiteren Beiträge von  suchen Diesen Beitrag einem Moderator melden        IP Adresse Zum Anfang der Seite springen

kerle..kerle.. du un dein bc .. is ja schlimm .. ich würde empfehlen .. Rechner Sprengen .. hehe neee waren scherz.. aber das is schon interressant mit deinem rechner un bc .. du schaffst das irgendwann schon ..

03.04.2002, 11:30 Profil von Füge  deiner Freunde-Liste hinzu Email an Asghan senden Füge Asghan in deine Contact-Liste ein AIM Screenname: Michael YIM Screenname: Asghan
hAbibi
Tagebuchschreiber




Dabei seit: November 2001
Herkunft: Aachen..
Beiträge: 1284

hAbibi ist offline
  Nach weiteren Beiträge von  suchen Diesen Beitrag einem Moderator melden        IP Adresse Zum Anfang der Seite springen

jetzt bin ich allein in bc ... WEIL KEIN CHRIS DA IST!!!


__________________

13.04.2002, 02:17 Profil von Füge  deiner Freunde-Liste hinzu Email an hAbibi senden Homepage von hAbibi Füge hAbibi in deine Contact-Liste ein AIM Screenname: ZepZappZupp
  « Vorheriges Thema Nächstes Thema »
Neues Thema erstellen Thema ist geschlossen
Gehe zu:

Powered by: Burning Board 1.1.1c © 2001 WoltLab GbR