Два DHCP сервера

Обсуждение настройки и работы сервисов, резервирования, сетевых настроек и вопросов безопасности ОС.

Модераторы: SLEDopit, Модераторы разделов

mgk
Сообщения: 4

Два DHCP сервера

Сообщение mgk »

Здравствуйте.

В локальной сети компьютерного класса имеется два dhcp-сервера
(linux isc dhcp v3). Второй запускается иногда для обслуживания бездисковых клиентов.

Задача в том, чтобы заставит dhcp-клиенты на бездисковых узлах
брать конфигурацию только со второго dhcp-сервера и игнорировать ответы первого.

Пробывал: dhcpcd, udhcpc, dhclient.

как заставить клиента принимать ответы только одного сервера ?

Может опции dhclient'а reject, require помогут ?

Заранее благодарен всем ответившим.
Спасибо сказали:
Аватара пользователя
Cheh
Сообщения: 190
ОС: Mageia

Re: Два DHCP сервера

Сообщение Cheh »

Могу показаться наивным, но разве жестко прописанный адресс второго DHCP, на клиентах, не решит проблему?
Спасибо сказали:
Аватара пользователя
Warderer
Модератор
Сообщения: 1056
Статус: киберпИнгвин на гусеничном ходу
ОС: Debian unstable

Re: Два DHCP сервера

Сообщение Warderer »

(Cheh @ Четверг, 03 Февраля 2005, 10:36) писал(а):Могу показаться наивным, но разве жестко прописанный адресс второго DHCP, на клиентах, не решит проблему?

Жестко прописанный где? Что такое DHCP найдите сами в сети. Как он работает - тоже.
Читаю вслух с выражением маны - $50/ч + стоимость звонка. Настраиваю сервисы за Вас - $100/ч + стоимость выезда и проживания.
И восемь строк матом...(бесплатно)
Спасибо сказали:
mgk
Сообщения: 4

Re: Два DHCP сервера

Сообщение mgk »

Жестко прописанный адрес не помогает.

Конкретно нужно заставить dhcp-клиент принять широковещательные ответы от всех серверов и ответить посылкой DHCPREQUEST конкретному серверу, в зависимости от некоторго условия (например, ip-адреса сервера).

Как вариант можно использовать dhclient и указать неугодные сервера в reject.
Спасибо сказали:
Аватара пользователя
Vladislav
Сообщения: 383
ОС: Debian Sid

Re: Два DHCP сервера

Сообщение Vladislav »

Если честно - не совсем понял вопрос. А что мешает использовать один DHCP сервер для всех?
Спасибо сказали:
mgk
Сообщения: 4

Re: Два DHCP сервера

Сообщение mgk »

Второй dhcp-сервер работает на главном узле вычислительного кластера (ноутбук). С этой машины
происходи загрузка бездисковых вычислительных узлов и конфигурация сетевых интерфейсов во время загрузки. К примеру берем головную машину и несем в какой либо класс и разварачиваем мобильный кластер. Но проблема в том, что в сети может работать еще один dhcp-сервер.

Смотрю в сторону dhclient: reject и require.
Можно модифицировать исходник dhcpcd - поставить анализ полученых DHCPOFFER, а затем отсылать DHCPREQUEST.
Спасибо сказали:
mgk
Сообщения: 4

Re: Два DHCP сервера

Сообщение mgk »

Найдено следующее решение:

В качестве клиента используется dhclient. Для конфигурирования интерфейсов клиент вызывает скрипт dhclient-script, передавая ему в переменных окружения все параметры принятые от dhcp-сервера.
Если скрипт завершается кодом возврата отличным от 0, клиент отказывается от аренды принятого IP и посылает ответ DHCPDECLINE. Это позволяет реализовать в скрипте следующую проверку:

if [ "$new_dhcp_server_identifier" != "172.16.1.0"] ; then
exit 1
fi

Другой вариант решения основан на использовании дополнительных опций в dhcp-протоколе.
Клиент принимает ответы только от тех серверов, которые возвращают указанную опцию.
На нашем сервере выставляем эту опцию и все работает.
Дополнительные опции для dhclient можно добавить в /common/tables.c
Спасибо сказали: