Autor |
Beitrag |
CeeJay D-Magic
      
Beiträge: 94
Win XP Prof.
Delphi 7, Lazarus 0.9
|
Verfasst: Di 16.08.05 12:40
Also, folgendermaßen:
Ich habe jetzt ein Chat programmiert, dass den Sever, sowohl als auch den Client beinhaltet.
Dieses d.h. man kann selbst den Server spielen oder sich auf anderen servern einloggen.
Das dumme ist nur, wenn man sich auf einem anderen Server einloggen will, muss man die IP-Adresse kennen und jetzt zu meiner eigendlichen Frage:
Wie kann ich ein Client dazu bringen, nach dem Server im internet zu suchen, obwohl die IP unbekannt ist?
MFG, und vielen dank im vorraus, CeeJay D-Magic
|
|
Narses
      

Beiträge: 10183
Erhaltene Danke: 1256
W10ent
TP3 .. D7pro .. D10.2CE
|
Verfasst: Di 16.08.05 12:59
Moin!
CeeJay D-Magic hat folgendes geschrieben: | Wie kann ich ein Client dazu bringen, nach dem Server im internet zu suchen, obwohl die IP unbekannt ist? |
Grundsätzlich: gar nicht.
Aber damit "überhaupt etwas" geht, hat man das DNS erfunden. Mach dich mal über z.B. DynDns schlau ( www.dyndns.org).
cu
Narses
|
|
CeeJay D-Magic 
      
Beiträge: 94
Win XP Prof.
Delphi 7, Lazarus 0.9
|
Verfasst: Do 18.08.05 09:55
Ich muss dazu sagen, ich verstehe nicht so genau, was die jetzt machen...
Kann man nicht irgendwie einfach einen Server im internet stellen, was läuft und alle IP-Adressen speichert, die sich als chat-Server anmelden, so, dass der Chat Client anzeigt wer alles online ist mit entsprechender IP?
Dazu brauche ich aber keinen FTP, sondern einen Web-Server, bei dem das Programm im Hintergrund Läuft und immer zu erreichen ist.
Gibt es sowas? Auch kostenlos??
MFG, General D-Magic
|
|
Narses
      

Beiträge: 10183
Erhaltene Danke: 1256
W10ent
TP3 .. D7pro .. D10.2CE
|
Verfasst: Do 18.08.05 10:34
Moin!
CeeJay D-Magic hat folgendes geschrieben: | Ich muss dazu sagen, ich verstehe nicht so genau, was die jetzt machen... |
Die bieten dir (kostenlos für 5 Hosts) einen dynamischen DNS-Alias an. Das brauchst du, wenn du z.B. deinen PC zuhause zum "Server" im Internet machen willst; irgendwie müssen die Leuts ja an deine aktuelle IP kommen (die sich bei Analog/ISDN/DSL ohne feste IP ja bei jeder Einwahl ändert!).
CeeJay D-Magic hat folgendes geschrieben: | Kann man nicht irgendwie einfach einen Server im internet stellen, was läuft und alle IP-Adressen speichert, die sich als chat-Server anmelden, so, dass der Chat Client anzeigt wer alles online ist mit entsprechender IP? |
Klar kann man, programmiers halt.
CeeJay D-Magic hat folgendes geschrieben: | Dazu brauche ich aber keinen FTP, sondern einen Web-Server, bei dem das Programm im Hintergrund Läuft und immer zu erreichen ist.
Gibt es sowas? Auch kostenlos?? |
Mir ist noch kein kostenloser Win-IN-Server angeboten worden; wenn einer was kennt, bescheid sagen!
cu
Narses
|
|
matze
      
Beiträge: 4613
Erhaltene Danke: 24
XP home, prof
Delphi 2009 Prof,
|
Verfasst: Do 18.08.05 21:13
du könntest natürlich alle IPs, die es gibt durchpingen und bei erfolg suchen, ob dein chat server auf der IP läuft. aber bis das programm dann deinen gegenüber gefunden hat bin ich schneller bei dir zu fuß als im chat.
aber spass beiseite:
so abwegig ist die Idee gar nicht. Ihr könnt euch doch sicher auch an die Tauschbörse Kazaa erinnern. Der Client hat doch im Prinzipt auch nix anderes gemacht, als einen Haufne IPs durchzu ackern bis er nen Gegenüber gefunden hat. Wieso ging denn das bei dem so schnell ??
_________________ In the beginning was the word.
And the word was content-type: text/plain.
|
|
GTA-Place
      

Beiträge: 5248
Erhaltene Danke: 2
WIN XP, IE 7, FF 2.0
Delphi 7, Lazarus
|
Verfasst: Do 18.08.05 22:05
Nimm doch einfach ne kostenlose MySQL-DB. In die lässt du die IPs reinschreiben.
Wenn du wissen willst, woher du die DB bekommst -> PN an mich.
_________________ "Wer Ego-Shooter Killerspiele nennt, muss konsequenterweise jeden Horrorstreifen als Killerfilm bezeichnen." (Zeit.de)
|
|
LH_Freak
      
Beiträge: 385
Win XP
D7 PE, D2k5 Trial
|
Verfasst: Do 18.08.05 23:13
Stimmt, du könntest eine Datenbank mit Username und IP speichern,
und wenn du dich im Programm "einloggst" ändert er in der Datenbank erstmal
deine IP, und verbindet dann zu der Server-IP, wenn dieser online ist.
Wenn du beim Server das selbe Prinzip anwendest, dann müsste das
alles gut funktionieren
|
|
CeeJay D-Magic 
      
Beiträge: 94
Win XP Prof.
Delphi 7, Lazarus 0.9
|
Verfasst: Fr 19.08.05 11:29
Erstmal danke für die zahlreiche Hilfe!
@Narses:
Das DNS hilft mir nicht, da ich nicht immer im Internet sein kann...
Und was bitte is ein Win-IN-Server?
Über google waren da nur englishe seiten drüber zu finden, die meisten wurden jedoch gesperrt...
Und aus anderen nicht wirklich ersichtlich, was ddas sein soll oder wie man einen solchen ordert.
@matze:
Kazaa hatte auch einen Server irgendwo laufen, wo alle neuen logins und angebote gespeichert wurden!
@GTA-Place,LH_Freak:
Ja daran hatte ich auch schon gedacht - nur wie Programmier ich das??
Ich habe keinen MySQL und ich weiß auch nicht so ganz wie das funktioniert.
Ich habe mir auch schon gedanken zu folgendes gemacht:
Es gibt ja normale Webserver, mit denen man sich per FTP Dateien uploaden und downloaden kann, ich hätte da so ein Webserver.
Nun könnte ich folgendes machen:
1. Sobald nun ein neuer Server (also vom user aus) geöffnet wird, soll dessen IP-Adresse mit hilfe von FTP in eine Vorhandene Datei auf dem Server gespeichert werden
2. Wenn dann irgendein User sich die Liste der verfügbaren Server anschaut, soll diese dann einfach nur gelesen werden und dem User angezeigt werden
Das problem ist nicht das Lesen, sondern das Schreiben, wie schreibe ich das da in eine datei rein???
MFG, CeeJay D-Magic
|
|
jaenicke
      
Beiträge: 19315
Erhaltene Danke: 1747
W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: Fr 19.08.05 11:50
Hier wurde doch vor kurzem im Forum diskutiert, wie man per PHP was in eine Datei auf einem Server eintragen kann. (der muss natürlich auch PHP unterstützen)
Hier: www.delphi-forum.de/...;highlight=php+datei
Und was das kostenlos angeht: Es gibt solche Serverplätze mit Einschränkungen auch kostenlos, allerdings solltest du dir nen guten Hoster suchen, da zahlst du dann teilweise nur 1 Euro im Jahr (da bekommst du entsprechend wenig...) bzw. 3 Euro im Monat für ein gutes Paket.
|
|
GTA-Place
      

Beiträge: 5248
Erhaltene Danke: 2
WIN XP, IE 7, FF 2.0
Delphi 7, Lazarus
|
Verfasst: Fr 19.08.05 12:02
Ich bin ja auch bei nem Free-Hoster und hab da eigentlich keine Einschräkungen (außer vielleicht keine Domain). Hab da 5 MySQL-DBs und PHP 4 und 5. Einschränkugen sehe ich keine.
_________________ "Wer Ego-Shooter Killerspiele nennt, muss konsequenterweise jeden Horrorstreifen als Killerfilm bezeichnen." (Zeit.de)
|
|
Narses
      

Beiträge: 10183
Erhaltene Danke: 1256
W10ent
TP3 .. D7pro .. D10.2CE
|
Verfasst: Fr 19.08.05 12:48
Moin!
CeeJay D-Magic hat folgendes geschrieben: | Und was bitte is ein Win-IN-Server? |
Windows-Internet-Server, sowas wie ein Linux-Root-Server, nur eben mit Win als OS; ja, sowas solls geben...  nur eben nicht kostenlos; und das bräuchstest du, wenn du da dein Delphi-Prog drauf laufen lassen willst.
Alternative ist sonst eben was PHP-basiertes, wie bereits zur genüge vorgetragen.
cu
Narses
|
|
combie
Hält's aus hier
Beiträge: 8
|
Verfasst: Sa 20.08.05 12:18
so ein php ding zu schreiben ist gar nicht so schwer.
De Server müsste öffentlich erreichbar(DNS)sein und php beherrschen.
Das Delphi Programm muss dann HTTP konforme gets machen und die erhaltene Seite parsen
Zuletzt bearbeitet von combie am Sa 20.08.05 13:28, insgesamt 1-mal bearbeitet
|
|
combie
Hält's aus hier
Beiträge: 8
|
Verfasst: Sa 20.08.05 13:12
Titel: ipserver in PHP
Es fehlen:
Haltbarkeits regelungen
Passwortüberprüfung
usw.
Aufruf: "ipsever.php?action=setip&nick=andy"
Speichert die IP von Andy auf dem Server
Meldung: "IP gesetzt"
Aufruf: "ipsever.php?action=getip&nick=andy"
bringt die gespeicherte IP von andy zur Anzeige.
Meldung: "Die IP von andy ist !127.0.0.1!"
Man beachte "action=setip" und "action=getip".
Viel spaß beim weiterbasteln
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36:
| <html> <head></head> <body> <?php // print_r($_GET); $filename = 'ipdaten.txt'; // evt. in ein geschütztes Verzeichniss packen
$liste = array(); // typisieren :)
if( $handle = @fopen($filename, "r")) { $liste = unserialize(fgets($handle)); fclose($handle); }
if ('setip' == $_GET['action']) { $liste[$_GET['nick']]['ip'] = $_SERVER['REMOTE_ADDR']; if( $handle = @fopen($filename, "w+")) { fputs($handle,serialize($liste)); fclose($handle); } echo 'IP gesetzt'; }
if ('getip' == $_GET['action']) { $liste[$_GET['nick']]['ip'] = $_SERVER['REMOTE_ADDR']; echo 'Die IP von '.$_GET['nick'].' ist !'.$liste[$_GET['nick']]['ip'].'!'; } echo ''; // print_r($liste); ?> </body> </html> |
|
|