Назад | Перейти на главную страницу

Есть ли способ отследить, что отправляет беспричинные арперы?

У нас есть коробка, которая только начала действовать, и мы не совсем уверены, почему. Он имеет IP-адрес (фиктивные примеры) 199.199.199.1 на eth0, 127.0.0.2 на eth1 и 199.199.199.2 на eth1: 0.

Недавно по какой-то причине eth0 начал рассылать бесплатные arps с претензиями 199.199.199.2. Это вызывает все виды хаоса для трафика, идущего на 199.199.199.2, который нам нужно маршрутизировать через eth1. Я читал об arp flux, но это не похоже на проблему, поскольку, насколько я понимаю, это только ответы на запросы arp, а не бесплатные arps. Не вижу ничего очевидного в процессах, отправляющих эти беспричинные сигналы.

Мой вопрос: есть ли способ выяснить, что отправляет эти запросы? Что-то вроде netstat -p а для arp?

Это компьютер под управлением Linux с ядром 2.6.18.

Похоже, вы используете классический виртуальный сервер. Поместите следующие 2 параметра в /etc/sysctl.conf, а затем запустите sysctl -p

net.ipv4.conf.all.arp_announce = 2
net.ipv4.conf.all.arp_ignore = 1

Это предотвратит отправку блоком каких-либо ARPS интерфейса для IP, который не является основным для этого интерфейса.

Находятся ли эти два адреса в одной подсети, как предполагает ваш пример? Случайно ли две сетевые карты подключены к одному коммутатору?

Тогда это вполне могло сбить с толку стек TCP / IP коробки ...