TCP Server
Übersicht

funkmaster5000Betreff: TCP Server |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hi Community.
Ich versuche mich ein bisschen an Multiplayer und habe gesehen, dass man sich mit TCP auch auf eine Adresse wie z.B. www.blitzforum.de verbinden kann. Ich habe selbst eine Homepage. Könnte ich jetzt über diesen Server ein Multiplayer Spiel laufen lassen? Ich probiere schon die ganze Zeit damit herum und verbinden funktioniert (logischerweise, sonst könnte man ja meine Homepage auch nicht erreichen). Wie bekomme ich aber jetzt Clienten zusammen? Starte ich den Server von meinem Rechner aus, hat er ja nicht die IP meiner Homepage, sondern von meinem Pc. Ich finde auch kein Argument, mit dem ich einen Server mit einer im Voraus festgelegten IP starten kann. Auf dem Webspace selbst lässt sich mein Serverprogramm ja nicht ausführen: starte ich es von zu Hause hat es natürlich meine IP. |
||
![]() |
Eingeproggt |
![]() Antworten mit Zitat ![]() |
---|---|---|
Geht wohl nicht so einfach wie du dir das vorstellst, aber man könnte sich etwas zusammen basteln.
Zum einen könntest du Services wie no-IP.com nutzen. Zum anderen könntest du dir sowas selber programmieren. Also auf deinem Webspace liegt eine php-Datei. Wenn du den Server zu Hause startest, meldet der sich bei dieser php Datei und seine IP wird gespeichert. Will sich ein Client verbinden, fragt er zuerst dort nach deiner aktuellen IP nach. Naja, oder du hast einen Root-Server, auf dem könntest du dann ein Blitz-Programm (deinen Server) direkt laufen lassen, aber das ist zu kostspielig um sich mal in die wirklich komplexe Materie einzuarbeiten. mfG, Christoph. |
||
Gewinner des BCC 18, 33 und 65 sowie MiniBCC 9 |
Hangman |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Wenn du den Server nicht auf dem Rechner laufen lassen kannst wo sich deine Homepage befindet, dann hat dein Server logischerweise auch nicht dessen IP.
Du kannst dir eine Domain holen, die auf deine Rechner IP verweist. |
||
Ich habe Berthold gebrochen. |
funkmaster5000 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Das sind alles sehr gute Ideen. Allerdings lese ich viel zum Thema "Server zur Verfügung stellen" mit allen Risiken und Haftbarmachungen.
Ich bin zum Beispiel auch schon auf sowas gestoßen: (Vom Wortlaut her höchst unprofessionell, aber danach hätte ich schon meinen funktionierenden Server) http://www.andreasgress.de/Anleitung/anleitung.htm Die Frage ist, wird mit den Risiken übertrieben? Am liebsten würde ich meine Domain nur dafür nutzen, die Spieler zusammenzubringen. Die Serverrolle überlasse ich aber dem Spieler selbst. Spieler 1, Server > Meine Domain > IP Spieler 1 an Spieler 2 Spieler 2, Client > Meine Domain > IP Spieler 2 an Spieler 1 Trennung von Domain Ich habe gelesen, dass mit solchen Methoden das ganze Portforwarding usw beim Server entfällt. Oder trifft das tatsächlich nur zu, wenn ich so etwas wie einen Masterserver stelle, auf den jeder zugreifen kann? |
||
![]() |
Eingeproggt |
![]() Antworten mit Zitat ![]() |
---|---|---|
Deine verlinkte Anleitung beschreibt wie man sich n Webserver zu Hause aufstellt. Ich glaube nicht dass du das willst. Meine beschriebene Lösung mit php ist auch nur ein "Umweg" den man gehen muss wenn man gezwungen wäre, einen Webserver zu nutzen. Wenn du allerdings vor hast bei dir zu Hause n Server aufzustellen der die Spieler zusammen bringt, dann mach das in BB und du kannst alles machen was du willst und bist auch noch relativ unempfindlich gegen eventuelle Risiken. So nach der Überlegung "Wer soll schon gezielt versuchen mich zu hacken". (Betreibst du einen Webserver kann dich jemand mit "Routine-Hack-Angriffen" hacken unter Umständen weil er bekannte Schwachstellen ausnutzt. Bei deinem eigenen BB-Server müsste er erst Schwachstellen suchen)
Und kleiner Tipp am Rande: Portforwarding-umgehen sind etwas fortgeschrittene Thematiken, kümmer dich da erst später damit wenn du an sich n funktionierendes System hast. mfG, Christoph |
||
Gewinner des BCC 18, 33 und 65 sowie MiniBCC 9 |
funkmaster5000 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Also Fakt ist: will ich den Server stellen, dann muss ich einen Port freigeben. Ich besorge mir eine statische IP. Das Spiel verbindet sich mit dieser IP, die auf meinen "Server" / PC verweist. | ||
![]() |
Tankbuster |
![]() Antworten mit Zitat ![]() |
---|---|---|
kannst www.no-ip.com oder ähnliches zum testen benutzen ![]() ![]() |
||
Twitter
Download Jewel Snake! Windows|Android |
funkmaster5000 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Aber einen Port muss ich trotzdem freigeben, oder? Das ist das, was ich den Spielern eben nicht jedes Mal zumuten will ![]() Also müsste ich einen Masterserver stellen mit fixer IP und einem immer freigegebenen Port, über den die Spieler beitreten? |
||
![]() |
Tankbuster |
![]() Antworten mit Zitat ![]() |
---|---|---|
Genau so ist es. Sobald die Clients dann mit dem Server verbinden, kannst du ihnen etwas schicken (natürlich auf dem selben Port). Der Router wartet nach einem ausgehenden Signal ja noch auf eine Antwort, folglich müssen die Clients dann keine Ports mehr freigeben ![]() |
||
Twitter
Download Jewel Snake! Windows|Android |
funkmaster5000 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ah so ist das also ![]() Danke für die vielen Antworten. Wie ist das denn, wenn ich Files auf meinem Server ablege? Sagen wir, die Userdaten zum Anmelden? Könnte die jemand sehen, wenn er in der Adressleiste Ip:Port von meinem Server eingibt? |
||
![]() |
Eingeproggt |
![]() Antworten mit Zitat ![]() |
---|---|---|
Wenn du keinen Webserver aufgestellt hast, wird man nicht direkt auf die Datei zugreifen können, nein. Und wenn du n Webserver hast, dann schau dir die .htaccess-Datei an. | ||
Gewinner des BCC 18, 33 und 65 sowie MiniBCC 9 |
funkmaster5000 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Okay, danke für den Tipp! Konnte im Internet einiges zur .htaccess finden.
Und wie läuft das dann? Kann ich die User über den Server zusammenbringen (a) oder muss der Server alle Pakete adressieren und dann schicken (b)? (a) Client1 > Server> Client2 = Client1 > Client 2 (b) Client1 [schickt Infos an Server] z.B. 340,12,172 (Nutzernummer,Position_x,Position_y) Server [schaut nach, wer die Infos erhalten soll] (Nutzernummer) Server [schickt Daten an den gewünschten Client] (Nutzernummer > Position_x,Position_y) Client2 [empfängt Daten] |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group