ubuntuusers.de

Passende Proxy- oder Gateway-Software gesucht

Status: Gelöst | Ubuntu-Version: Ubuntu 14.04 (Trusty Tahr)
Antworten |

thegimliboy

Anmeldungsdatum:
5. März 2016

Beiträge: Zähle...

Hallo,

ich suche ein Stück Proxy- oder Gateway-Software, mit der bei gleichem Port an verschiedene Rechner weitergeleitet werden kann. Also: Zwei Rechner im Internet, sagen wir mal C1 und C2, möchten zwei unterschiedliche Server (S1 und S2) in meinem privaten Netzwerk erreichen. Von Außen hat meine Fritzbox auf jeden Fall immer die gleiche IP-Adresse, die Box wird aber über zwei unterschiedliche Namen angesprochen: - mein-s1.dyndns.de - mein-s2.dyndns.de In allen Fällen wird immer die gleiche Port-Adresse verwendet: 21111

Wenn von außen mein-s1.dyndns.de:21111 soll die Fritzbox and die Gateway-Software weiterleiten. Die Gateway-Software soll den Namen aus dem IP-Paket auslesen (also mein-s1) und entsprechend an S1 weiterleiten, ohne sich um den Inhalt des TCP-Paketes zu kümmern. Entsprechendes gilt dann auch für S2, wenn auf mein-s2.dyndns.de:21111 angefragt wird.

Gibt es so eine Gateway-Software?

Grüße Gimli

senden9

Avatar von senden9

Anmeldungsdatum:
8. Februar 2010

Beiträge: 965

Wohnort: Österreich

So etwas kann es nicht geben. Die Domain, z.B. mein-s1.dyndns.de, steht nicht im TCP Header. Manche Protokolle, wie z.B. HTTP, sehen Felder in der TCP-Payload dafür vor. Deshalb kann man auch mehrere Webseiten mit verschiedene Domains auf einem Server/Port betreiben.

thegimliboy

(Themenstarter)

Anmeldungsdatum:
5. März 2016

Beiträge: 4

senden9 schrieb:

So etwas kann es nicht geben. Die Domain, z.B. mein-s1.dyndns.de, steht nicht im TCP Header. Manche Protokolle, wie z.B. HTTP, sehen Felder in der TCP-Payload dafür vor. Deshalb kann man auch mehrere Webseiten mit verschiedene Domains auf einem Server/Port betreiben.

Danke, ich dachte die Domain würde auch mit TCP übergeben werden.

Grüße Gimli

misterunknown Team-Icon

Ehemalige
Avatar von misterunknown

Anmeldungsdatum:
28. Oktober 2009

Beiträge: 4403

Wohnort: Sachsen

Man könnte ein Proxying via iptables abhängig von der Client-IP machen.

thegimliboy

(Themenstarter)

Anmeldungsdatum:
5. März 2016

Beiträge: 4

misterunknown schrieb:

Man könnte ein Proxying via iptables abhängig von der Client-IP machen.

Aber ich muss der Clients abhängig von der aufgerufenen Domain ansprechen. Damit würde iptables mir doch auch nicht helfe, oder irre ich mich?

misterunknown Team-Icon

Ehemalige
Avatar von misterunknown

Anmeldungsdatum:
28. Oktober 2009

Beiträge: 4403

Wohnort: Sachsen

thegimliboy schrieb:

Aber ich muss der Clients abhängig von der aufgerufenen Domain ansprechen. Damit würde iptables mir doch auch nicht helfe, oder irre ich mich?

Richtig. Abhängig vom DNS-Name geht das nicht, es sei denn es wäre ein Webservice, dem du den Hostnamen per Host-Header mitgibst. Dann könntest du einen Apache als Proxy nutzen.

thegimliboy

(Themenstarter)

Anmeldungsdatum:
5. März 2016

Beiträge: 4

misterunknown schrieb:

thegimliboy schrieb:

Aber ich muss der Clients abhängig von der aufgerufenen Domain ansprechen. Damit würde iptables mir doch auch nicht helfe, oder irre ich mich?

Richtig. Abhängig vom DNS-Name geht das nicht, es sei denn es wäre ein Webservice, dem du den Hostnamen per Host-Header mitgibst. Dann könntest du einen Apache als Proxy nutzen.

Ist es aber leider nicht, ich dachte nur der Hostname wäre in jedem TCP-Header enthalten.

misterunknown Team-Icon

Ehemalige
Avatar von misterunknown

Anmeldungsdatum:
28. Oktober 2009

Beiträge: 4403

Wohnort: Sachsen

thegimliboy schrieb:

Ist es aber leider nicht, ich dachte nur der Hostname wäre in jedem TCP-Header enthalten.

Nö, der TCP-Header sieht so aus: TCP-Header.

Für deinen Fall sehe ich folgende Lösungen:

  • Port für einen Server ändern

  • zweite IP nutzen

  • VPN nutzen (und dann die Namen auf verschiedene VPN-IPs auflösen lassen)

Alternativ könntest du auch überlegen, ob ein anderes Kriterium als der Hostname in Frage kommt. Ich weiß ja nicht, welchen Dienst du verwendest, aber vielleicht könnte man eine Eingrenzung auch anhand des Source-Ports machen (Source-Port 20000-30000 ⇒ Server_A, Source-Port 30000-40000 ⇒ Server_B). Das ginge wieder via iptables. Da kommt es natürlich drauf an, ob man die Source-Ports manuell beeinflussen kann.

Antworten |