Dmitry76 Опубликовано 15 апреля, 2010 (изменено) · Жалоба Запустил второй dhcp в режиме failover и столкнулся с такой проблемой. Пользовательские роутеры DIR-100 в момент продления аренды (renew) начинают жестко флудить DHCPREQUESTами и в результате dhcp.leases распухает до сотен метров. А так он находится на ram диске, это приводит к заполнению раздела и, соответственно, отказу обслуживания. Если dhcp один - то все нормально. Начал разбираться и вот что выяснил. Это коробки вопреки стандарту rfc шлют renew не юникастом, а бродкастом. Стандарт говорит: "...In this situation, the client is completely configured, and is trying to extend its lease. This message will be unicast.". В нашем же случае, коробка шлет бродкаст и в результате ей отвечают оба сервера с одинаковым предложением аренды (база-то у них общая). У коробки, сносит крышу и она начинает беспорядочно слать один и тот же пакет (xid у него одинаковый) в интерфейс. Компания Dlink исправила эту неприятную багу в прошивке 2.01b6: "V2.01b6(EN) DIR-100 B1 has problem when renew DHCP IP on Dual PPTP mode" и, действительно, потом проблем нет, я проверял экспериментально. Пакеты идут уникастом, все работает замечательно. Но мне от этого не легче. Что посоветуете делать в этом случае? Вариант дропа мак-адресов с помощью iptables не прокатывает. Во-первых, это надо постоянно, отслеживать эти маки, а во вторых пакет попадает в обработку dhcp до того как iptables с ним что-то сделает, так как работа начинается уже на Layer2. По клиентам бегать тоже маловероятно, да и новые будут прибывать. Есть одна задумка: у них у всех в UID светится "DIR-100". Может как-то на secondary сервере прописать в dhcpd.conf проверку на это поле (как?) и если оно таково, то отказывать в обслуживании в надежде на то, что мастер отдаст адрес. Изменено 15 апреля, 2010 пользователем Dmitry76 Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Abram Опубликовано 15 апреля, 2010 · Жалоба Прописать хвост с hostname DIR-100 и слать им NAK. Волну хомячков тушить прошивками :). Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Dmitry76 Опубликовано 15 апреля, 2010 · Жалоба Прописать хвост с hostname DIR-100 и слать им NAK. Волну хомячков тушить прошивками :).Я тоже склоняюсь к такому мнению. Тут понятно, что надо делать средствами самого сервера. Можешь привести кусок конфига, если есть? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Abram Опубликовано 16 апреля, 2010 · Жалоба Прописать хвост с hostname DIR-100 и слать им NAK. Волну хомячков тушить прошивками :).Я тоже склоняюсь к такому мнению. Тут понятно, что надо делать средствами самого сервера. Можешь привести кусок конфига, если есть? Нету :(. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...