Datei übers Netz übertragen

06/11/2007 - 11:09 von Karl M. | Report spam
Hallo NG!

Eigentlich ist das eine Netzwerkfrage, doch vielleicht gibt es ja schon
Lösungen in C#. Ich möchte eine Datei von einem Rechner auf einen andern
übertragen. Meine Lösung dafür ist der System.Net.Sockets.TCPClient bzw.
.TCPListener. Das funktioniert ganz fein soweit. Allerdings möchte ich nun
von meinem Rechner die Datei auf einen Rechner im Web übertragen. D.h. Mein
Rechner -> Router-Gateway -> Internet -> Router-Gateway -> Zielrechner. Wie
mache ich das? Ein funktionierendes Pendant ist der MSN Messenger. Also habe
ich mir überlegt in einer Webdatenbank die Router-Gateway-IPs
zwischenzuspeichern, um zumindest den richtigen Weg zu haben. Eine
Alternative wàre sicher auch DynDNS. Aber wie komme ich nun vom
Ziel-Router-Gateway zum Ziel-Rechner?

Im Voraus vielen Dank

Mit freundlichen Grüßen
 

Lesen sie die antworten

#1 Norbert Eder
07/11/2007 - 13:02 | Warnen spam
Hallo,

Das was du benötigst ist ein öffentlicher Server, der über das Internet
erreichbar sind und wo sich alle Clients anmelden. Dann gibt es zwei
Möglichkeiten:

a) Die Kommunikation erfolgt über diesen Server, d.h. Client A möchte an
Client B senden, die Daten gehen dann von Client A zum Server und Server
übermittelt zu Client B (der Server hat Verbindungen zu den einzelnen
Clients offen und kann daher die Daten senden - unabhàngig von irgendwelchen
Routern).

b) Über den Server werden die eigentlichen IP-Adressen der Clients
ausgetauscht, worüber eine direkte Verbindung möglich ist. D.h. es bestehen
dann bei der Kommunikation zwischen Client A und Client B zwei offene
Kanàle. Einmal zum Server und einmal zwischen den Clients.

Für einen dieser Wege solltest du dich entscheiden. Die Router-IPs etc.
musst du dir hier nicht extra speichern. Du brauchst jeweils immer nur den
Endpunkt und diesen bekommst du je nach gewàhltem Punkt auf eine
unterschiedliche Weise.

mfg,
Norbert



"Karl M." schrieb im Newsbeitrag
news:OCo#
Hallo NG!

Eigentlich ist das eine Netzwerkfrage, doch vielleicht gibt es ja schon
Lösungen in C#. Ich möchte eine Datei von einem Rechner auf einen andern
übertragen. Meine Lösung dafür ist der System.Net.Sockets.TCPClient bzw.
.TCPListener. Das funktioniert ganz fein soweit. Allerdings möchte ich nun
von meinem Rechner die Datei auf einen Rechner im Web übertragen. D.h.
Mein Rechner -> Router-Gateway -> Internet -> Router-Gateway ->
Zielrechner. Wie mache ich das? Ein funktionierendes Pendant ist der MSN
Messenger. Also habe ich mir überlegt in einer Webdatenbank die
Router-Gateway-IPs zwischenzuspeichern, um zumindest den richtigen Weg zu
haben. Eine Alternative wàre sicher auch DynDNS. Aber wie komme ich nun
vom Ziel-Router-Gateway zum Ziel-Rechner?

Im Voraus vielen Dank

Mit freundlichen Grüßen

Ähnliche fragen