GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Linux – Routing-Tabelle „220“ im Linux-Kernel 3.2.0-23-generisch?

Ich habe einen Linux-Rechner mit Kernel 3.2.0-23-generic und es hat eine Regel mit Priorität 220 in RPDB, die auf die Routing-Tabelle mit dem Namen „220“ zeigt:

T42:~# ip rule show
0:      from all lookup local 
220:    from all lookup 220 
220:    from all lookup 220 
32766:  from all lookup main 
32767:  from all lookup default 
T42:~# ip route show table 220
T42:~# 

Ist es möglich zu sehen, woher diese Regel kommt? Was ist der Sinn einer leeren Routing-Tabelle? Zu guter Letzt, wie kann es mehrere Regeln mit gleicher Priorität geben?

Akzeptierte Antwort:

Ist es möglich zu sehen, woher diese Regel stammt?

Nicht im Sinne von „Wo kann ich die Quelle dieser Regel nachschlagen“.
Es gibt mehrere Möglichkeiten, das Problem zu untersuchen:Die offensichtlichste ist grep alle Startskripte auf Ihrem System, um zu sehen, welches ip rule verwendet überhaupt, und fangen Sie dann an, sie zu lesen. Oder Sie könnten Ihr System im Einzelbenutzermodus starten und die Dienste einzeln von der Befehlszeile aus mit strace starten . Oder Sie starten Ihr System mit bash als init (Kernel-Kommandozeile:init=/bin/bash ), und dann können Sie das echte /sbin/init ausführen mit strace . Dies sind ziemlich fortgeschrittene Möglichkeiten, um die Startaktivitäten zu verfolgen, es ist möglicherweise nicht trivial zu wissen, welche Skripte ausgeführt werden müssen ...

Es gibt keine Möglichkeit zu wissen, woher die spezifische Regel stammt, wenn es ein Administrator oder ein Hacker war, der sie manuell eingegeben hat, und nicht ein auf dem System vorhandenes Skript.

Was ist der Sinn einer leeren Routing-Tabelle?

Nichts – bis jemand anfängt, diese Tabelle zu füllen. Dies könnte ein Daemon sein, der zunächst die Regel für seine eigene Tabelle eingibt und dann den Inhalt seiner eigenen Routing-Tabelle dynamisch ändert.

Wie kann es mehrere Regeln mit derselben Priorität geben?

Anleitung zur IPROUTE2 Utility Suite

priority PREFERENCE — Priorität dieser Regel. Jede Regel sollte einen explizit festgelegten eindeutigen Prioritätswert haben. Priorität ist eine vorzeichenlose 32-Bit-Zahl, also haben wir 4294967296 mögliche Regeln.

ACHTUNG!

Aus historischen Gründen erfordert ip rule add keinen Prioritätswert und lässt zu, dass der Prioritätswert nicht eindeutig ist. Wenn der Benutzer keinen Prioritätswert angegeben hatte, wurde ihm vom Kernel einer zugewiesen gleiche Priorität. Das ist ein Fehler im aktuellen Design, mehr nicht. Es sollte behoben sein, wenn Sie dies lesen, also verlassen Sie sich bitte nicht auf diese Funktion. Beim Erstellen von Regeln sollten Sie immer explizite Prioritäten verwenden.


Linux
  1. Der Lebenszyklus des Linux-Kernel-Testens

  2. So legen Sie eine statische IP-Adresse fest und ändern die Routing-Tabelle unter Linux

  3. Linux – Sind verschiedene Linux/Unix-Kernel austauschbar?

  4. So zeigen Sie die Routing-Tabelle in Linux an

  5. Partitionstabelle wird vom Linux-Kernel nicht erkannt

Sysctl-Befehl unter Linux

Ist Linux ein Betriebssystem oder ein Kernel?

Linux-Kernel vs. Mac-Kernel

Linux-Kernel und seine Funktionen

Was tun bei einer Linux-Kernel-Panik?

Vollständiges Handbuch zur Linux-Protokollierung