Warum bleibt `route` eine Weile hängen, bevor die Routentabelle gelöscht wird?

9

Befehl eingeben:

% route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.1.0     *               255.255.255.0   U     2      0        0 wlan0
link-local      *               255.255.0.0     U     1000   0        0 wlan0
(... hang for a while ...)
default         192.168.1.1     0.0.0.0         UG    0      0        0 wlan0

Hier muss vor dem Ausdruck der letzten defaultZeilenregel die Route nur eine Weile hängen bleiben.

Wird die Routentabelle nicht irgendwo zwischengespeichert?

Früher habe ich das Ergebnis von abgefragt route, um die defaultRegel und das Standard-Gateway zu erhalten. Nun routescheint für eine Weile in einigen Maschinen zu hängen.

Xiè Jìléi
quelle
2
Übrigens wäre es effizienter, die Datei / proc / net / route nach diesen Informationen zu durchsuchen.
Keith
Die IPs sind in hexadezimalen Zahlen in codiert /proc/net/route.
Xiè Jìléi
2
Ja. so können Sie sie konvertieren. Wenn Sie dies nicht können, ist die Ausgabe von ip routeauch einfacher zu analysieren.
Keith

Antworten:

20

Es wird versucht, eine umgekehrte DNS-Suche für die Gateway-Adresse durchzuführen und auf eine Zeitüberschreitung zu warten. Versuchen Sie es mit der -nOption, um dies zu unterdrücken.

Keith
quelle
3

Möglicherweise haben Sie einige DNS-Probleme. Probieren Sie Folgendes aus, um es zu überprüfen:

$ cat /etc/resolv.conf
nameserver <IP_1>
nameserver <IP_2>
search <DOMAIN>

host www.google.com <IP_1>

host www.google.com <IP_2>

Wenn alles in Ordnung ist, sollten Sie beim Ausführen des Befehls 'route' keine Verzögerungen erhalten

Grüße

Pablo Florencio
quelle