CentOS 7: Falsche Metric bei regelbasiertem Routing nach Server-Reboot

M

mikeriedweg

Hallo zusammen

Ich möchte unseren existierenden SFTP Server durch einen neuen Server mit CentOS 7 ersetzen.
Da der Server einerseits direkt via öffentlicher IP angesprochen werden soll und andererseits für Management- und Internetzugriff über eine interne DMZ Adresse, werden 2 Default Gateways benötigt. Ich habe daher ein regelbasiertes Routing eingerichtet.

eth0 (interne DMZ Adresse, 172.17.11.11)
eth1 (öffentliche IP Adresse, 98.76.82.80)

1. In der Datei /etc/iproute2/rt_tables 2 neue Routing Tabellen angelegt:
--> 1 rt_eth0
--> 2 rt_eth1

2. Unter /etc/sysconfig/network-scripts eine neue Routing Datei für jedes Interface angelegt:
route-eth0:
--> 172.17.11.0/24 dev eth0 src 172.17.11.11 table rt_eth0
--> default via 172.17.11.1 dev eth0 table rt_eth0

route-eth1:
--> xx.yy.82.64/26 dev eth1 src xx.yy.82.80 table rt_eth1
--> default via xx.yy.82.65 dev eth1 table rt_eth1

3. Unter /etc/sysconfig/network-scripts eine neue Rule Datei für jedes Interface angelegt
rule-eth0:
--> from 172.17.11.11/32 table rt_eth0 priority 100
--> to 172.17.11.11/32 table rt_eth0 priority 100
Die Priorität von eth0 muss höher (sprich tieferer Wert) sein als eth1, da der Zugriff ins Internet zwingend über das Interface eth0 erfolgen muss!

rule-eth1:
--> from xx.yy.82.80/32 table rt_eth1 priority 101
--> to xx.yy.82.80/32 table rt_eth1 priority 101

4. Damit die Einstellungen auch vom System gelesen werden muss noch folgender Dienst installiert und aktiviert werden:
--> yum install NetworkManager-config-routing-rules
--> systemctl enable NetworkManager-dispatcher.service
--> systemctl start NetworkManager-dispatcher.service


Bei einem Server Neustart werden zwar die Routing Regeln und Routing Einträge geladen, leider wird die Metric aber zufällig vergeben und nicht wie in den rule-ethX Dateien vorgegeben:
upload_2016-10-24_18-18-54.png

Wenn ich jetzt aber den Netzwerk Dienst nochmals neustarte systemctl restart network.service dann stimmt die Metric und ich kann via Interface eth0 ins Internet zugreifen:
upload_2016-10-24_18-20-57.png


Klar könnte ich jetzt einfach ein Skript einrichten, das nach dem Server Startup nochmals den Netzwerk Service neustartet. Dies scheint mir aber nicht wirklich eine elegante Lösung zu sein.

Ich wäre euch sehr dankbar, falls jemand noch einen Tipp zu meinem Problem hat.
 

Ähnliche Themen

Routing mehrere Netzwerkkarten

OpenVPN - Server kann clients nicht erreichen.

dovecot und postfix Konfiguration Problem

CentOS 6.3 RADIUS - Keine Verbindung möglich

iptables - default policy - Server macht dicht

Zurück
Oben