www.mikrocontroller.net

Forum: PC-Programmierung Internet Port offen halten für eingehende Verbindungen


Autor: Jasper (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo

Ich beschäftige mich zur Zeit ein wenig mit der Netzerkprogrammierung.
Dabei bin ich auf etwas gestoßen, dass mir nicht ganz klar ist.

Und zwar habe ich mir die folgende Situation überlegt:

1. Ich habe im Internet einen Server den ich z.B. über den Port 1000 
ansprechen kann.

2. Auf der anderen seite habe ich einen Client, der hinter einem Router 
sitzt und auf den Server über Port 1000 zugreift.

3. Jetzt ist der Client mit dem Server auf Port 1000 verbunden und es 
findet eine Übertragung in beide Richtungen statt.

4. Da der Router die Verbindung in beide Richtungen zulässt, müsste es 
doch möglich sein auf eine Serveranwendung(läuft auf dem Client), die 
mit Port 1000 arbeitet, hinter dem Router zuzugreifen.


Meine Frage:
Ist meine Überlegung auch Praktisch umzusetzen, oder habe ich etwas 
grundlegendes übersehen, dass meine Idee zunichte macht.

Einen schönen Samstag Abend

Jasper

Autor: Rolf Magnus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jasper schrieb:
> 4. Da der Router die Verbindung in beide Richtungen zulässt, müsste es
> doch möglich sein auf eine Serveranwendung(läuft auf dem Client),

Was denn nun? Client oder Server?

> die mit Port 1000 arbeitet, hinter dem Router zuzugreifen.

Port 1000 auf welcher Seite? Beide Kommunikationspartner haben einen 
Port.

Autor: Jasper (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

also zuerst verbimdet sich der Client(hinter dem Router) mit dem Server 
im Internet, und wenn die Verbindung dann steht, wird af dem Client 
hinter dem Router eine Serveranwendung gestartet, die auf Port 1000 
lauscht.

Da der Router ja für die erste Verbindung den Port 1000 in beide 
Richtungen durchlassen muss, sollte es jetzt möglich sein aus dem 
Internet über Port 1000 auf die Serveranwendung hinter dem Router 
zuzugreifen.

Gruß

Jasper

Autor: Stefan Ernst (sternst)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jasper schrieb:

> Da der Router ja für die erste Verbindung den Port 1000 in beide
> Richtungen durchlassen muss, sollte es jetzt möglich sein aus dem
> Internet über Port 1000 auf die Serveranwendung hinter dem Router
> zuzugreifen.

Nein, denn der Router ist ja auch nicht blöde. Der lässt nur Pakete 
durch, die sich konkret auf die eine Verbindung beziehen, und nicht 
blind einfach alle bezogen auf den Port.

Autor: g457 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nein, das funktioniert so nicht, weil sich Nat-Router (das sind die 
üblichen Heimgeräte) grundsätzlich die Zuordnung von Quelle und Ziel 
merken. Aber Die Idee als solche funktioniert schon, nur halt anders - 
das Zauberwort ist 'UDP Hole Punching' [1] bzw. 'TCP Hole Punching' [2].

Die 'saubere' Lösung ist allerdings das Einrichten einer entsprechenden 
Forwarding-Regel am Router, nur das funktioniert zuverlässig.

HTH

[1] http://en.wikipedia.org/wiki/UDP_hole_punching
[2] http://en.wikipedia.org/wiki/TCP_hole_punching

Autor: Jasper (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo nochmal

Vielen Dank für eure schnellen Antworten.
Dann werd ich mich mal näher mit den beiden Links Befassen!

schönen Abend noch

Jasper

Autor: Anzahl Blaetter eines Purzelbaumes (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also.
Ein Server lauft immer und wartet auf eine Verbindung von aussen, der 
Server braucht daher ein Port-forward auf seinem Router.
Ein Client wird gestartet und initiert eine Verbindung zu einem Server. 
Da seine Anfrage von Innen nach auseen geht, ist sein Router 
transparent. Wenn der Client seine Aufgabe geloest hat wird er beendet.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.