!! Hosting !!

Hilfe zu den Einstellungen, Eigenarten und Problemzonen von Clusterball, Antworten zu weiterführenden Fragen.

Moderatoren: blindfury, feuerpfeil, float

Antworten
Rainlords
Site Admin
Beiträge: 297
Registriert: Montag 15. März 2004, 18:52
Wohnort: Cologne / Köln
Kontaktdaten:

!! Hosting !!

Beitrag von Rainlords »

(Bild Deutsche Version siehe weiter unten)

To install Clusterball is not the big problem, playing Clusterball is a little bit harder!
But trying to host a game some people are going crazy about!
For all those people here's a little instruction:

Before we start, a small note: A pc-system is never equal to another. Different routers and providers producing different problems too. Nevertheless, the following instructions were tested on many systems and surroundings and worked well. So if you'll have a problem after this little help, we are sure that it can't be difficult to solve this problem too. Just ask!


Your home network

Before trying to host a game you should check your network for the correct basically configuration! Don't say "I have, because it is working!". Not any working network is a correct configured network as well. So please check this 2 things:

1.) All pc's in your network need a fixed ip-adress (e.g. 192.168.0.2, 192.168.0.3 ...). The ip-adress mustn't be assigned by DHCP or automatic!

2.) The DNS-server adress is your router-ip-adress (if the router supports DNS-forwarding) or the DNS-adress of your internet-provider (ask him, if you don't know the adress)


Router-Configuration

Remember! Routers are never equally!

Sometimes you only need to define the host-pc as a so called DMZ-system. This meens, that you give this pc the permission to access the global Internet.

The best way (and the most needed) is a controlled port-forwarding. In this case you give any PC in your network only that permissions they really need.

The following ports (and only these) are necessary to been forwarded:

For the game-pc [playing CB and hosting temporary] (e.g. IP-Adress: 192.168.0.2):

Code: Alles auswählen

Port      IP-Adress       Protocol   Port 
12300    e.g. 192.168.0.2    UDP       12300 

That's all

For the host-pc [dedicated-host] (e.g. IP-Adress 192.168.0.3)

Code: Alles auswählen

Port       IP-Adress      Protocol    Port    Comment 
12307    e.g. 192.168.0.3    UDP      12307    for 1. Dedi 
12309    e.g. 192.168.0.3    UDP      12309    for 2. Dedi 
12311    e.g. 192.168.0.3    UDP      12311    for 3. Dedi 
12313    e.g. 192.168.0.3    UDP      12313    for 4. Dedi 
12315    e.g. 192.168.0.3    UDP      12315    for 5. Dedi



Ok, that's it! Now you can host

If you're looking now at the Clusterball-host-list you maybe see still an "N/A" for your host! Don't panic!
"N/A" meens not, that your dedicated host is not working!

What, why, sure?

Ok, first check if there is a firewall running on your system. If so, please unlock the ports 12300 - 12316 or disable the firewall for testing!

OK, better? No? No problem, next step:

Ask another player if he can join your host, or not! That you see a "N/A" at your host meens not, that other player can't reach the host too (more for that see beneath).

OK, he/she can? Yeaaah! If not, please check the last steps once again. We don't now any reason, why it should not be function!


Join the own Host!

Ok, we've now our own host. All the other players can join....but, may be, you not!

The problem is that the is a "misunderstanding" between your game-pc, your host-pc and finally the router!
To solve this problem you need a little help which comes with XdreamCC (former "CBXdream")

Please go to the folder "properties" in your XDreamCC-program.
There is a check-box called "host helper". Activate this feature at your game-pc (and only there) and fill out the field with the internal ip-adress of your host-pc!

Now, you can join your dedicated host and PLAY BALL !
Rainlords
Site Admin
Beiträge: 297
Registriert: Montag 15. März 2004, 18:52
Wohnort: Cologne / Köln
Kontaktdaten:

Beitrag von Rainlords »

Clusterball zu installieren ist nicht schwer, es zu spielen schon schwieriger. Seinen eigenen Host aber ans Laufen zu bringen ist dann manchmal schon eine unüberbrückbar scheinende Hürde. Für alle die es trotzdem wollen, hier eine kleine Anleitung!

Eins vorweg: Nicht alle Systeme sind gleich, Provider und Router schon mal gar nicht! Dennoch sind die hier beschriebenen Wege auf mehreren Systemen getestet worden und sie laufen! Ich gehe insofern davon aus, dass es auch bei Dir klappen dürfte und wenn nicht, dann liegt es sicherlich nur an einer Kleinigkeit und da helfe ich auch gerne weiter.



Das eigene Netzwerk

Grundlage für alle weiteren Schritte ist ein sauber installiertes und konfiguriertes Netzwerk. Ok, hab ich, wird jetzt so mancher sagen, da es ja funktioniert. Aber ein funktionierendes Netzwerk ist noch lange kein sauber konfiguriertes Netzwerk (jedenfalls nicht für Clusterball). Überprüft also bitte zunächst einmal folgende Einstellungen:

1.) Alle Rechner im Netz müssen eine eigene feste IP-Adresse (z.B. 192.168.0.2, 192.168.1.2 oder 192.168.2.2) besitzen. Diese darf nicht durch DHCP zugeordnet bzw. automatisch bezogen werden. Da sich diese IP ändern kann und ein routen zu einem Host dadurch unmöglich wird.

2.) Im Bereich DNS-Server muss entweder die Adresse des eigenen Routers (wenn dieser die DNS Server kennt oder DNS forwarding unterstützt) eingetragen sein, oder aber die DNS-Server-IP deines Providers (Im Zweifelsfalle dort nachfragen, bzw. nachschlagen)



Die Routerkonfiguration

Hab ich schon gesagt, dass nicht jeder Router gleich ist

Auf einigen Systemen reicht es völlig aus, wenn man den Rechner für den CB-Host als DMZ-Rechner auf dem Router definiert, d.h. dass dieser Rechner quasi einen direkten Internet-Zugang zugewiseen bekommt.

Die sichere Methode ist allerdings ein kontrolliertes "Portforwarding", also die kontrollierte Zuweisung einzelner Ports an bestimmte Netzwerkrechner.

Folgende Ports (und nur diese) müssen dann durchgeschleift bzw. weitergereicht werden:

Für den Spielerrechner (CB spielen und temporärer Host im Spiel) hier als Beispiel mit der IP 192.168.2.2:

Code: Alles auswählen

Port IP-Adresse Protokoll Port 
12300 z.B. 192.168.2.2 UDP 12300 



Fertig, mehr nicht

Für den Dedicated-Host-Rechner IP 192.168.2.3

Code: Alles auswählen

Port      IP-Adresse      Protokoll Port  Kommentar 
12307   z.B. 192.168.2.3   UDP      12307 für den 1. Dedi 
12309   z.B. 192.168.2.3   UDP      12309 für den 2. Dedi 
12311   z.B. 192.168.2.3   UDP      12311 für den 3. Dedi 
12313   z.B. 192.168.2.3   UDP      12313 für den 4. Dedi 
12315   z.B. 192.168.2.3   UDP      12315 für den 5. Dedi 



Schluss, Aus, Ende, das war's! Nun könnt Ihr hosten!

Solltet Ihr an dieser Stelle immer noch das berüchtigte N/A vor Eurem Host angezeigt bekommen, lasst Euch nicht abschrecken! Das N/A heißt nicht, dass der Host nicht funktioniert!

Was, wieso, warum?

Überprüft bitte noch ob Ihr eine Softwarefirewall laufen habt. Wenn ja schaltet dort bitte auch die Ports 12300 - 12316 frei, oder schaltet sie einfach mal für einen Test aus.

Besser? Nein, ok weiter geht’s:

Bitte einen anderen Spieler einmal zu schauen, ob er auf Deinen Host kann. Wenn du bisher alles richtig gemacht hast, dann gibt es keinen Grund warum der Host nicht funktionieren sollte. Dass Du ihn selber noch als N/A siehst, hat andere Gründe (siehe unten).



Den eigenen Host betreten


Super wir haben einen Host, die anderen können jetzt auf meinem Host spielen.... nur ich nicht!

Ab jetzt wird's haarig (zumindest theoretisch). Hier ein wenig Hintergrundinfo:

Der Clusterball Host meldet sich auf dem CB-Server an und hinterlässt dort seine IP und sein Port. Jedes mal wenn Du die Hostliste in Clusterball siehst erhält Dein Spiel diese Daten.
Wenn Du Dich nun für (d)einen Host entscheidest passiert folgendes:

Dein CB-Spiel versucht mit diesem Host in Verbindung zu treten. Dass heißt es wird eine Anforderung an diesen Host geschickt. Leider ist das in diesem Fall Deine eigene externe IP, die Du von Deinem Provider zugeteilt bekommst. Wenn Du einer von den glücklichen bist der einen supercoolen, ultramodernen Router hat (oder was auch immer), schafft der das:

- Spielercomputer sendet ein Datenpaket an X.X.X.X (externe IP)
- der Router sieht das und sendet das Paket an den interne Host
- der interne Host antwortet wieder an die externe IP
- der Router sieht das wieder und leitet, auf Grund von NAT (native adress translation) dieses Paket wieder an den Spieler zurück

das ist die Theorie, in der Praxis treten jedoch meistens die zwei Fälle auf:

a) Router kennt sich nicht aus und frisst das Paket
b) Router schickt das Paket an den internen Host weiter, macht aber eine
falsche oder keine NAT, was zur Folge hat das das Antwortpaket ins Nirvana geht oder direkt an den Spieler (ohne über den Router zu gehen) gesendet wird. Der Spielercomputer wartet aber auf eine Antwort von der externen IP und bekommt diese nicht.

Das soweit zur Theorie! Nun aber die Lösung!
Ihr braucht ein kleines aber wirkungsvolles Tool um dieses Problem zu umgehen.



Dieses Tool heißt XdreamCC (früher CBXdream) und ihr findet es in der Download-Section!

Was XdreamCC alles kann und wie es genau zu bedienen ist, hab ich in einer eigenen Beschreibung zusammengefasst (auch dort). An dieser Stelle sei nur das Feature erwähnt, welches Euer Host-Problem löst :

In den "Special Settings" gibt es ein Feld "host helper". Dieses müsst Ihr aktivieren und in dem Eingabefeld die IP-Adresse des Dedicated-Host-Rechners eintragen. Wenn ihr nun Clusterball über XdreamCC startet, dann lenkt XdreamCC die Signale über das lokale Netzwerk um.

Ihr könnt nun also auf Euren eigenen Host
:wink:
Antworten