Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi ServerSocket-ClientSocket Kommunikation über Internet (https://www.delphipraxis.net/125728-serversocket-clientsocket-kommunikation-ueber-internet.html)

fui-tak 10. Dez 2008 15:11


ServerSocket-ClientSocket Kommunikation über Internet
 
Hallo,
ich habe mir ein kleines Chat Programm zusammengebastelt, welches aus einem Serverteil (mit TServerSocket) und einem Clientteil (mit TClientSocket) besteht.
Als Port habe ich einfach mal 80 genommen und als Host habe ich im Clientteil bisher meine lokale IP genommen (die ich erhalte, wenn ich unter Ausführen->cmd "ipconfig" eingebe).
Die Kommunikation funktioniert im Heimnetzwerk, nicht aber über das Internet.
Also habe ich versucht meine IP einzugeben, die ich hier erhalte: http://www.wieistmeineip.de/
Leider funktioniert das so nicht.

Habt ihr Tipps für mich?

Valle 10. Dez 2008 16:56

Re: ServerSocket-ClientSocket Kommunikation über Internet
 
Versuch's mal mit: Hier im Forum suchenPort Forwarding, Bei Google suchenPort Forwarding ;-)

Mit freundlichen Grüßen,

Valle

Noobix93 10. Dez 2008 19:03

Re: ServerSocket-ClientSocket Kommunikation über Internet
 
Deine Ip ändert sich fast täglich wen du keine feste IP hast.

www.dyndns.org einrichten damit du eine dynamische Adresse bekommst. Danach nurnoch Ports im Router freischalten und port 80 ist der Standart Http-Port den würde ich nicht nehmen ;)

fui-tak 11. Dez 2008 17:30

Re: ServerSocket-ClientSocket Kommunikation über Internet
 
Also wie ich das jetzt verstanden habe, ist mein Router so zu sagen Schuld am Problem. Benutzt mein Gegenüber die Adresse die ich hier erhalte http://www.wieistmeineip.de/ verbindet er sich nur mit meinem Router, aber noch nicht mit meinem Computer. Also muss eine Portweiterleitung durchgeführt werden.
Und jetzt hört's bei mir auf. Muss ich dafür in meinem Router rumhantieren oder kann ich einfach in meinem ClientSocket irgendwas angeben, damit schließlich mein Serverprogramm auf meinem Computer gefunden wird?

Namenloser 11. Dez 2008 18:05

Re: ServerSocket-ClientSocket Kommunikation über Internet
 
Das lässt sich normalerweise in der Routerkonfiguration einstellen (komtm auf das Gerät an). Man könnte das theoretisch auch über Bei Google suchenUPNP lösen, aber ich habe bis jetzt noch keine gescheite Delphilösung dafür gefunden. Wenn du das Programm /=Server) nicht an andere weitergibst, lohnt sich das auch nicht.

fui-tak 11. Dez 2008 19:01

Re: ServerSocket-ClientSocket Kommunikation über Internet
 
Das Serverprogramm möchte ich aber auch gerne an andere weitergeben und dass jeder in seinem Router rumwurschteln muss, ist auch nicht das Ideale.

Am einfachsten wäre noch eine ganz andere Lösung, wenn sie funktioniert: Das Serverprogramm auf einen Server hochladen, der es dann ausführt. Das ist natürlich nicht ganz so leicht, weil erstmal die meisten Server nicht unter Windows laufen und weil man die Datei zum laufen bringen muss.

Kann man da vielleicht etwas mit PHP machen? Mit PHP hab ich aber bisher noch gar nichts gemacht, also schön einsteigerfreundlich bitte (HTML versteh ich)

EugenB 11. Dez 2008 21:48

Re: ServerSocket-ClientSocket Kommunikation über Internet
 
Zitat:

Zitat von fui-tak
Am einfachsten wäre noch eine ganz andere Lösung, wenn sie funktioniert: Das Serverprogramm auf einen Server hochladen, der es dann ausführt. Das ist natürlich nicht ganz so leicht, weil erstmal die meisten Server nicht unter Windows laufen und weil man die Datei zum laufen bringen muss.

Dann mach das Serverprogramm mit Lazarus/FreePascal dann gehts auch auf Linux.

Zitat:

Zitat von fui-tak
Kann man da vielleicht etwas mit PHP machen? Mit PHP hab ich aber bisher noch gar nichts gemacht, also schön einsteigerfreundlich bitte (HTML versteh ich)

Nein geht nicht, weil soviel ich weiß kann man schlecht nen php-script mit offenen Socket die ganze zeit laufen lassen.

Man könnte höchstens das php-Script mit einer Temporären Datenbank verbinden und alle Posts von den Clients zwischenspeichern und die Clients müssten alle x sekunden die Chateinträge vom php-Script bekommen. Aber mit dem mangeldem Wissen mit nur HTML wird dich da nicht weiterhelfen. Wenn du noch php lernen willst dann Bei Google suchenphp quakenet

Viel Spaß

MfG,
Eugen

Valle 11. Dez 2008 21:58

Re: ServerSocket-ClientSocket Kommunikation über Internet
 
Hallo fui-tak! :hi:

Ich muss dich wohl leider enttäuschen. Du wirst das Problem nicht wirklich umgehen können. Der Router stellt nun mal eine Firewall dar - diese zu umgehen wünscht sich der ein oder andere Cracker auch gerne. Es gibt zwar Möglichkeiten über UPnP usw., aber diese funktionieren auch nicht immer und sind keineswegs ein Allzweckmittel. Bei mir hat das bisher irgendwie bei keinem Programm geklappt. :gruebel:

Die eigentlich richtige Lösung ist eben ein Server. PHP ist dazu aber falsch. Bitte belaste deinen Hoster nicht mit PHP-Chats. Das HTTP-Protokoll ist nun mal für Webseiten gedacht - nicht für's Chatten. ;-)

Mit freundlichen Grüßen,

Valle

fui-tak 13. Dez 2008 12:19

Re: ServerSocket-ClientSocket Kommunikation über Internet
 
Schade, dass das so nicht geht.... aber danke für die schnellen Antworten


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:50 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz