Hallo, Liste!
Ich habe ein kleines Problem und mein Gehirn schläft noch...
Also, folgendes: ein Server hat 5 Netzkarten:
eth0 => 192.168.2.100 (Netz 192.168.2.0/24) eth1 => 192.168.3.100 (Netz 192.168.3.0/24) eth2 => XX.YY.ZZ.106 (Netz XX.YY.ZZ.104/29) eth2:1 => XX.YY.ZZ.107 (Netz XX.YY.ZZ.104/29) eth3 => keine IP, wird für PPP benutzt
Die IPs des Netzes 192.168.2.0/24 werden Internet über ppp0 oder eth2 sehen, je nach Ziel (mit Redundanz).
Was ich jetzt machen soll ist, daß das Netz 192.168.3.0/24 das Internet über die IP XX.YY.ZZ.107 sieht.
Und nun kann ich nicht verstehen WIE... Egal ob mit ip route oder iptables, aber es muß gehen, weiß aber nicht wie...
Kann jemand mir helfen?
Danke Luca Bertoncello (lucabert@lucabert.de)
Luca Bertoncello schrieb:
Hallo, Liste!
Ich habe ein kleines Problem und mein Gehirn schläft noch...
Also, folgendes: ein Server hat 5 Netzkarten:
eth0 => 192.168.2.100 (Netz 192.168.2.0/24) eth1 => 192.168.3.100 (Netz 192.168.3.0/24) eth2 => XX.YY.ZZ.106 (Netz XX.YY.ZZ.104/29) eth2:1 => XX.YY.ZZ.107 (Netz XX.YY.ZZ.104/29) eth3 => keine IP, wird für PPP benutzt
Die IPs des Netzes 192.168.2.0/24 werden Internet über ppp0 oder eth2 sehen, je nach Ziel (mit Redundanz).
Was ich jetzt machen soll ist, daß das Netz 192.168.3.0/24 das Internet über die IP XX.YY.ZZ.107 sieht.
Und nun kann ich nicht verstehen WIE... Egal ob mit ip route oder iptables, aber es muß gehen, weiß aber nicht wie...
routen sind meines Wissens nach immer zielorientiert und da du normalerweise nur eine defaultroute hast, geht das nicht. Routing und iptables sind zwei verschiedene Dinge, mit iptables kannst du den IP-Verkehr nur einschränken. Das manipulieren von Quell- oder Ziel-IP hilft hier nicht weiter. D.h. due kannst die Paket nur anhand der Zielnetze unterschiedlich routen.
Ohne es selbst probiert zu haben, könnte vielleicht ein Routingdaemon (routed ?) hier weiterhelfen.
Gruß Rico
am Mon, dem 23.06.2008, um 11:50:59 +0200 mailte Rico Koerner folgendes:
Luca Bertoncello schrieb:
Hallo, Liste!
Ich habe ein kleines Problem und mein Gehirn schläft noch...
Also, folgendes: ein Server hat 5 Netzkarten:
eth0 => 192.168.2.100 (Netz 192.168.2.0/24) eth1 => 192.168.3.100 (Netz 192.168.3.0/24) eth2 => XX.YY.ZZ.106 (Netz XX.YY.ZZ.104/29) eth2:1 => XX.YY.ZZ.107 (Netz XX.YY.ZZ.104/29) eth3 => keine IP, wird für PPP benutzt
Die IPs des Netzes 192.168.2.0/24 werden Internet über ppp0 oder eth2 sehen, je nach Ziel (mit Redundanz).
Was ich jetzt machen soll ist, daß das Netz 192.168.3.0/24 das Internet über die IP XX.YY.ZZ.107 sieht.
Und nun kann ich nicht verstehen WIE... Egal ob mit ip route oder iptables, aber es muß gehen, weiß aber nicht wie...
routen sind meines Wissens nach immer zielorientiert und da du
Jein, man kann da durchaus Schweinereien anstellen, das dazu passende Packet ist als iproute bzw iproute2 bekannt, man kann sich auch mal http://lartc.org/ zu Gemüte führen, falls man viel Zeit und Geduld hat...
Andreas
Andreas Kretschmer [2008-06-23, 12:21 +0200]:
am Mon, dem 23.06.2008, um 11:50:59 +0200 mailte Rico Koerner folgendes:
Hi,
Luca Bertoncello schrieb:
Hallo, Liste!
Ich habe ein kleines Problem und mein Gehirn schläft noch...
Also, folgendes: ein Server hat 5 Netzkarten:
eth0 => 192.168.2.100 (Netz 192.168.2.0/24)
[...]
Und nun kann ich nicht verstehen WIE... Egal ob mit ip route oder iptables, aber es muß gehen, weiß aber nicht wie...
routen sind meines Wissens nach immer zielorientiert und da du
Routen werden in einer Tabelle nachgesehen. Bei Linux sind das mehrere Tabellen. Welche Routing Tabelle genommen wird, kann man konfigurieren. Ein Kriterium kann die Quell-IP sein.
Du wirst sicher in: http://lartc.org/howto/lartc.rpdb.html#LARTC.RPDB.SIMPLE die Lösung Deines Problems finden.
http://lartc.org/ zu Gemüte führen, falls man viel Zeit und Geduld hat...
Wenn man Routing konfiguriert, sollte man das mal durchgeblättert haben ;)
Gruß
Frank
Frank Becker fb@alien8.de schrieb:
Routen werden in einer Tabelle nachgesehen. Bei Linux sind das mehrere Tabellen. Welche Routing Tabelle genommen wird, kann man konfigurieren. Ein Kriterium kann die Quell-IP sein.
Du wirst sicher in: http://lartc.org/howto/lartc.rpdb.html#LARTC.RPDB.SIMPLE die Lösung Deines Problems finden.
Vielen Dank für eure Antworten!
Leider verstehe ich nicht wirklich, was ich machen soll...
Ich habe was in der Art geschrieben:
/sbin/ip rule add from 192.168.3.0/24 table NET_MUSTERMANNS /sbin/ip route add 192.168.3.0/24 dev eth1 table NET_MUSTERMANNS /sbin/ip route add default via XX.YY.ZZ.105 src XX.YY.ZZ.107 table NET_MUSTERMANNS
Dann habe ich:
# ip route show table NET_MUSTERMANNS 192.168.3.0/24 dev eth1 scope link default via XX.YY.ZZ.105 dev eth2 src XX.YY.ZZ.107
und:
# ip rule show 32762: from 192.168.3.0/24 lookup NET_MUSTERMANNS
Nun wird die richtige Verbindung benutzt, von den PCs 192.168.3.0/24, aber mit der falschen IP (der Rechner hat auch XX.YY.ZZ.106 und es wird diese benutzt anstatt von XX.YY.ZZ.107).
Was mache ich falsch?
Danke Luca Bertoncello (lucabert@lucabert.de)
Hi Luca,
On Mon, Jun 23, 2008 at 13:57:23 +0200, Luca Bertoncello wrote:
Vielen Dank fuer eure Antworten! Leider verstehe ich nicht wirklich, was ich machen soll...
http://lartc.org/howto/lartc.rpdb.multiple-links.html
Punkt 4.2.1 muesste Deinem Setup doch ziemlich nahe kommen. Dort wird in den Routing-Regeln auch explizit eine Source-Adresse gesetzt.
Gruss, Chris
Christian Perle chris@linuxinfotag.de schrieb:
Hi Luca,
On Mon, Jun 23, 2008 at 13:57:23 +0200, Luca Bertoncello wrote:
Vielen Dank fuer eure Antworten! Leider verstehe ich nicht wirklich, was ich machen soll...
http://lartc.org/howto/lartc.rpdb.multiple-links.html
Punkt 4.2.1 muesste Deinem Setup doch ziemlich nahe kommen. Dort wird in den Routing-Regeln auch explizit eine Source-Adresse gesetzt.
Leider nicht...
Ich habe eine Karte mit zwei IPs. Und diese IPs gehören dem gleichen Netz. Ich habe schon probiert diese "src" zu setzen, aber entweder macht gar nichts, oder sagt mir, daß die Route schon existiert...
Also, nochmal als Zusammenfassung:
eth0: IP 192.168.2.100 (Netz 192.168.2.0/24) eth1: IP 192.168.3.100 (Netz 192.168.3.0/24) eth2: IP XX.YY.ZZ.106 (Netz XX.YY.ZZ.104/29) eth2:0: IP XX.YY.ZZ.107 (Netz XX.YY.ZZ.104/29 = GLEICHES NETZ WIE OBEN!!)
Und ich will, daß alle PCs, mit IPs 192.168.2.X das Internet mit IP XX.YY.ZZ.106 sehen, und die mit IPs 192.168.3.X das Internet mit IP XX.YY.ZZ.107.
Bisher schaffe ich nur, daß alle PCs das Internet mit der IP XX.YY.ZZ.106 surfen...
Ist was ich möchte nicht möglich?
Grüße Luca Bertoncello (lucabert@lucabert.de)
Luca Bertoncello schrieb:
Christian Perle chris@linuxinfotag.de schrieb:
Hi Luca,
On Mon, Jun 23, 2008 at 13:57:23 +0200, Luca Bertoncello wrote:
[...]
Hi all,
Ist was ich möchte nicht möglich?
Ich glaub Du hast # ip route flush cache vergessen. Ich hab da was zusammengeschrieben http://www.psycast.de/blog/?postid=74 ggf hilft's Dir.
Grüße Luca Bertoncello (lucabert@lucabert.de)
Andreas Kretschmer schrieb:
Jein, man kann da durchaus Schweinereien anstellen, das dazu passende Packet ist als iproute bzw iproute2 bekannt, man kann sich auch mal http://lartc.org/ zu Gemüte führen, falls man viel Zeit und Geduld hat...
Wieder was dazu gelernt. :-)
Rico
Hi Luca,
On Mon, Jun 23, 2008 at 09:51:17 +0200, Luca Bertoncello wrote:
eth0 => 192.168.2.100 (Netz 192.168.2.0/24) eth1 => 192.168.3.100 (Netz 192.168.3.0/24) eth2 => XX.YY.ZZ.106 (Netz XX.YY.ZZ.104/29) eth2:1 => XX.YY.ZZ.107 (Netz XX.YY.ZZ.104/29) eth3 => keine IP, wird fuer PPP benutzt
Die IPs des Netzes 192.168.2.0/24 werden Internet ueber ppp0 oder eth2 sehen, je nach Ziel (mit Redundanz).
Was ich jetzt machen soll ist, dass das Netz 192.168.3.0/24 das Internet ueber die IP XX.YY.ZZ.107 sieht.
Sowas geht mit Policy Routing, konfigurierbar ueber das ip-Kommando. Prinzipielles Vorgehen: Man definiert Regeln, die darueber entscheiden, welche Routing-Table verwendet wird. Als Kriterien kann man z.B. incoming interface, source IP, tos-Flags usw. verwenden. Vor der Routing-Entscheidung gibt es also noch eine "Table-Entscheidung". Genau dokumentiert ist das auf lartc.org.
Gruss, Chris
lug-dd@mailman.schlittermann.de