Das Hinzufügen der Standardroute schlägt in demselben Subnetz fehl
581
Garth
Ich verwende Fedora 22 (Kernel 4.0.4) und versuche, eine Standardroute für eine benutzerdefinierte Routing-Tabelle hinzuzufügen, SERVINT, die von vlan30 auf der Ethernet-Schnittstelle verwendet wird, enp3s0.
Dem VLAN sind zwei IP-Adressen zugeordnet:
192.168.129.66 & 192.168.129.67 / 29 Subnetz.
Die vlan-Schnittstelle in der Routing-Intelligenz (Firewall von ZyXel 110) ist:
192.168.129.65 (im selben Subnetz wie die NIC-Adressen)
Nach dem Neustart des Servers lösche ich alle Routen und Regeln mit:
IP-Route-Flush-Cache
IP-Route alle spülen
IP Rule Flush
Alle Regeln und Routen werden entfernt.
Ich füge dann eine Route hinzu:
ip route add 192.168.129.64/29 dev vlan30 proto statischer Gültigkeitsbereich global src 192.168.129.67 Tabelle SERVINT
Bisher ist alles gut. Wenn ich die Standardroute zu 192.168.129.65 hinzufüge, erhalte ich "RTNETLINK-Antworten: Netzwerk ist nicht erreichbar" . Die Standardroute befindet sich jedoch im Subnetz der zuvor definierten Route.
Die einzige Möglichkeit, die voreingestellte Route zu erhalten, besteht darin, sie als IP-Adresse auf der NIC definieren zu lassen. Dann wird sie natürlich nicht mit der Routing-Intelligenz für das weitere Routing sprechen. Das ist also auch ein Fehler .
Hat jemand eine Idee, was falsch sein könnte?
TEST UPDATE_25062015
Wenn ich das oben genannte mit dem in der "Haupt" -Tabelle (Tabelle Nr. 254) gerouteten VLAN mache, funktioniert alles korrekt, aber wenn dies auf der benutzerdefinierten Tabelle (Tabelle Nr. 200) geschieht, ist der Fehler wie oben beschrieben konsistent.
Die KERNEL-Konfiguration hat CONFIG_IP_MULTIPLE_TABLES = y, daher sollten die mehreren Tabellen und Richtlinienroutingfunktionen aktiviert sein. Die benutzerdefinierte Tabelle ist in der Datei / etc / iproute2 / rt_tables definiert .
Gibt es noch etwas, das die Verwendung benutzerdefinierter Routingtabellen verhindert?
Prost, GM
Sie können eine benutzerdefinierte Routingtabelle auffüllen, aber wenn Sie keine Regel für die Verwendung haben, wird sie nicht verwendet. Was zeigt "ip a"? / 29 oder / 32 auf deiner IP-Adresse? Wenn / 29, müssen Sie auf keinen Fall eine Route für / 29 hinzufügen. Dies sollte automatisch geschehen.
wurtel vor 9 Jahren
0
Die Standardroute für die Tabelle SERVINT wurde nicht einmal in die Datei geschrieben, sodass das Vorhandensein oder Fehlen einer anwendbaren Regel nicht ausgewertet wurde.
Garth vor 9 Jahren
0
Hallo Garth, bitte entfernen Sie das GELÖSTE von der Frage, Sie können Ihre Antwort in wenigen Stunden annehmen.
bummi vor 9 Jahren
1
Der Forumismus des Editierens von Titeln mit der Bezeichnung "gelöst" rührt von der Tatsache her, dass das Forumformat es schwierig macht, eine Frage als vollständig zu kennzeichnen und hier nicht erforderlich ist. Nach einiger Zeit sollten Sie in der Lage sein, das "Häkchen" neben Ihrer Selbstantwort zu verwenden, um es als die richtige Antwort zu markieren und so Ihre Frage zu "lösen". Wir haben eine Verzögerung damit, Selbstantworten als korrekt zu kennzeichnen, um einen Missbrauch des Systems zu verhindern und anderen die Möglichkeit zu geben, Lösungen zu posten.
Mokubai vor 9 Jahren
0
1 Antwort auf die Frage
0
Garth
Ich habe endlich die Ursache für dieses spezielle Problem gefunden - die Fedora 22-Serverinstallation installiert NICHT einige Dateien, die zur Unterstützung von Multiple Route Tables erforderlich sind.
Die Pakete mit den fehlenden Dateien sind "Kernel-Header", "Kernel-devel" und "libnl3-devel". Ohne diese Pakete kann das Modul fib_rules nicht ausgeführt werden.