TCP Ports bei alltäglichem Gebrauch

OP #4536265
Lesenswert?

Hallo allerseits,

ich wende mich an euch da ich etwas verwirrt bin was TCP Ports angeht.

Hintergrund ist, dass wir in unserer Firma ein ESP8266 haben, welches 
per Anfrage einen HTTP-String sendet, der eine Website enthält. Also 
eigentlich eine Website hostet.

Das Problem ist, dass der Zugriff momentan über Port 8002 unserer DDNS 
läuft. Was wir nicht bedacht haben, , ist, dass ja viele Firmen sehr 
restriktiven Einstellungen haben, was den Internetzugang Ihrer Leute 
betrifft. Ende vom Lied ist, dass viele schlicht keinen Zugriff haben.

Die Lösung wird es wohl sein, den Port von 8002 auf 80 oder 8080 zu 
ändern. Ich habe das NAT jetzt auch mal entsprechend eingestellt. Also 
unsereddns:8080 und unsereddns:80 wurden dann auf das ESP geroutet. 
Meine Fragen jetzt:

Wieso kam man überhaupt noch auf irgendwelche Websiten etc. Wenn alles 
was auf Port 80 oder 8080 geht, auf das ESP geroutet wird, sollten doch 
diverse Webservices nicht mehr funktionieren. Über HTTP läuft doch 
soviel.

Ausserdem...

Ich habe jetzt mal mit Wireshark eine HTTP Get-Request für eine Website 
verfolgt. Von menem Browser aus ging das dann irgendwie über Port 5xxxx
raus. Der Zielport war 80. Von meinem PC geht das ja aber noch über 
unseren Router - Und wahrscheinlich noch viele andere. Welche Ports 
werden denn dann benutzt. Welche Ports werden dann zur Ausgabe benutzt? 
Der Zielport wird ja wohl 80 bleiben oder?

Gruss und Dank

Felix
Gast #4536270
Lesenswert?

Naja...heuzutage nutzt man Stateful Firewalls...die merken sich quasi 
die Verbindung und erlauben dann den Datentransfer zu dem Host der den 
Transfer initiiert hat. Der Client nutzt für ausgehende Verbindungen 
zufällige Ports ab ca 30000
OP #4536297
Lesenswert?

Also wenn ich das richtig verstehe, werden alle eingehenden Verbindungen 
(sofern das mit NAT mit PORT 80/8080 aktiviert ist) auf das ESP 
geroutet.

Startet jedoch ein internes Gerät eine Verbindung, funktioniert dies 
weiterhin, da die Firewall weiss, dass Pakete der Zieladresse ebenjener 
Verbindung nicht zum ESP sondern zu dem anderen Gerät gehören.

TestX schrieb:
> Der Client nutzt für ausgehende Verbindungen
> zufällige Ports ab ca 30000

Also die Router?
#4536376
Lesenswert?

Felix C. schrieb:
> Wieso kam man überhaupt noch auf irgendwelche Websiten etc. Wenn alles
> was auf Port 80 oder 8080 geht, auf das ESP geroutet wird, sollten doch
> diverse Webservices nicht mehr funktionieren. Über HTTP läuft doch
> soviel.

Die eingehenden Verbindungen auf (EureIP:80) werden zum ESP gerouted.

Ausgehende Verbindungen auf (IP!=EureIP:80) sind davon (natürlich!) 
nicht betroffen.
OP #4536442
Lesenswert?

Doch noch eine letzte Frage.

Sagen wir mal es befinden sich 2 Nutzer mit den IP's A und B in einem 
Subnetz und wollen beide auf eine Website zugreifen, mit der IP D.
Dann sollten doch die beiden Verbindungen aus Sicht von D so aussehen:

C: 80? -> D:80
C: 80? -> D:80

Mit C der externen IP von A und B.

Wie soll dann der Router, mit der IP C, dann herausfinden an wenn die 
Antwroten gelangen sollen?

Oder kommt hier dies zum Zuge?

TestX schrieb:
> Der Client nutzt für ausgehende Verbindungen
> zufällige Ports ab ca 30000

Und es sähe eigentlich so aus:

C: Port1 -> D:80
C: Port2 -> D:80

Wobei

Port1 = 30000+
Port2 = 30000+
Port1 != Port2

Entschuldigt bitte meine Neugier gepaart mit Unwissen ;)
#4536472
Lesenswert?

Felix C. schrieb:
> Doch noch eine letzte Frage...

A befindet sich in einem privaten Netzwerk.

D befindet sich in einem öffentlichen Netzwerk.

Als Relay fungiert eine Firewall C, mit einer privaten und einer 
öffentlichen Adresse.

A verbindet sich zu C... Er benutzt eine zufällige (freie) Portnummer a.

Das Relay stellt die Verbindung her und gibt sich (nach erfolgreichen 
SYN mit D) als D:80 gegenüber A aus.

Das Relay verbindet sich zu D... Es benutzt eine zufällige (freie) 
Portnummer c.

Das Relay erhält Daten von D. Es hat sich gemerkt dass der ursprüngliche 
Verbindungsrequest von A kam, und stellt die Daten an A zu.

Aus Sicht von A gibt es die Verbindung (A:a,D:80)

Aus Sicht von C gibt es die beiden Verbindungen (A:a,C:80) und 
(C:c,D:80)

Edit: Oder besser hier gucken: 
https://en.wikipedia.org/wiki/Network_address_translation
OP #4536744
Lesenswert?

@Mikro77 Vielen Dank für die ausführliche Antwort. Genau so etwas habe 
ich gebraucht!

Ferdinand schrieb:
> Du solltest auf jeden Fall überlegen, auch noch einen Proxy
> dazwischenzuschalten, der esp kann ja nur ein paar Verbindungen
> gleichzeitig.

Ich schiesse die Verbindungen immer sofort ab, wenn die haben was sie 
wollten.

Ausserdem habe wir dann doch nicht so viele Benutzer ;).

Hier sonst der Link dazu ;)
http://redacom.ch/iot-industry-4-0/

Ferdinand schrieb:
> Oder ein Loadbalancer und eine ESP-Serverfarm :-)

Hahahah :)

Noch einer schrieb:
> Ist der ESP8266 der einzige Webserver in eurer Firma?

Ja.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren