ARP flood
Есть система: 4 компьютера во внутренней сети (2х - gentoo, 2x - windows) и роутер (gentoo), который стоит между ними и сетью провайдера. Переключился на нового провайдера (корбина) и через день меня забанили, сказали мол флужу. Проверил на вирусы, ужесточил правила iptables. Снова забанили. В логах ядра остались сообщения "neighbour table owerflow", то бишь ARP таблица переполняется. Сказали, что флуд идет dhcp запросами, широковещательными пакетами.
Сейчас бан сняли и я очень аккуратно сижу в интернете со включенным tcpdump'ом. Вчера увидел следующее:
В какой-то момент роутер клинит и он решает, что пакеты надо слать не через маршрутизатор провайдера, а прямо в ethernet. А раз так, то надо бы узнать MAC адреса этих компьютеров и он шлет ARP запросы. Шлются они для любых IP адресов (по крайней мере tcpdump видел только arp запросы и IP в них были из совсем разных подсетей, разнились старшие биты адреса). Ну а с учетом того, что братец сидит в торентах, что дает около 20 обращений к разным IP адресам в секунду. Получается флуд широковещательными ARP пакетами, действительно есть за что банить.
Посмотреть ifconfig в момент сбоя я не догадался - поторопился сразу же вырубить соединение. Но есть у меня подозрение, что маска подсети оказалась 0.0.0.0, иначе зачем слать ARP пакеты всем. DHCP запроса в момент запроса не происходило и DHCP ответов мой роутер не получал. Есть ли у кого-нибудь идеи, что происходит?
- Для комментирования войдите или зарегистрируйтесь

идея пока только
идея пока только одна:
проверь дефолт маршрутов на роутере сколько? и как они поднимаются...
Похоже никто ничего не знает.
Похоже никто ничего не знает. Тема в гугле на 2ом месте. Сегодня удалось наловить логов о проишествии. Вот так выглядит tcpdump для интерфейса, который смотри в интернет:
То есть в 16:19:16 его клинит и начинается котовасия. При этом ifconfig нормальный:
eth1 Link encap:Ethernet HWaddr 00:0C:6E:DE:44:71 inet addr:10.53.43.238 Bcast:10.53.47.255 Mask:255.255.248.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:29611821 errors:0 dropped:0 overruns:0 frame:0 TX packets:36769748 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:2011588381 (1918.4 Mb) TX bytes:4183267339 (3989.4 Mb) Interrupt:22 Base address:0x2000Но что любопытно, за секунду до этого потерялась связь с ppp сервером:
Вот только что ситуация повторилась:
И системный лог:
Тут нельзя сказать, что упало первым, но я думаю, что ppp снова был первым. Может теперь у кого-нибудь появятся идеи, что настроено неправильно. В следующий раз посмотрю, какие маршруты получаются на машине при падении.
P.S. Сейчас используется pptp, до этого использовался xl2tp. Глюк с arp возникал и там и там, но xl2tp еще флудил в логи ошибкой вида "ааа, все плохо" и тем грузил процессор на 100%.
Сейчас повнимательнее
Сейчас повнимательнее вчитался в скрипты инициализации соединения, которые братец скопировал с корбиновского форума. Там есть вот такая строчка:
а она и говорит, незнаешь, куда слать пакеты - попробуй eth1, ну система и пробовала. Мораль: не копируйте скрипты с форумов, пока не поймете, что делает КАЖДАЯ строчка.