Полная очистка arp-кеша в linux
Задался я тут вопросом как реально почистить arp-кеш в linux. В принципе он меня не парит, но arp -n | grep
Куча сайтов советуют arp -d <IP> <iface>
, но это не работает т.к. остаётся запись с incomplete (а у меня их было почти 70 тысяч).
Другая куча советует сделать ip -s neigh flush all
, но это по прежнему не работает по тем же причинам.
А вот как на самом деле реально удалить вообще все arp-записи для интерфейса:
ip link set arp off dev eth0; ip link set arp on dev eth0
В моей ситуации, когда надо удалить все записи incomplete из arp я написал нехитрый однострочник:
arp -n | grep incomplete | awk '{ print $3 }' | sort | uniq | awk '{ system("ip link set arp off dev "$1"; ip link set arp on dev "$1) }'
| опубликовано: Фев 21, 21:54