Windows
В старых версиях Windows время записи ARP превышало 2 минуты.
Это изменилось в Vista и Server 2008 и далее в соответствии с RFC4861. Новая реализация снизила это время до случайного значения от 15 до 45 секунд.
Чтобы увидеть тайм-аут ARP-кэша для сетевого интерфейса в Windows:
- Выполнить:
netsh interface ipv4 show interfaces
- Получите идентификатор интерфейса для требуемого интерфейса из приведенной выше команды.
- Выполнить:
netsh interface ipv4 show interface <interface ID from step 1>
- См. "Reachable Time" в выходных данных вышеупомянутой команды.
На моем компьютере с Windows 10 это дает 17500 мс.
В этой статье MS KB объясняется время ожидания для записей кэша ARP в Windows:
Описание поведения кэширования протокола разрешения адресов (ARP) в реализациях TCP/IP в Windows Vista.
Ubuntu
Вы можете получить таймаут arp-кэша по умолчанию:
cat /proc/sys/net/ipv4/neigh/default/gc_stale_time
По умолчанию обычно используется значение 60
, что означает 60 секунд до удаления записи. Каждый раз, когда запись используется в таблице, таймер для этой записи сбрасывается до 60 секунд.
Дополнительно вы можете установить его:
echo 3600 >/proc/sys/net/ipv4/neigh/default/gc_stale_time
Или постоянно в конфигурационном файле /etc/sysctl.conf
.