none
Помогите разобраться с DHCP RRS feed

  • Вопрос

  • Есть DHCP сервер (один интерфейс, адрес 172.23.29.2), авторизованный в Active Directory. На сервере определены 4 области:
    Этаж 4 (172.23.24.0/24), диапазон исключения 172.23.24.1-2
    Этаж 5 (172.23.25.0/24), диапазон исключения 172.23.25.1-2
    Этаж 6 (172.23.26.0/24), диапазон исключения 172.23.26.1-2
    Этаж 7 (172.23.27.0/24), диапазон исключения 172.23.27.1-2

    Есть мудрый свитч, HP Procurve (172.23.29.1 aka 24.1 aka 25.1 aka 26.1 aka 27.1), на котором настроен роутинг и установлен агент DHCP ретрансляции. Смысл задумки в том, чтоб клиент, находясь на каком-то определенном этаже, получал адрес из определенного диапазона.
    При первоначальном подключении клиента все проходит как по маслу:

    172.23.26.1->172.23.29.2 DHCP discover
    172.23.26.1<-172.23.29.2 DHCP offer (YIADDR=172.23.26.4 или "бери адрес 172.23.26.4")
    172.23.26.1->172.23.29.2 DHCP request ("я согласен на адрес 172.23.26.4")
    172.23.26.1<-172.23.29.2 DHCP ack ("отлично, адрес помечен как выданный").

    Потом я переключаю клиента в другую дырку свитча и обновляю адрес:

    172.23.24.1->172.23.29.2 DHCP discover
    172.23.24.1<-172.23.29.2 DHCP offer (YIADDR=172.23.26.4 или "бери адрес 172.23.26.4") (???)
    172.23.24.1->172.23.29.2 DHCP request ("я согласен на адрес 172.23.26.4")
    172.23.24.1<-172.23.29.2 DHCP ack ("отлично, адрес помечен как выданный").

    Почему на запрос ip адреса с 172.23.24.1 DHCP сервер предлагает выдать 172.23.26.4? Ведь у него есть подходящая область 172.23.24.0/24. Он как-то запомнил мак клиента или что-то иное?

    15 октября 2009 г. 10:18

Ответы

Все ответы

  • Можеь настроить vlan'ы?
    15 октября 2009 г. 10:24
    Модератор
  • Нет, карта вланы не поддерживает.

    15 октября 2009 г. 10:30
  • А как Вы тогда планируете разграничить сеть по этажам? DHCP выполняет широковещательный запрос. Если нет отдельного vlan, то этот запрос попадает не только в выделенную Вами область но и во все остальные порты свитча.

    15 октября 2009 г. 10:39
    Модератор
  • Как я сказал, HP Procurve мудрый свитч, там есть и роутер, и фаерволл, и черт знает что еще. Я повесил агентов DHCP ретрансляции (dhcp relay agent) на четыре дырки этого свитча, т.е. когда клиент, включенный в порт 4 свитча делает широковещательный запрос (dhcp 0.0.0.0->255.255.255.255), то в порту 2 я вижу уже отрелееный пакет (dhcp 172.23.24.1->172.23.29.2). Если бы клиент отправил запрос на порт 5, то на 2 порту я бы увидел 172.23.25.1->172.23.29.2.
    А то, какой адрес назначает сервер при работающем агенте, я подчерпнул вот тут.

    15 октября 2009 г. 10:57
  • вы не объединяли диапазоны в superscope? и что у вас в поле GIADDR, когда DHCP получает запрос от агента?

    15 октября 2009 г. 11:50
  • Да, области объеденены в суперобласть.
    В поле GIADDR и в первом пакете DHCPDISCOVER, и во втором, DHCPREQUEST, адрес агента, т.е. свитча, в моем случае сначала 172.23.26.1, а потом 172.23.24.1.
    15 октября 2009 г. 12:30
  • Егор, а зачем Вам суперобласть-то?..

    15 октября 2009 г. 12:34
    Отвечающий
  • Я ориентируюсь на расширение, и, как я понял, никакой особой смысловой нагрузки помимо плюсика в контейнере областей, она не несет. Может я неправильно интерпретировал последний рисунок? Там как раз все, что за роутером, живет в суперобласти.

    15 октября 2009 г. 12:43
  • Проблема решилась выкидыванием всех областей из суперобласти.

    15 октября 2009 г. 12:53
  • Я ориентируюсь на расширение, и, как я понял, никакой особой смысловой нагрузки помимо плюсика в контейнере областей, она не несет.
    Несет. Внимательно прочитайте статью по вашей ссылке. :)
    DHCP по умолчанию отдает адреса только из того диапазона, к которому он подключен непосредственно, а когда настроена суперобласть он отвечает на запросы из любой подсети и раздает адреса из всех диапазонов суперобласти. Ваш случай.
    15 октября 2009 г. 13:20