DynDNS

Hier kann alles mögliche diskutiert werden. Themen zu Purebasic sind hier erwünscht.
Flames und Spam kommen ungefragt in den Mülleimer.
Janno
Beiträge: 99
Registriert: 27.10.2006 21:38
Wohnort: Niedersachsen

Beitrag von Janno »

Ich arbeite seit langer Zeit an einem Netzwerkspiel. Bisher bin ich immer daran gescheitert, dass meine IP sich regelmäßig ändert.

Jetzt mal eben für doofe... :roll:
Ich muss also einfach nur:

Code: Alles auswählen

OpenNetworkConnection(MeinHost.dyndns.org,Port)
schreiben, damit der Client meine IP herausfindet?
Benutzeravatar
Macros
Beiträge: 1361
Registriert: 23.12.2005 15:00
Wohnort: Olching(bei FFB)
Kontaktdaten:

Beitrag von Macros »

richtig
Bild
Janno
Beiträge: 99
Registriert: 27.10.2006 21:38
Wohnort: Niedersachsen

Beitrag von Janno »

Ich wusste ja gar nicht, dass das so einfach ist. :lol: :o
Danke!!

PS:
Irgendwie peinlich. Da hät' ich auch drauf kommen können. :oops: :mrgreen:

PS:
Irgendwas mache ich falsch.

Code: Alles auswählen

Connection = OpenNetworkConnection("meinhost.dyndns.org",Port)
If Connection = 0
  Debug "Keine Verbindung"
Else
  Debug "Verbunden"
EndIf
Bei mir wird immer "Keine Verbindung" wiedergegeben.
Ich muss meinen Host doch mit "" schreiben, oder? Wenn man nur meinhost.dyndns.org schreibt, dann kommt das dyndns keine Struktur ist.
Benutzeravatar
Programie
Beiträge: 1280
Registriert: 06.08.2005 22:56
Computerausstattung: https://www.sysprofile.de/id160800
Wohnort: Gernsbach
Kontaktdaten:

Beitrag von Programie »

Janno hat geschrieben:Bei mir wird immer "Keine Verbindung" wiedergegeben.
Ich muss meinen Host doch mit "" schreiben, oder? Wenn man nur meinhost.dyndns.org schreibt, dann kommt das dyndns keine Struktur ist.
Bei dir ist die Variable "Port" gleich 0, oder wird die festgelegt? :wink:
BildBildBildBild
Janno
Beiträge: 99
Registriert: 27.10.2006 21:38
Wohnort: Niedersachsen

Beitrag von Janno »

Die wird festgelegt.
Ich denke es liegt dadran, dass ich keinen Http-Server laufen habe, der vorhin von Macros erwähnt wurde. Kann das sein? :mrgreen:
Benutzeravatar
Programie
Beiträge: 1280
Registriert: 06.08.2005 22:56
Computerausstattung: https://www.sysprofile.de/id160800
Wohnort: Gernsbach
Kontaktdaten:

Beitrag von Programie »

Janno hat geschrieben:Ich denke es liegt dadran, dass ich keinen Http-Server laufen habe, der vorhin von Macros erwähnt wurde. Kann das sein? :mrgreen:
Ja, daran könnte es liegen.
Es gibt 2 Möglichkeiten:

1. Du hast kein Server auf dem angegebenem Port laufen

und/oder

2. Du hast eine Firewall, die den Zugriff auf deinen Computer blockiert.

Wenn du den Server mit dem selben Port gestartet hast solltest du es mal ohne Firewall ausprobieren oder (wenn du ein Router hast) in den Routereinstellungen nachschauen, ob vielleicht der Port blockiert wird.
BildBildBildBild
Janno
Beiträge: 99
Registriert: 27.10.2006 21:38
Wohnort: Niedersachsen

Beitrag von Janno »

Also an einer Firewall kann es nicht liegen.

Zum Server:
Ich denke bei dem von dir erwähntem Server handelt es sich nicht um einen selbstprogrammierten Server, sondern um einen Http-Server, wie den Apache HTTP Server, richtig?
Da ich keine Erfahrung mit solchen Servern habe, würde mir eine kleine Auskunft weiterhelfen. Was brauche ich um den Http-Server zu benutzen?
Benutzeravatar
Programie
Beiträge: 1280
Registriert: 06.08.2005 22:56
Computerausstattung: https://www.sysprofile.de/id160800
Wohnort: Gernsbach
Kontaktdaten:

Beitrag von Programie »

Also bei mir läuft Apache HTTP Server, My SQL und FileZilla FTP Server :)

Naja, aber auf meine DynDNS-Domain kann ich auch nicht immer zugreifen. :(

//EDIT: Hab gerade gesehen, dass der die IP-Adresse nicht immer updatet.
Meine wurde zuletzt um 21:39 aktualisiert und hat sich seither geändert.
BildBildBildBild
Benutzeravatar
PureLust
Beiträge: 1145
Registriert: 21.07.2005 00:02
Computerausstattung: Hab aktuell im Grunde nur noch 'nen Lenovo Yoga 2 Pro im Einsatz.
Wohnort: am schönen Niederrhein

Beitrag von PureLust »

@Janno, ...

also jetzt mal Schritt für Schritt. Du sagtest ja:
Janno hat geschrieben:Ich arbeite seit langer Zeit an einem Netzwerkspiel. Bisher bin ich immer daran gescheitert, dass meine IP sich regelmäßig ändert.
Du solltest Dein Netzwerkspiel als ersten mal ans laufen bringen und mit lokalen IP-Adressen arbeiten.
Also den Server auf Deinem PC starten und Dich dann mit dem Client an "127.0.0.1:Port" verbinden.

Wenn Du das soweit am laufen hast, dann kannst Du mal versuchen das über DynDNS zu machen.

Dazu musst Du (wie ja bereits gemacht) eine DynDNS-Umleitung auf Deine Internet-IP machen und diese dann eben per "MeinDynDNSName:Port" ansprechen.
Daraufhin geht also Dein Client über die Internetverbindung nach Draussen und wird dank der Umleitung wieder zurück zu Deiner Internetverbindung geleitet.
Nun ist meisst das Problem, dass der Internetzugang von Privatleuten über ein DSL-Modem mit eingebautem Router und Firewall hergestellt wird (z.B. über eine Fritzbox).
Standardmäßig blockiert aber eine solche Router/Firewall alle Zugriffe auf nicht übliche Ports (also im Grunde alle Ports ausser die für HTTP und FTP).

Somit wird also Dein Client beim Zugriff auf einen bestimmten Port bereits an Deinem Router/Firewall geblockt und kann sich somit nicht mit Deinem Server-Programm verbinden.
Um Dies zu ermöglichen musst Du in den Router/Firewall-Einstellungen Deines DSL-Routers (z.B. der FritzBox) ein sogenanntes "Port-Forwarding" aktivieren, um einen bestimmten, von aussen kommenden Port an einen bestimmten Port eines lokalen PCs weiter zu leiten.

Wie genau sowas geht solltest Du in der Beschreibung Deines DSL-Routers finden können.

Wenn Du nicht klar kommst und zufällig als DSL-Router eine FritzBox benutzt könnte ich Dir näher beschreiben wie und was man da wo einstellen muss - bei anderen Routern wäre das dann schon etwas komplizierter.
Aber wie gesagt .... schau mal in Deinen Router-Einstellungen nach "Port-Forwarding" oder auch "Port-Weiterleitung".

Gruß und viel Erfolg, ... :allright:
PL
[Dynamic-Dialogs] - komplexe dynamische GUIs einfach erstellen
[DeFlicker] - Fenster flimmerfrei resizen
[WinFX] - Window Effekte (inkl. 'durchklickbares' Window)
Benutzeravatar
Susi55
Beiträge: 12
Registriert: 10.12.2006 15:49
Wohnort: Hamburg

Beitrag von Susi55 »

Also es gibt noch mehr Fallstricke.
Die Firewall ist das eine, hast Du eine Fritz!Box? Da muss der Port auch noch freigeschalten werden (Portfreigabe).

Code: Alles auswählen

Connection = OpenNetworkConnection("meinhost.dyndns.org",Port)
In Port muss eine 80 stehen wenn bei Apache nichts geändert wurde!
Die Software für die Aktualisierung bei DynDNS muss laufen damit bei einer IP Änderung das hingesendet wird.
Sende in der MS-Eingabeaufforderung
PING meinhost.dyndns.org und Enter, da muss was kommen
ebend war da 80.143.17.145

Wenn Dein Apache läuft muss bei localhost im Browser was kommen.
Danach meinhost.dyndns.org im Browser ausprobieren.

Schalte Deine Firewall für einen kurzen Augenblick ab wenn es immer noch nicht geht und probiere es dann nochmal.
Kein Stealth-Modus einschalten, ist sowieso unsinn.
:allright:
Antworten