Почему `route` на некоторое время зависает перед сбросом таблицы маршрутов?


11

Введите команду:

% 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

Здесь, до того, как defaultбудет напечатано правило последней строки , маршрут просто висит на некоторое время.

Таблица маршрутов не кэшируется где-нибудь?

Я использовал grep для получения результата, routeчтобы получить defaultправило, чтобы получить шлюз по умолчанию. Теперь, routeкажется, зависают на некоторых машинах.


2
Кстати, было бы более эффективно проанализировать файл / proc / net / route для этой информации.
Кит

IP-адреса кодируются шестнадцатеричными числами в /proc/net/route.
Xiè Jìléi

2
Да. так что вы можете конвертировать их. Если вы не можете, вывод ip routeтакже легче проанализировать.
Кит

Ответы:


23

Он пытается выполнить обратный поиск DNS по адресу шлюза и ожидает тайм-аута. Попробуйте запустить с -nопцией, чтобы подавить это.


3

У вас могут быть проблемы с DNS. Попробуйте следующее, чтобы проверить это:

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

host www.google.com <IP_1>

host www.google.com <IP_2>

Если все работает нормально, вы не должны задерживаться при выполнении команды route

С уважением

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.