У нас есть коробка, которая только начала действовать, и мы не совсем уверены, почему. Он имеет 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 коробки ...