Probleme Online über direkte IP Verbindung spielen

Hallo zusammen,
ein Freund und ich versuchen gerade ein Spiel (Javaprogramm) Online gegeneinander zu spielen.
Vorab: ich bin ein ziemlicher Anfänger/Laie in Computerdingen, daher entschuldigt meine seltsamen Formulierungen/dummen Fragen…

In der Theorie sollte das ja anscheinend recht einfach sein: ich teile ihm meine IP Adresse mit und eröffne ein Spiel und er schaltet sich dann als Client dazu.
in der Praxis funktioniert das leider nicht bei uns. Egal wer das Spiel hostet erhält der jeweils andere immer die Nachricht „timed out“.
Ich habe jetzt einige Recherche betrieben und dies und das in Erfahrung gebracht, aber tappe noch immer im dunkeln.
hier die „Fakten“:
wenn ich im Spiel ein Spiel hosten möchte wird automatisch immer meine lokale IP-Adresse eingestellt - hier muss ich meine gloable IP-Adresse eintragen, oder?
Habe meine wirkliche (globale) IP Adresse rausgefunden - die ist nicht fest, sondern wechselt immer (also die letzte Ziffer - ist das ein Problem? >>ich teile meinem gegenüber ja immer die aktuelle mit!?
als Port ist standardmäßig der Port 8080 festgesetzt - sollte/muss ich den ändern?
habe gelesen das man ggf. den Port öffnen muss am router - auch das habe ich bereits gemacht, hat auch nicht funktioniert bis dato - da habe ich dann immer die Wahl zwischen TCP und UDP (sowohl für trigger type als für public type) !?!?
muss der Kollege (Client) diesen Port auch öffnen?

allerbesten Dank im Voraus.
schöne Grüße
tim

Hallo,

ich hänge da gerade in einem ganz anderem Thema und habe den Kopf nicht frei.
Achtung erstmal mit den Begrifflichkeiten (lokal/global) sind eigentlich Begriffe aus der IPv6-Welt.
Du meinst wahrscheinlich interne/externe IP-Adresse aus IPv4.
Du hast wahrscheinlich einen DSL-Router der automatisch NAT macht.
D.h. Deine interne (Privat)-IP-Adresse wird in eine externe offizielle umgewandelt. Ihr kennt Euch nur unter der jeweiligen offiziellen Adresse. Die Zustellung zur Privaten macht der Router.
Die Ports müssen auf beiden Seiten geöffnet sein.

Mehr habe ich im Moment nicht drauf.
Eins noch, versucht Euch mal zu pingen (jeweils die offizielle Adresse).

Grüße

Charly

In der Theorie sollte das ja anscheinend recht einfach sein:
ich teile ihm meine IP Adresse mit und eröffne ein Spiel und
er schaltet sich dann als Client dazu.
in der Praxis funktioniert das leider nicht bei uns. Egal wer
das Spiel hostet erhält der jeweils andere immer die Nachricht
„timed out“.
Ich habe jetzt einige Recherche betrieben und dies und das in
Erfahrung gebracht, aber tappe noch immer im dunkeln.
hier die „Fakten“:
wenn ich im Spiel ein Spiel hosten möchte wird automatisch
immer meine lokale IP-Adresse eingestellt - hier muss ich
meine gloable IP-Adresse eintragen, oder?
Habe meine wirkliche (globale) IP Adresse rausgefunden - die
ist nicht fest, sondern wechselt immer (also die letzte Ziffer

  • ist das ein Problem? >>ich teile meinem gegenüber ja immer
    die aktuelle mit!?
    als Port ist standardmäßig der Port 8080 festgesetzt -
    sollte/muss ich den ändern?
    habe gelesen das man ggf. den Port öffnen muss am router -
    auch das habe ich bereits gemacht, hat auch nicht funktioniert
    bis dato - da habe ich dann immer die Wahl zwischen TCP und
    UDP (sowohl für trigger type als für public type) !?!?
    muss der Kollege (Client) diesen Port auch öffnen?

allerbesten Dank im Voraus.
schöne Grüße
tim

Hallo Tim,

die IP-Adresse, die Dein Freund eingeben muss ist die IP-Adresse Deines Routers.
Diese bekommt man einfach durch Aufrufen folgender Seite angezeigt:
http://www.heise.de/netze/tools/meine-ip-adresse/

Wichtig ist dann das Port-Freischalten auf Deinem Router. Wie das geht ist Router-abhängig und vielfach benötigt der Router die interne IP-Nummer Deines Rechners (meist 192.168.x.y, bekommt man unter Windows mit ipconfig /all in einem Eingabeaufforderungs-Fenster angezeigt), damit der Router weiß, wohin er den Port freischalten muss. Evtl. ändert sich Deine interne IP-Nummer auch von zeit zu Zeit, so dass das Port-Freischalten auch angepasst werden muss.
Wenn im Java-Programm Port 8080 eingestellt ist, solltest Du auch im Router den Port 8080 (TCP) konfigurieren.

Gruß
Markus

Hallo Tim,

vor allem müsst ihr beide „Port Forwarding“ am Router aktivieren, so dass die Anfragen, die am Router auf Port 8080 ankommen, auch an eure Rechner weitergeleitet werden.

Ich persönlich hätte allerdings stärkste Bedenken, diesen Port in Verbindung mit irgendeinem Spiel ohne geeignete Firewall-Konfiguration für alle Welt zu öffnen. Damit lädt man nämlich böswillige Eindringlinge geradezu ein…

Gruß

Kai

Hi Tim,

das was Du programmiert hast, funktioniert dann, wenn die Rechner im gleichen Netz sind. Wenn Du über das Internet gehst, dann kommen da noch einige Sachen dazu. Ich kann hier leider nicht in wenigen Worten erklären, was genau zu tun ist. Dazu mußt Du Dich in die Themen einarbeiten. Das ist zum Einen der Punkt Private/Öffentliche IP, dann das Thema NAT (Network Address Translation).
Deinem Router mußt Du so konfigurieren, daß er Anfragen auf Port 8080 annimmt, aber dann auch an Deinen Rechner weiterleitet (sog. Port Forwarding).

Viele Grüße

Andreas

Grundsätzlich bist Du vermutlich schon auf dem richtigen Weg: Der Port muss sowohl auif dem Router als auch in der Firewall des PCs freigegeben werden. Je nachdem wie die Kommunikation programmiert wurde (Server/Client) oder (Server/Server) muss dies auf beiden Seiten erfolgen.
Eine weitere Möglichkeit kann die Wahl des Ports sein. Der Port 8080 wird üblicherweise für http-Proxies verwendet. Ich würde von daher empfehlen einen anderen Port, wie z.B 6080 zu verwenden.

Gruß Klaus

Es gibt ganz viele Fehlerquellen, und die Informationen sind etwas dürftig. Z. B. die Entscheidung, ob im Port Forwarding TCP oder UDP eingestellt werden muss, hängt vom konkreten Spiel ab.

Laufen auf den beteiligten Rechnern Firewall-Programme? Funktioniert wenigstens ein „Ping“?

Ich bin keine Spiele-Experte und kann wahrscheinlich nicht viel helfen. Eines ist allderings sicher:

  1. Du musst Deine globale IP adress verwenden
  2. Dein Freund muss den selben Port in seiner Firewall oeffnen.

Mehr weiss ich auch nicht dazu zu sagen.

leider kenne ich mich hier nicht aus. normalerweise sind die ip adressen von einer öffentlichen zu einer privaten (z.B. 192.168.*.*) übersetzt. diese private kann alle öffentlichen erreichen, während die anderen nur deine öffentliche ip adresse erreichen, jedoch nicht die 192.168er. wichtig ist dann, ob das spiel so klug ist, diese beschränkung (schutzmechanismus) zu überwinden.

Hallo,

bin gerade im Urlau und habe selten Internetzugang.
Mit Speilen habe ich keinerlei Erfahrung.
Ob es an der IP-Adresse liegt kannst du einfach testen:

Startmenu/Ausfuehren/cmd (oder shell in Unix oeffnen)
Dann ping
Bsp: $ ping 10.211.56.28

Wenn der Rechner an dieser Adresse antwortet ist die IP-Verbindung ok.

Gruss

Hi 
ich räume gerade mein Profil auf schmeiss die Antwort einfach weg ich war im Urlaub zu der Zeit.

Zu deinem Spiele noch, Ihr müsst einen Router einsetzen der die sogenannte Portweiterleitung kann, das ist nicht trivial und kann bei fehl Konfiguration bedeuten das jemand aus dem internet heraus auf deinen Rechner kommt.

Andre

Es ist noch ein bisschen komplizierter: Dein Freund (Spiele-Cö
lient) spricht die öffentliche IP deines Routers an, der wiederum die Daten zu deinem PC (Spiele-Server) weiterleitet. Die Einstellung ist von Router zu Router unterschiedlich, als Beispiel hier eine Hilfeseite von AVM:

ww.avm.de/de/Service/Service-Portale/Service-Portal/News_und_Ausblick/43_portfreigaben_eingehende_Verb.php