Client-/Seververbindung global über IP/TCP

Fragen zum Thema HTML, JavaScript, PHP
HerrKlinke
Verifiziert
Beiträge: 76
Registriert: Do Sep 04, 2008 2:12 pm
Wohnort: Wismar
Kontaktdaten:

Client-/Seververbindung global über IP/TCP

Beitrag von HerrKlinke » Do Dez 04, 2008 10:07 am

Hi,
also ich weiß nicht, ob das der richtige Channel dafür ist, aber na ja:
Also ich möchte eine Client-/Serververbindung global aufbauen. Also nicht nur in einem Lan - Netzwerk, sondern an zwei verschiedenen Standorten.
Geht das überhaupt? Und wenn ja wie bekomme ich dann die Ip heraus, die ich benötige? Ich hänge nämlich an einem Router und möchte nicht dessen Ip wissen.
Ich habe es bereits mit allen mir bekannten Adressen versucht, bekomme aber keine Verbindung.
Alternativ hätte ich noch meinen FTP-Hoster als eine art "Umleiter" im Auge.
Danke schonmal im Voraus.

Benutzeravatar
Kerli
Beiträge: 1456
Registriert: So Jul 06, 2008 10:17 am
Wohnort: Österreich
Kontaktdaten:

Re: Client-/Seververbindung global über IP/TCP

Beitrag von Kerli » Do Dez 04, 2008 11:05 am

HerrKlinke hat geschrieben:Also ich möchte eine Client-/Serververbindung global aufbauen. Also nicht nur in einem Lan - Netzwerk, sondern an zwei verschiedenen Standorten.
Geht das überhaupt?
Ja, das ist möglich. Schau dir einmal zum Beispiel die ganzen Multiplayer Online Spiele an.
HerrKlinke hat geschrieben:Und wenn ja wie bekomme ich dann die Ip heraus, die ich benötige? Ich hänge nämlich an einem Router und möchte nicht dessen Ip wissen.
Darum wirst du nicht herumkommen. Irgendwie muss du zur IP Adresses des Rechners am anderen Ende der Verbindung kommen. Meistens wird dafür ein spezieller, allen Teilnehmern bekannter Server verwendet, bei dem man sich anmelden kann, und somit den anderen Teilnehmern seine IP zur Verfügung stellt bzw. auch die der anderen bekommen kann.
"Make it idiot-proof and someone will invent an even better idiot." (programmers wisdom)

OpenGL Tutorials und vieles mehr rund ums Programmieren: http://www.tomprogs.at

Benutzeravatar
Xin
nur zu Besuch hier
Beiträge: 8859
Registriert: Fr Jul 04, 2008 11:10 pm
Wohnort: /home/xin
Kontaktdaten:

Re: Client-/Seververbindung global über IP/TCP

Beitrag von Xin » Do Dez 04, 2008 11:15 am

HerrKlinke hat geschrieben:Hi,
also ich weiß nicht, ob das der richtige Channel dafür ist, aber na ja:
Joah, passt wohl, ich weiß jetzt auch nicht, ob es wirklich sich lohnt, den Thread nach Konzepte zu verschieben.
HerrKlinke hat geschrieben:Also ich möchte eine Client-/Serververbindung global aufbauen. Also nicht nur in einem Lan - Netzwerk, sondern an zwei verschiedenen Standorten.
Geht das überhaupt?
Natürlich, schließlich macht das jeder Webbrowser.
HerrKlinke hat geschrieben:Und wenn ja wie bekomme ich dann die Ip heraus, die ich benötige?
Du stellst eine Anfrage an einen DNS-Server. Die Funktion brauchst Du oftmals noch nichtmals selbst auszuführen, häufig kannst Du den Server als String bezeichnen, z.B. "85.131.186.43" oder eben auch "proggen.org".
HerrKlinke hat geschrieben:Ich hänge nämlich an einem Router und möchte nicht dessen Ip wissen.
Der Router taucht für Dich in dem Problem eigentlich nicht auf, er leitet (routet) die Verbindung nur aus Deinem lokalen Netz in ein anderes - eben das Internet.

Übringens ist es mal schön ein nämlich ohne 'h' zu lesen. ;-)
HerrKlinke hat geschrieben:Ich habe es bereits mit allen mir bekannten Adressen versucht, bekomme aber keine Verbindung.
Hier wäre als erstes die Frage: Welche Sprache und wie versuchst Du die Verbindung aufzubauen.
Mit der Information wäre dann auch die Diskussion eröffnet, ob der Thread nochmal in ein anderes Brett umzieht. ;-)
HerrKlinke hat geschrieben:Alternativ hätte ich noch meinen FTP-Hoster als eine art "Umleiter" im Auge.
FTP-Server sind Endpunkte, es ist ein Dienst der auf dem Server direkt wird und diese können nicht umleiten. Für eine Umleitung brauchst Du einen Servr, der Dir einen Routing-Service anbietet. Dein Router zu Hause nichts anderes als ein Mini-Computer, der diesen Dienst anbietet.
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.

Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.

Benutzeravatar
Dirty Oerti
Beiträge: 2229
Registriert: Di Jul 08, 2008 5:05 pm
Wohnort: Thurndorf / Würzburg

Re: Client-/Seververbindung global über IP/TCP

Beitrag von Dirty Oerti » Do Dez 04, 2008 3:57 pm

Ich denke Herrn Klinkes Problem liegt darin, dass er die konkrete Adresse eines PCs in einem LAN-Netzwerk von außerhalb des LANs nicht ermitteln kann.

Denn im Internet haben alle PCs an einem Router die selbe IP....

Wie man aber einen speziellen PC in einem LAN aus dem Internet heraus anspricht weiß ich nicht.
Bei Fragen einfach an daniel[ät]proggen[Punkt]org
Ich helfe gerne! :)
----------
Wenn du ein Licht am Ende des Tunnels siehst, freu dich nicht zu früh! Es könnte ein Zug sein, der auf dich zukommt!
----
It said: "Install Win95 or better ..." So I installed Linux.

Benutzeravatar
Xin
nur zu Besuch hier
Beiträge: 8859
Registriert: Fr Jul 04, 2008 11:10 pm
Wohnort: /home/xin
Kontaktdaten:

Re: Client-/Seververbindung global über IP/TCP

Beitrag von Xin » Do Dez 04, 2008 4:17 pm

Dirty Oerti hat geschrieben:Ich denke Herrn Klinkes Problem liegt darin, dass er die konkrete Adresse eines PCs in einem LAN-Netzwerk von außerhalb des LANs nicht ermitteln kann.

Denn im Internet haben alle PCs an einem Router die selbe IP....

Wie man aber einen speziellen PC in einem LAN aus dem Internet heraus anspricht weiß ich nicht.
Wenn er aus dem INet einen speziellen PC ansprechen möchte, dann geht das nur, in dem der Router per NAT so konfiguriert wird, dass er die Verbindung an diesen speziellen PC durchroutet - das kann man nicht von außen programmieren (sofern da nicht ein entsprechendes Sicherheitsloch im Router ist).
Deswegen läuft die Verbindung auch so, dass derjenige, der eine Verbindung wünscht (z.B. Webbrowser) den Router bittet bei proggen.org Port 80 mal anzufragen, ob's da was zu holen gibt und dass er seine Antwort doch bitte auf Port 4711 abliefern soll. Der Router (fragt den nächsten Router, der den nächsten Router fragt, ... ) bittet dann bei proggen.org:80 doch mal was an die IP Deines Routers auf Port 0815 zu schicken. MIt der Anfrage an proggen.org wird Port 0815 an Deinem Router geöffnet. Nun kommt nach dem gleichen Prinzip die Antwort an Deinem Router auf Port 0815 an, welcher daraufhin die Pakete an Deine interne IP an Port 4711 weiterleitet - der Router kann ja ins lokale, wie auch ins Internet senden.

Wenn Du aus dem Internet kommst, kannst Du Deinen Router sehen und ihm was schicken. Vermutlich ist der Port grade zu und Dein Datenpaket klatscht gegen eine Wand und verbrennt. Hat jemand keinen Router, so sollte er eine Firewall installieren, um genau das zu bewirken.

Ist der Router per NAT so konfiguriert einen gewissen Port, z.B. 80, offen zu halten und immer an Deinen PC weiterzuleiten, so fragt PC 100.1.1.1 bei Deinem Router auf Port 80 an, mal eine Website zu schicken und diese bei Port 1234 abzugeben, der Router fragt Deinen PC, doch mal eine Website an 100.1.1.1 Port 1234 zu schicken.
Ob 100.1.1.1 dabei wirklich derjenige ist, der fragt, oder nur ein Router, der die Anfrage an einen anderen PC weiterleitet... wer weiß das schon!?

Die Verbindungsanfrage muss immer aus dem lokalen Netz ins Internet gehen - umgekehrt geht's nicht.
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.

Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.

Benutzeravatar
Dirty Oerti
Beiträge: 2229
Registriert: Di Jul 08, 2008 5:05 pm
Wohnort: Thurndorf / Würzburg

Re: Client-/Seververbindung global über IP/TCP

Beitrag von Dirty Oerti » Do Dez 04, 2008 4:22 pm

:D
Xin hat geschrieben:Die Verbindungsanfrage muss immer aus dem lokalen Netz ins Internet gehen - umgekehrt geht's nicht.
Und das ist glaube ich die Information, die Herr Klinke brauchte :)
Bei Fragen einfach an daniel[ät]proggen[Punkt]org
Ich helfe gerne! :)
----------
Wenn du ein Licht am Ende des Tunnels siehst, freu dich nicht zu früh! Es könnte ein Zug sein, der auf dich zukommt!
----
It said: "Install Win95 or better ..." So I installed Linux.

HerrKlinke
Verifiziert
Beiträge: 76
Registriert: Do Sep 04, 2008 2:12 pm
Wohnort: Wismar
Kontaktdaten:

Re: Client-/Seververbindung global über IP/TCP

Beitrag von HerrKlinke » Do Dez 04, 2008 4:32 pm

Ok, verstehe. Das hab ich schon befürchtet.... :(
Na ja, danke trotzdem. :)
Ich versuche dann einfach über FTP und PHP mit ein paar Tricks das selbe zu machen. Leider extrem verzögert.
Ich wollte nämlich einen Forwarding-Server machen, der die Daten komprimiert, damit ich bei meiner lahmen Enwählverbindung schnellere Downloads habe. Ich wollte dazu PureBASIC verwenden.

Dominik
Beiträge: 381
Registriert: Mo Jul 07, 2008 9:39 pm

Re: Client-/Seververbindung global über IP/TCP

Beitrag von Dominik » Do Dez 04, 2008 4:55 pm

für was gibts cronjobs
Rechtschreibefehler sind gewollt und dienen der Unterhaltung

HerrKlinke
Verifiziert
Beiträge: 76
Registriert: Do Sep 04, 2008 2:12 pm
Wohnort: Wismar
Kontaktdaten:

Re: Client-/Seververbindung global über IP/TCP

Beitrag von HerrKlinke » Do Dez 04, 2008 4:57 pm

Und wie soll mir das helfen? Soweit ich weis sind die Zeitgesteuert.

Benutzeravatar
Dirty Oerti
Beiträge: 2229
Registriert: Di Jul 08, 2008 5:05 pm
Wohnort: Thurndorf / Würzburg

Re: Client-/Seververbindung global über IP/TCP

Beitrag von Dirty Oerti » Do Dez 04, 2008 5:26 pm

Also ich wüsste nicht, was CronJobs dabei helfen sollten.

An eine solche Möglichkeit hatte ich (wegen meiner auch nicht gerade berauschenden Verbindung) auch schon mal gedacht :)

Im Endeffekt kannst du das so machen:
Du gibst deiner "Downloadseite" einen Link zu einem Download, den du laden möchtest an.
Dein "Downloadserver" muss dann (mittels PHP, wenn du nicht über die Möglichkeit verfügst CGI-Skripte ausführen zu lassen) die Datei, die du laden möchtest lesen und mit einem geeigneten Algorithmus verpacken.
Das gepackte File musst du dir dann herunterladen. Dann brauchst du natürlich auf deinem Rechner noch ein Entpackprogramm :)
Bei Fragen einfach an daniel[ät]proggen[Punkt]org
Ich helfe gerne! :)
----------
Wenn du ein Licht am Ende des Tunnels siehst, freu dich nicht zu früh! Es könnte ein Zug sein, der auf dich zukommt!
----
It said: "Install Win95 or better ..." So I installed Linux.

Antworten