
Die Grundidee ist in der obigen Frage dargelegt, aber lassen Sie mich das erklären.
Ich dachte daran, einen Minecraft-Server in einer VM auf meinem dedizierten Server hier zu Hause zu hosten (im Bridge-Modus, damit ich den Datenverkehr über die Portweiterleitung dorthin leiten kann). Nun wurde ich kürzlich von einem Freund gefragt, ob ich auch einen Server für seinen mittelmäßig kleinen Discord-Server hosten könnte. Natürlich habe ich zugestimmt. Mein Plan wäre, einfach eine zweite VM zu öffnen, in der sein Server laufen kann, und ihm SSH-Zugriff darauf zu gewähren.
Jetzt stehe ich jedoch vor dem Problem, dass Minecraft standardmäßig einen bestimmten Port für die Verbindung verwendet. Ich möchte nicht wirklich von den Leuten verlangen, am Ende der URL eine Portnummer hinzuzufügen. Wie kann ich also den für eine VM bestimmten Datenverkehr von dem für die andere VM bestimmten Datenverkehr trennen, wenn der eingehende Datenverkehr für beide auf demselben Port liegt? Ist das überhaupt möglich? Kann ich denselben Port an zwei verschiedene interne IP-Adressen weiterleiten?
Ich dachte daran, vielleicht mc1.mydomain.com und mc2.mydomain.com zu verwenden, um den Verkehr automatisch an unterschiedliche eingehende Ports umzuleiten, d. h. Ports an den Domänennamen zu binden.
Ich habe keine Ahnung, ob ich nur über etwas Unmögliches fantasiere. Für etwas Hilfe wäre ich dankbar.
Dank im Voraus.
PS: Ich habe keine Möglichkeit, eine feste IP-Adresse zu verwenden, daher bin ich auf dynamische DNS-Dienste beschränkt.
Antwort1
Das ist nicht möglich, da ein einzelner TCP-Port nur an einen einzigen internen Server weitergeleitet werden kann (es sei denn, Sie möchten einen Lastenausgleich durchführen, wofür Sie 1) einen Lastenausgleich und 2) zwei Server benötigen würden, auf denen tatsächlich dieselbe Anwendung ausgeführt wird, nicht zwei verschiedene).
So etwas kann nur mit HTTP(S) und einem Reverse-Proxy gemacht werden, der die angeforderte URL prüfen und den Datenverkehr je nach Anforderung an verschiedene Server senden kann. Dadurch können mehrere Webserver über denselben Reverse-Proxy veröffentlicht werden. Dies ist jedoch nur möglich, weil HTTP(S) dies auf der Anwendungsebene ausdrücklich unterstützt. Auf der Netzwerkebene gibt es nichts Vergleichbares, dort können Sie nur mit IP-Adressen und Ports arbeiten.