понедельник, 27 июня 2011 г.

Прописать dhcp helper на интерфейсе

http://mellowd.co.uk/ccie/?tag=juniper-dhcp-relay

Both IOS and JunOS allows you to configure the router as a DHCP relay agent. This is how it’s done.

On IOS it’s extremely simple. All you need to do is put the following command on the interface receiving the broadcast. In this topology it’ll be the interface connected to the switch and workstation the user is on

>conf t
# int fa0
# ip helper-address 10.1.1.1
On JunOS it’s just as simple. The configuration is not put on a particular interface, rather you specify which interface will be receiving the broadcast.

> configure
# set forwarding-options helpers bootp interface em1
# set forwarding-options helpers bootp server 10.1.1.1

UPD: На практике в junos заработало так:
forwarding-options {
    dhcp-relay {
        server-group {
            OG {
                10.19.255.255;
            }
        }
        active-server-group OG;
        group ALL {
            active-server-group OG;
            interface xe-1/2/0.215 {
                overrides {
                    allow-snooped-clients;
                }
            }
            interface xe-1/3/0.3861;
        }
    }
}

Конструкция overrides allow-snooped-clients нужна для того, чтобы через данный relay могли пролетать уже завернутые в пакет dhcp запросы. Если у вас уже на каком-то влане настроен dhcp-helper, то без этой записи запрос с него не пролетит через данный dhcp-relay

10 комментариев:

  1. interface xe-1/2/0.215
    interface xe-1/3/0.3861
    Скажите, пожалуйста, что какой интерфейс означает в Вашем примере конфига?
    Пытаюсь повторить по аналогии в vrf, но от juniper никаких ответов нет.

    ОтветитьУдалить
    Ответы
    1. Для того, чтобы запросы пролетали через интерфейс xe-1/3/0.3861, добавляем, собственно, "xe-1/3/0.3861" в group ALL в данном случае. Если требуется пропустить запрос завернутый в ip заголовок (в случае, если он приходит с dhcp хелпера т.е. dhcp сервер в пакете видит изначально только srcip, а разворачивая заголовок, видит в нем dhcp запрос) прописываем allow-snooped-clients, как сделано для интерфейса interface xe-1/2/0.215.

      Удалить
  2. Все равно не работает в врф, к сожалению, скажите, а в чем разница между dhcp helper и dhcp relay ?

    ОтветитьУдалить
    Ответы
    1. ВРФу назначен интерфейс? т.е. есть ли соответствие vrf - interface?

      @jmx80> show configuration routing-instances Regions

      instance-type virtual-router;
      interface gr-1/1/0.10;

      Удалить
    2. dhcp helper - так это в ios называется. Я так понимаю, что смысл один.

      Удалить
  3. *Работает частично- не назначает шлюз.....

    ОтветитьУдалить
  4. instance-type vrf;
    interface xe-0/1/0.100;

    При просмотре пакета OFFER нет поля Router, мх передал адрес, маску, домен, но без шлюза, странно как-то.

    ОтветитьУдалить
    Ответы
    1. Да уж, странно. У тебя же отдельный сервер работает в качестве dhcp или сам жунипер? По идее шлюзом должен быть назначен svi, с которого на сервер прилетают запросы.

      Какая модель рутера, какая версия софта стоит (show version).

      Что за конфиг внутри vrf
      forwarding-options {
      dhcp-relay {
      ?

      У меня все работает с
      Hostname: jmx80
      Model: mx80
      JUNOS Base OS boot [11.2R6.3]
      JUNOS Base OS Software Suite [11.2R6.3]
      JUNOS Kernel Software Suite [11.2R6.3]
      JUNOS Crypto Software Suite [11.2R6.3]
      JUNOS Packet Forwarding Engine Support (MX80) [11.2R6.3]
      JUNOS Online Documentation [11.2R6.3]
      JUNOS Routing Software Suite [11.2R6.3]

      Удалить
  5. mx480
    JUNOS Base OS boot [10.4R8.5]
    JUNOS Base OS Software Suite [10.4R8.5]
    JUNOS Kernel Software Suite [10.4R8.5]
    JUNOS Crypto Software Suite [10.4R8.5]
    JUNOS Packet Forwarding Engine Support (M/T Common) [10.4R8.5]
    JUNOS Packet Forwarding Engine Support (MX Common) [10.4R8.5]
    JUNOS Online Documentation [10.4R8.5]
    JUNOS Voice Services Container package [10.4R8.5]
    JUNOS Border Gateway Function package [10.4R8.5]
    JUNOS Services AACL Container package [10.4R8.5]
    JUNOS Services LL-PDF Container package [10.4R8.5]
    JUNOS Services PTSP Container package [10.4R8.5]
    JUNOS Services Stateful Firewall [10.4R8.5]
    JUNOS Services NAT [10.4R8.5]
    JUNOS Services Application Level Gateways [10.4R8.5]
    JUNOS Services Captive Portal and Content Delivery Container package [10.4R8.5]
    JUNOS Services RPM [10.4R8.5]
    JUNOS AppId Services [10.4R8.5]
    JUNOS IDP Services [10.4R8.5]
    JUNOS Runtime Software Suite [10.4R8.5]
    JUNOS Routing Software Suite [10.4R8.5]

    dhcp-relay {
    traceoptions {
    file dhcp-relay;
    flag all;
    }
    server-group {
    serv-group-1 {
    192.168.1.10;
    }
    }
    group group-1 {
    active-server-group serv-group-1;
    interface xe-0/1/0.100;
    }
    }
    }

    ОтветитьУдалить
  6. Вот с 480:

    OFFICE {
    instance-type virtual-router;
    interface xe-2/2/0.130;
    interface xe-2/2/0.904;
    forwarding-options {
    dhcp-relay {
    server-group {
    OG {
    10.19.255.255;
    }
    }
    active-server-group OG;
    group ALL {
    active-server-group OG;
    inactive: interface xe-2/2/0.130 {
    overrides {
    allow-snooped-clients;
    }
    }
    interface xe-2/2/0.904;
    }
    }

    Интерфейс xe-2/2/0.904 терминирует клиентов непосредственно в маршрутизаторе т.е. запросы прилетают на него сразу, без relay.
    Интерфейс xe-2/2/0.130 получает запросы с влана, на котором есть ip адрес и прописан адрес dhcp helper 10.19.255.255(адрес dhcp сервера, куда направлять запросы). Получается, что этот запрос уже (до попадания в маршрутизатор) был перенаправлен. Чтоб такой запрос прошел, нужна опция allow-snooped-clients. Попробуй прописать её.

    А вообще, маршрутизатор-то у тебя отрабатывает свой relay. Посмотри настройки dhcp сервера. Если это dhcpd, то
    (пример)
    subnet 192.168.1.0 netmask 255.255.255.0 {
    range 192.168.1.150 192.168.1.240;
    option subnet-mask 255.255.255.0;
    option broadcast-address 192.168.1.255;
    option routers 192.168.1.1;
    option domain-name-servers 192.168.1.1;
    option domain-name "domain.lan";

    "option routers 192.168.1.1;" - как раз отвечает за шлюз. Проверь, выставлена ли она у тебя.

    Model: mx480
    JUNOS Base OS boot [10.3R4.4]
    JUNOS Base OS Software Suite [10.3R4.4]
    JUNOS Kernel Software Suite [10.3R4.4]
    JUNOS Crypto Software Suite [10.3R4.4]
    JUNOS Packet Forwarding Engine Support (M/T Common) [10.3R4.4]
    JUNOS Packet Forwarding Engine Support (MX Common) [10.3R4.4]
    JUNOS Online Documentation [10.3R4.4]
    JUNOS Voice Services Container package [10.3R4.4]
    JUNOS Border Gateway Function package [10.3R4.4]
    JUNOS Services AACL Container package [10.3R4.4]
    JUNOS Services LL-PDF Container package [10.3R4.4]
    JUNOS Services PTSP Container package [10.3R4.4]
    JUNOS Services Stateful Firewall [10.3R4.4]
    JUNOS Services NAT [10.3R4.4]
    JUNOS Services Application Level Gateways [10.3R4.4]
    JUNOS AppId Services [10.3R4.4]
    JUNOS IDP Services [10.3R4.4]
    JUNOS Runtime Software Suite [10.3R4.4]
    JUNOS Routing Software Suite [10.3R4.4]

    ОтветитьУдалить