• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

iproute2 Frage/Problem

Hallo Gemeinde,

ich habe gleich mal eine Frage zu iproute2 bei der ich gerade nicht weiter komme.
Es geht um folgendes:
Es gibt ein Apache mit drei vhosts mit unterschiedlichen Adressen zB. 10.10.1.1, 10.10.1.2 und 10.10.1.3. Diese werden von einer Adresse zB. 10.10.1.61 angesprochen und per iproute2 an die entsprechenden Adressen weiter geleitet. Es gibt für diese Weiterleitung folgende Einträge in der rt_tables:
#
# reserved values
#
255 local
254 main
253 default
0 unspec
#
# local
#
#1 inr.ruhep
151 test1
152 test2
153 test3

"ip rule list" zeigt folgendes:
0: from all lookup local
50: from all to 192.168.8.0/22 lookup management
100: from 10.10.1.3 lookup test3
200: from 10.10.1.2 lookup test2
300: from 10.10.1.1 lookup test1
32766: from all lookup main
32767: from all lookup default

Die Tables zeigen folgende Einträge:
ip route list table test1
default via 10.10.1.61 dev eth0
ip route list table test2
default via 10.10.1.64 dev eth0
ip route list table test3
default via 10.10.1.61 dev eth0

Nun soll ein weiterer Server Anfragen an die 10.10.1.1 machen. Dieser hat die IP 10.10.1.71. Ohne Änderungen werden nun Anfragen (zB wget 10.10.1.1:8080) an die 10.10.1.1 geleitet, aber die Antwort wird an den 10.10.1.61 geleitet. Dadurch kommt es zu einem Timeout.

Wenn ich nun einen neuen Table "test4" mit der Adresse 10.10.1.71 anlege und eine Rolle hinzufüge, die ebenfalls auf die 10.10.1.1 zeigt, funktioniert die Anfrage und die Antwort zu dieser Adresse, aber es werden keine Anfragen mehr von der 10.10.1.61 beantwortet.

Nun zu meiner Frage. Wie konfiguriere ich iproute2, dass ich sowohl von den Adressen 10.10.1.61 und 10.10.1.71 Anfragen an den vhost 10.10.1.1 senden kann und dieser, diese Anfragen beantwortet und an die jeweiligen Adressen zurück schickt? Nur mit priorisieren der Adressen in den Regeln komme ich nicht weiter.

Ich hoffe, meine Erläuterungen sind verständlich und vielen Dank für Eure Hilfe!
 
Da du mittels 10.0.1.61 und 10.0.1.71 auf die VHosts zugreifen willst, vermute ich mal, dass du ein Loadbalancing umsetzen willst oder?

Also, die rt_tables sind Routing- Tabellen. Da sich alle VHosts im selben Netz befinden brauchst du diese Tabellen nicht mal ansatzweise.

Für ein Loadbalancing wäre in deinem Fall entweder Nginx oder per IP-Tables Regeln inkl. FWmark eher geeignet.

Es wäre enorm hilfreich, wenn du uns mitteilst, was du mit dieser Konstellation bezwecken willst.
 
Hallo,

erstmal vielen Dank für Deine Antwort!
ich habe dieses System so übernommen wie es aufgebaut ist. Anfragen kommen von der 10.10.1.61 an die 10.10.1.1 und gehen wieder zurück. Soweit so gut.
Der 10.10.1.71 ist ein Testsystem um ebenfalls auf den vhost 10.10.1.1 zuzugreifen. Von diesem kommen nur unverschlüsselte Anfragen. Von 10.10.1.61 kommen sowohl verschlüsselte als auch unverschlüsselte Anfragen. Ein Loadbalancing soll nicht aufgebaut werden. Mir geht es im Grunde nur darum wie ich iproute so einstelle, dass ich von zwei Adressen (10.10.1.61 und 10.10.1.71) auf eine (10.10.1.1) zugreife und die Pakete entsprechend dem Absender wieder an diesen zurück geleitet werden. Durch die Priorisierung trifft nur eine der beiden Adressen und die andere funktioniert dann nicht mehr.

Vielen Dank
 
marvel007 schrieb:
ich habe dieses System so übernommen wie es aufgebaut ist.

Deinen Vorgänger kannst du nicht fragen, was er damit umsetzen wollte oder?

marvel007 schrieb:
Mir geht es im Grunde nur darum wie ich iproute so einstelle, dass ich von zwei Adressen (10.10.1.61 und 10.10.1.71) auf eine (10.10.1.1) zugreife und die Pakete entsprechend dem Absender wieder an diesen zurück geleitet werden.

Ich gehe mal davobn aus, dass das Netz 10.10.1.0/24 ist und daher brauchst du auch keinerlei Routing, weil die Hosts im gleichen Netz sind. Daher ja meine Frage, was damit bezweckt bzw. umgesetzt werden soll bzw. ist.

marvel007 schrieb:
Durch die Priorisierung trifft nur eine der beiden Adressen und die andere funktioniert dann nicht mehr.

Welche Priorisierung? Wenn der Client nicht im selben Netz ist wie der VHost, dann verschickt der VHost die Antwort über sein Default Gateway. Das hat nichts mit Priorisierung zu tun.

Eine Priorisierung des Traffics erfolgt anhand des Protocols, des Netzes oder anhand des TOS (Type of Service) und wird i.d.R. durch "class based queueing" umgesetzt. Priorisierung und Routing sind zwei verschiedene Paar Schuhe.
 
Oben