Ich richte zwei IP-Adressen auf einem eth und eine IP-Adresse auf einer zweiten NIC mit iproute2 ein. Es gibt einige wirklich gute ArtikelHierUndHierin denen gut erklärt wird, wie das geht.
Die Überprüfung der Regeln mitIP-Regel anzeigen, gibt fälschlicherweise Folgendes zurück:
Die Datenbank /etc/iproute2/rt_tables ist beschädigt bei ip route add 192.168.15.0 dev eth0 src 192.168.15.190 table mgmtsecond
Ich habe stundenlang gegoogelt, aber nicht viel zu diesem Fehler gefunden. Ich habe die Syntax anhand der offiziellen Dokumente überprüft. Sieht gut aus.
Irgendwelche Vorschläge? Danke!!
/etc/iproute2/rt_tables
# reserved values
#
255 local
254 main
253 default
0 unspec
#
# Mgmt Alias and Mon Ports
#
1 mgmtsecond
2 monport
# Management Port Second Instance
# Main#2 def is 192.168.15.1
ip route add 192.168.15.0/24 dev eth0 src 192.168.15.190 table mgmtsecond
ip route add default via 192.168.15.1 dev eth0 table mgmtsecond
# Monitor Port. Default 192.168.16.1
ip route add 192.168.16.0/24 dev eth1 src 192.168.16.190 table monport
ip route add default via 192.168.16.1 dev eth1 table monport
ip rule add from 10192.168.15.0/24 table mgmtsecond
ip rule add to 192.168.15.0/24 table mgmtsecond
Antwort1
ip route add
Sie sollten die Befehle und nicht ip rule add
zu dieser Datei hinzufügen /etc/iproute2/rt_tables
. Das Dateiformat ist wie folgt:
table_id table_name
Beispiel:
255 local
Die Fehlermeldung ist eindeutig bezüglich des Fehlerortes:
Die Datenbank /etc/iproute2/rt_tables ist beschädigt bei ip route add 192.168.15.0 dev eth0 src 192.168.15.190 table mgmtsecond
Routen und Regeln sollten manuell oder zu einem anderen Skript hinzugefügt werden, das bei Bedarf aufgerufen wird. Sie können sie beispielsweise zu einem /etc/rc.local
Skript hinzufügen, das bei Bedarf am Ende des Startvorgangs aufgerufen wird.