Butschek.de

Warnung: Diese Seite ist eine statische Kopie eines früher betriebenen Blogs. Es findet keine Aktualisierung mehr statt. Kommentare und die Suche funktionieren nicht.

Linux, Server & Co

Archive for Mai, 2010

Source based Routing

3 comments

Mit 2 IP-Adressen in 2 Netzen unterwegs: Source based Routing

In größeren Download-Clustern hat der Administrator häufig den Wunsch, über einen zweite Uplink auch dann administrativen Zugriff auf die Rechner zu erhalten, wenn der erste Uplink gerade mal voll gelaufen ist.

So trivial der Wunsch klingt, es genügt nicht, einfach eine zweite Netzwerkkarte zu kaufen, diese mit dem Router zu verbinden und eine IP-Adresse zu vergeben. Denn hier spielt das Routing des Servers eine große Rolle.

Üblicherweise entscheidet ein System anhand der ZIEL-Adresse wohin ein Paket geschickt wird. Wird also auf dem zweiten Interface eine IP-Adresse konfiguriert werden zwar eingehende Pakete dort empfangen, sofern der Absender aber nicht im gleichen Netz sitzt wird die Antwort über den Default-Gateway – und damit den vollen Link – zugestellt.

Um das zu verhindern gibt es unter Linux die Möglichkeit, eine weitere Routing-Table mit einem Default-Gateway im zweiten Netz einzurichten.


ip route add table 6 default via ${GATEWAY-AUF-ETH1}

Die Table 6 benutze ich weil sie frei ist, könnte hierfür aber jede andere freie Table benutzt werden. Notfalls mit ‚ip route show table 6‘ vorher prüfen, ob die Table benutzt wird. Nun muss per Regel noch festgelegt werden, dass die Source-Adresse von eth1 auch durch diese Routing-Table geschickt wird:


ip rule add table 6 from ${IP-AUF-ETH1}

Gehen wir also davon aus, dass wir auf der zweiten Netzwerkkarte das Netz 203.0.113.0/30 konfiguriert haben (Gateway: .1, unser System: .2). Dann würden die Kommandos wie folgt lauten:


ip route add table 6 default via 203.0.113.1
ip rule add table 6 from 203.0.113.2

Und schon werden alle Pakete, die von 203.0.113.1 kommen an das Gateway 203.0.113.2 (also die 2. Netzwerkkarte) geschickt.

 

Written by Michael Butschek

Mai 23rd, 2010 at 10:00 am

Posted in IT,LST

Tagged with , ,