justanumber44
Goto Top

Port basierter Reverseproxy

Hallo. Ich suche heute mal nach einer unter Ubuntu laufenden Möglichkeit, Domains auf bestimmte Ports weiter zu leiten, leider nicht nur beim TCP Protokoll, sondern auch UDP. Für TCP verwende ich derzeit schon Nginx, aber für UDP ist mir bis jetzt noch nichts greifbares untergekommen. Am besten währe die Lösung natürlich auch mit einer Möglichkeit zur externen Weiterleitung

Danke für eure Hilfe, Jonas

Content-Key: 278728

Url: https://administrator.de/contentid/278728

Ausgedruckt am: 29.03.2024 um 02:03 Uhr

Mitglied: Dani
Dani 29.07.2015 um 22:33:37 Uhr
Goto Top
Guten Abend Jonas,
korrigiert mich, wenn ich falsch liege. UDP ist ein verbindungsloses Protokoll. Der Sender interessiert es nicht ob das Paket angekommen ist oder nicht. Somit kann der Proxy die Verbindung nicht weiterleiten.


Gruß,
Dani
Mitglied: LordGurke
Lösung LordGurke 29.07.2015, aktualisiert am 02.08.2015 um 16:00:54 Uhr
Goto Top
TCP + NGINX = HTTP.
Bei HTTP kannst du das unterscheiden, weil dort bei jedem Request mitgeschickt wird welche Domain angefragt wurde.
Alle Daten fliegen zwar prinzipiell erstmal gegen IP XY, Port 80 - aber da bei HTTP die Möglichkeit gegeben ist, über den sog. "Host:"-Header mitzuteilen um welche Domain es geht ("Virtual Host") kannst du dort unterscheiden, was der Benutzer angefragt hat.

Die allermeisten anderen Protokolle haben diese Funktion nicht. POP3 ist zwar auch TCP, aber dem Protokoll ist nicht beizubringen dem Server mitzuteilen welche Domain beim Client für die Verbindung eingegeben wurde.

WAS willst du denn per UDP weiterleiten? Evtl. gibt das Protokoll diese Möglichkeit der Unterscheidung her, aber sonst: Keine Chance.
Mitglied: justanumber44
justanumber44 29.07.2015 aktualisiert um 22:40:03 Uhr
Goto Top
Zitat von @Dani:

Guten Abend Jonas,
korrigiert mich, wenn ich falsch liege. UDP ist ein verbindungsloses Protokoll. Der Sender interessiert es nicht ob das Paket
angekommen ist oder nicht. Somit kann der Proxy die Verbindung nicht weiterleiten.


Gruß,
Dani

Klar, aber das Paket im einzelnen kann ja weitergeleitet werden, zumindest glaube ich das. Habe leider von TCP wesentlich mehr Ahnung als von UDP :D
Mitglied: 108012
108012 30.07.2015 um 05:54:46 Uhr
Goto Top
Hallo,

es gibt unterschiedliche uPnP Verbindungen die UDP Pakete nutzen und für die man
auch sicherlich einen oder mehrere Ports freischalten bzw. öffnen muss, aber dann
kann man auch einen Ports forwarden und das Protokoll UDP auswählen und in der
Regel dann noch einmal den selben Port der mit TCP zusammen geöffnet bzw.
geforwardet wird.


Gruß
Dobby
Mitglied: justanumber44
justanumber44 02.08.2015 aktualisiert um 16:22:29 Uhr
Goto Top
Ich habe das ganze jetzt einmal umstrukturiert. Werde wohl mit einer rabiaten Umleitung in einem Rutsch nicht ganz weiter kommen, miss auf die Programme einzeln eingehen. Zum umleiten währe gewesen:
Minecraft-Server: TCP, sollte mit haproxy gehen, ein SRV Eintrag ist hier auch möglich
Steam-Dedicated-Server: Offen,
TeamSpeak: Hat selbst schon ein System,
HTTP: Apache und Nginx sind da ja kein Problem,
MySQL: Offen,
CouchDB: TCP basiert, mit Header, also auch haproxy,
FTP: Hatte ich schon mal ne Lösung, muss ich wieder raussuchen,
MongoDB: Offen.

Abgesehen von einer Namensauflösung währe eine Weiterleitung doch an sich problemlos möglich, oder? UDP Sendet bei jeder Anfrage zumindest Port und IP, das würde eine Zusammenfassung mehrerer Server über eine Domain auf eine zwar etwas unschönere Weise ermöglichen, aber doch einfach genug machen.