LINUX.ORG.RU
решено ФорумAdmin

Настройка ISC DHCP (Много подсетей, выдача адресов по вланам)

 ,


0

1

День добрый, необходимо настроить ISC DHCP сервер для локалки на 1000 хостов. Сеть на цисках (кластер 3750+2960 ~12 коммутаторов ~100 Вланов). Сейчас ip статические, в основном подсети /28,/29. Настроил циску как dhcp relay, она нормально перенаправляет запросы, и сервер выдает адреса. Но я не знаю, как сделать так, чтобы сервер выдавал адрес в зависимости от влана, с которого пришел запрос. Сейчас для этого ковыряю доки по 82 опции.. Там есть такая возможность? И мне пока не совсем понятно, как должен выглядеть конфиг сервера, ведь очень много подсетей, как все это связать воедино - вланы,подсети, бла бла бла. Если кто-то настраивал DHCP для больших сетей и дружил с цисками, подскажите, как лучше сделать.

PS. DHCP сервер хочу, чтоб был именно ISC, цисковый не хочу. Хотя можете попытаться меня уговорить :)

http://www.miquels.cistron.nl/isc-dhcpd/

вота.. видимо, удобнее будет сгенерить файл конфига скриптом.. сам я, увы, в этом вопросе так и остался диванным теоретиком - не дошли руки до 82 опции. а теперь не админю почти..

aol ★★★★★ ()

У меня свичи, те же 2960/3750, которые терминируют вланы, релеят дхцп запросы на ISC, а там просто прописаны подсети, и адреса выдаются как надо, никакой опции 82 не надо.

Т.е. есть подсеть 192.168.0.0/24, у нее роутером свич с айпи .1, на котором на влан интерфейсе настроен up directed broadcast. Дхцп сервер видит что запрос пришел из этой подсети и выдает адреса из нужного пула.

blind_oracle ★★★★★ ()
Ответ на: комментарий от blind_oracle

Спасибо за поддержку :) а ты можешь, пожалуйста, конфигом поделиться?

И немного не понял про _ip_ directed broadcast (ip, правильно?) Почему благодаря ей дхцп видит, что запрос пришел из этой сети??

PATRI0T ()
Ответ на: комментарий от PATRI0T

Вопрос в догонку. Есть ли возможность выдвавать клиентам адреса из сетей, прописанных в вланах, если используется ip address secondary?

То есть несколько подсетей в влане?

PATRI0T ()
Ответ на: комментарий от PATRI0T

Кое-что начало получаться\проясняться.

authoritative;
ddns-update-style none;
#option domain-name "";
local-address 192.168.200.18;

option domain-name-servers 192.168.200.3;
default-lease-time 600;
max-lease-time 7200;

shared-network ADYGNET {
    subnet 192.168.200.16 netmask 255.255.255.240
    {
    }


    subnet 192.168.5.48 netmask 255.255.255.240
    {
        option subnet-mask 255.255.255.240;
        option routers 192.168.5.62;
        range 192.168.5.49 192.168.5.61;
    }

    subnet 192.168.5.32 netmask 255.255.255.240
    {
        option subnet-mask 255.255.255.240;
        option routers 192.168.5.46;
        range 192.168.5.33 192.168.5.45;
    }
    subnet 192.168.7.8 netmask 255.255.255.248
    {
        option subnet-mask 255.255.255.248;
        option routers 192.168.7.14;
        range 192.168.7.9 192.168.7.13;
    }

    subnet 192.168.7.48 netmask 255.255.255.248
    {
        option subnet-mask 255.255.255.248;
        option routers 192.168.7.49;
        range 192.168.7.50 192.168.7.54;
    }

}

#host teh {
#   hardware ethernet b8:a3:86:91:7d:e9;
#   fixed-address 192.168.7.53;
#   option routers 192.168.7.51
#   option subnet-mask 255.255.255.248;
#}

log-facility local7;

Пока единственная проблема - с вланами, где используется более одной подсети.

!
interface Vlan95
 description Tex Otdel
 ip address 192.168.7.49 255.255.255.248 secondary
 ip address 192.168.7.14 255.255.255.248
 ip helper-address 192.168.200.18
 ip directed-broadcast
end

Дело в том, что пакет, который приходит от клиента через dhcp relay, он приходит с первым адресом влана (via 192.168.7.14), и сервер не может ему выдать нужный..

DHCPDISCOVER from b8:a3:86:91:7d:e9 (home-305828b794) via 192.168.7.14
DHCPOFFER on 192.168.5.33 to b8:a3:86:91:7d:e9 (home-305828b794) via 192.168.7.14

- этой машине должен был выдаться адрес 192.168.7.53, но сервер этого не сообразит. Как быть здесь? Если не найдется решения, придется перелопатить адрестное пространство и поубирать secondary адреса

PATRI0T ()
Ответ на: комментарий от PATRI0T

Писец, кто проектировал такие извращенные подсети, да еще и со статическими адресами? Да еще и по две сети во влане... явно кто-то искал себе проблем ;)

Сделай сети побольше, /24 или /23, не более одной на влан, настрой dhcp snooping, ip verify source, arp inspection и будет счастье вселенское. Если клиентам не нужно общаться друг с другом, а только с серверами, то запили еще protected порты в пределах одного свича или стека и акцесс листы, блокирующие межюзерский траффик на влан интерфейсах между ними. Это сведет на нет всякие плодящиеся трояны и т.п.

blind_oracle ★★★★★ ()
Ответ на: комментарий от PATRI0T

Да, директед броадкаст не нужен, это я его с хелпер адресом перепутал...

blind_oracle ★★★★★ ()
Ответ на: комментарий от blind_oracle

За подсказки спасибо, но вот без secondary адресов скорее всего не получится. И всеже - можно ли науськать ISC DHCP так, чтобы он мог выдавать адрес для второй подсети? Как уже говорил, беда в том, что циска перенаправляет DHCP серверу запрос с адресом влана, т.е. первичным.. Может есть возможность сделать двойной диапазон в DHCP сервере, чтобы когда один заполнялся, он выдавал адреса для другого?

anonymous ()
Ответ на: комментарий от anonymous

secondary адреса это вряд-ли, разве что таки заюзать 82 опцию и привязываться прямо к портам, т.к. порту такому-то давать адрес из этой сети, другому - из той. Но это тот еще административный геморрой. Насчёт двойного пула в дхцп надо подумать, но мне кажется вряд-ли.

Всяко проще будет взяться и перелопатить сеть к нормальному виду, и в будущем будет проще.

blind_oracle ★★★★★ ()
Ответ на: комментарий от blind_oracle

Ура ура ура. Все получилось. Решение проблемы выдачи адресов для secondary диапазонов - использовать цисковскую фичу

ip dhcp smart-relay

Здесь http://www.cisco.com/en/US/docs/ios/12_2/ipaddr/command/reference/1rfdhcp.pdf подробно описано, что циска переключит giaddr (ip ретранслятора) на secondary адрес, если увидит, что сервер повторно предлагает ip, а клиент его не берет.

PATRI0T ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.