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

Настройте клиент DHCP для подключения к нужной подсети

Извините, если это звучит немного запутанно; Я новичок в сети. Моя цель - иметь две или более подсетей в одной сети. Когда я добавляю новый сервер в сеть (виртуальную машину), я хочу, чтобы внешнее приложение запускало команду на сервере, которая сообщает ему, в какую подсеть нужно войти. Я считаю, что для этого я должен указать несколько подсетей в моем файле dhcpd.conf на моем маршрутизаторе, каждая со своим собственным частным IP:

ddns-update-style none;
default-lease-time 600;
max-lease-time 7200;

subnet 192.168.0.0 netmask 255.255.255.0 {
use-host-decl-names on;
option routers 192.168.0.1;
option domain-name-servers 10.15.1.40;
range 192.168.0.2 192.168.0.250;
}
subnet 192.168.1.0 netmask 255.255.255.0 {
use-host-decl-names on;
option routers 192.168.1.1;
option domain-name-servers 10.15.1.40;
range 192.168.1.2 192.168.1.250;
}

У меня вопрос: как мне сообщить новому серверу, с каким из IP-адресов маршрутизатора ему необходимо связаться для настройки сети? Есть ли файл конфигурации, который я могу отредактировать с помощью сценария загрузки, чтобы указать IP-адрес маршрутизатора? Насколько мне известно, когда на коммутаторе есть только один IP-адрес маршрутизатора, он автоматически получает частный IP-адрес маршрутизатора.

Серверы - CentOS 5, а маршрутизатор - Debian.

Это можно сделать с помощью классов пользователей DHCP. Настройте маршрутизатор для включения компьютеров в подсети в зависимости от их класса пользователя:

class "firstNet" {  
    match if option dhcp-user-class = "networkOne";  
}

class "secondNet" {  
    match if option dhcp-user-class = "networkTwo";  
}

subnet 192.168.0.0 netmask 255.255.255.0 {
    pool { 
        ...
        allow members of "firstNet";  
    }
}

subnet 192.168.1.0 netmask 255.255.255.0 {    
    pool {
        ...  
        allow members of "secondNet";  
    }
}

... А затем попросите клиентов отправить нужный класс пользователя. Эта конкретная конфигурация будет работать только для клиентов, которые соответствуют одному из двух классов, поэтому вы можете включить другой пул в одну или обе подсети для систем, которые вы не настроили для работы в этой схеме.

Неясно, как именно вы собираетесь указывать этим серверам, где искать, но если вы можете попасть на машину, добавьте строку в /etc/dhclient-ethX.conf: (измените X в зависимости от того, какой интерфейс вы используете)
send user-class "networkOne";

Как DHCP-сервер узнает, какая сеть нравится виртуальным машинам, если вы не ограничите диапазоны, которые будут предлагаться только для определенных MAC-адресов, имен хостов ...

В зависимости от вашей системы виртуальной машины вы также можете настроить несколько виртуальных мостов / коммутаторов и привязать отдельный сервер DHCP или отдельный интерфейс одного сервера DHCP к каждому ...