60 segundos
puedes comprobarlo con:
cat /proc/sys/net/ipv4/neigh/ethX/gc_stale_time
y cambiarlo con
echo timeout > /proc/sys/net/ipv4/neigh/ethX/gc_stale_time
el tiempo de espera es un valor nuevo
Reconozco que mientras escribo esto, esta es una pregunta de hace tres años. Pero encontré esta pregunta mientras investigaba el mismo tema, y en el proceso de corroborar la respuesta de Watchmansky (https://serverfault.com/a/684381/188907), aprendí un poco más sobre la situación, al menos tal como existe. hoy.
Según https://linux.die.net/man/7/arp, la configuración
gc_stale_time
afecta la frecuencia con la que se comprueba la memoria caché ARP en busca de entradas obsoletas. (O basura recolectada , de ahí el "gc_" al comienzo del nombre de configuración).
Mientras tanto, el valor
base_reachable_time_ms
en realidad controla cuánto tiempo es válida una entrada de caché ARP y su valor predeterminado es 30000 milisegundos. Pero cada nueva entrada de caché ARP en realidad recibirá un valor de tiempo de vida establecido aleatoriamente en algún lugar entre base_reachable_time_ms / 2 and 3*base_reachable_time_ms / 2
*.
Esto significa que cada nueva entrada ARP almacenada en caché tendrá un tiempo de espera inicial de entre 15 y 45 segundos, a menos que el valor de base_reachable_time_ms
se cambia.
Esto supone que el valor de tiempo de espera actual para una entrada ARP almacenada en caché se valida antes de su uso y que la tasa de recolección de elementos no utilizados no influye en la validez efectiva de las entradas de caché.
(*Confirmado al leer el código en https://elixir.bootlin.com/linux/v4.17.11/source/net/core/neighbour.c#L115)