Как проверить, как долго определенная запись в таблице arp будет оставаться и когда она истечет?
Я знаю, как настроить длительность кэширования записи arp. Но - как проверить, как долго конкретная запись будет оставаться в таблице arp, и когда будет сделан следующий запрос arp или запись arp исчезнет из таблицы / измените статус с REACHABLE на STALE?
1 ответ
Невозможно найти время, когда есть какой-то журнал, таблица arp, заполненная новой записью.
Вы можете запустить tcpdump
и смотреть или вы можете установить arpwatch
и посмотреть.
Арп таблица написана для /proc/net/arp
,
Время, когда какая-либо запись будет удалена из таблицы ARP, зависит от base_reachable_time
а также gc_interval
, В большинстве случаев после добавления некоторой записи в таблицу arp, после последнего сеанса связи и последнего запуска живого пакета base_reachable_time
, Когда это время истекло без новых пакетов, MAC-адрес изменил статус. На это время система начинает рассчитывать gc_interval
время aka, если какая-то запись не используется, сборщик мусора удалит их, но только если...
Для длинной истории. Вы не можете найти точное время от действия добавления, а также не можете знать точное время удаления из таблицы ARP.