DHCP

Skip to end of metadata
Go to start of metadata

Настройка DHCP-сервера

Включение DHCP сервера

Для настройки DHCP-сервера зайдите в настройках системы сбора статистики на вкладку dhcp.
Для включения DHCP сервера установить галочку: "Включить DHCP-сервер"

Необходимые параметры:

  • max-lease-time(в секундах) - время с последнего продления через которое у клиента закончится аренда;
  • default-lease-time(в секундах) - время через которое клиент будет продлять аренду адреса.
  • Номера интерфейсов DHCP (список) - Список интерфейсов сервера, которые будет слушать служба DHCP. Заполняется списком. Пример:
    eth0 eth2 eth3.10 eth3.20
    

Описание параметров

Для работы сервиса необходимо:

  1. Включить службу



  2. При необходимости, настроить прочие параметры: DNS, решить нужно ли постоянно освобождать привязки, граничить ли набор интерфейсов DHCP и т.д.
  3. Добавить подсети
В настройках DHCP сервера должна быть указана подсеть, которой принадлежит хотя бы один локальный интерфейс, иначе DHCP не запустится.
Если вы хотите настроить DHCP с Option 82 и вам не нужны подсети, попадающие под локальные интерфейсы, то обязательно создать subnet <IP_адрес_локального_интерфейса>/32 без диапазона
Если адрес коммутатора не в сети абонента, то обязательно создать subnet <IP_адрес_Коммутатора>/32 без диапазона

Настройки:

  • Не создавать статические mac привязки
  • Освобождать все IP-привязки раз в 10 мин.
  • default-lease-time:
  • OPT 82. Создавать статические mac привязки вместо vlan+port+:
  • DHCP_LOCAL_ADDRESS:
  • max-lease-time:
  • Освобождать OPT82 IP-привязки раз в 10 мин.
  • Не создавать статические mac привязки:
  • DNS по умолчанию (список):
    Формат
    192.0.2.1 192.0.2.2 192.0.2.3
    
  • Номера интерфейсов DHCP (список):
  • Включить DHCP-сервер:
  • Фиксированные привязки IP к MAC адресу (список):

Добавление подсетей

Перейдите на вкладку "DHCP subnets"

Заполните поля:

  • DHCP SUBNET - адрес сети(задается в формате <subnet address>/<subnet mask>), пример:
    198.51.100.0/24
  • DNS сервер для клиентов - список dns-серверов, которые будет выдаваться клиентам в данной подсети. Прописывается в виде:
    198.51.100.10, 198.51.100.20
  • DHCP шлюз для клиентов - Адрес основного шлюза в данной подсети. Пример:
    198.51.100.1
  • DHCP Range для дин. раздачи - Диапазон IP адресов, которые DHCP сервер будет выдавать абонентам, при отсутствии дополнительных привязок (mac или opt82). Прописывается через дефис, например:
    198.51.100.50-198.51.100.254
  • Маршруты для клиентов (список) - список статических маршрутов. Прописывается в виде:
    198.51.100.0/25 192.0.2.1;198.51.100.128/25 192.0.2.2

MAC привязки

Привязка MAC адреса к конкретному IP адресу создается в учетной записи абонента:

Привязку можно сделать двумя способами:

  • В поле MAC прописать mac-адрес абонентского устройства и нажать кнопку "Сохранить".
  • Нажать кнопку "Получить mac", после этого mac-адрес запрашивается с оборудования и прописывается в этом поле. Нажать кнопку "Сохранить". При этом должно быть соблюдено условие: на абонентском устройстве должен быть уже прописан ip адрес, который соответствует адресу в ip учетной записи.

Настройка Option 82

Включение парсинга опции 82

Для включения опции 82 убедитесь, что отключена опция "OPT 82. Создавать статические mac привязки вместо vlan+port" (по умолчанию отключена).

Используя раздел "Взаимодействие с коммутаторами", настройте и парсинг нужных парамеров абонента из опции 82. В этом разделе так же описана отладка парсинга.

Динамическая раздача с использованием Option 82 для HotSpot

Динамическая раздача с использованием опции 82 пригодится для настройки HotSpot - так адреса из выделенного пула будут получать только абоненты за определённым портом коммутатора и/или в нужном VLAN.

Для настройки создайте пул IP адресов в справочниках биллинга. Возможные параметры опции 82 (указываются через запятую):

  • vlan - VLAN абонента
  • switch_port_num - номер порта абонента

Например:

vlan=225,switch_port_num=23

Парсинг опции 82 зависит от коммутатора, который выбран в пуле.

После установки опции "Gen dhcp subnet" данный пул будет создан пул в настройках DHCP:

Передача адреса для параметра tr-069 по dhcp через опцию 43.

Web панель-8081 порт ----> "Cистема сбора статистики" ---> DHCP subnets ---> "Дополнительные опции DHCP (список):"

Добавляем параметр (если необходимо добавить к другим параметрам, то отделяем их через ; )

option vendor-encapsulated-options http://ip:port

Далее "Сохранить и пременить" и можно проводить тест получения адреса на сетевом оборудование.

Отладка и решение проблем

Общие рекомендации и советы по решению ошибок

Для отладки Вы можете использовать:

Лог DHCP-сервера

tail -f /app/collector/var/log/messages

Запустите эту команду, перезапустите DHCP-сервер и инициируйте получение адреса клиентом. В логе можно увидеть ошибки, сообщения об отсутствии свободных адресов и тд - для начала поиска проблемы этого достаточно.

Дамп трафика

Соберите дам DHCP трафика в момент запроса и получения адреса абонентами. Приведенная ниже команда соберёт дам по портам DHCP и одновременно будет выводить содержимое пакетов

tcpdump  -i any port 67 or port 68 -U -w - | tee dhcp_`date +%Y-%m-%d_%H%M`.pcap | tcpdump -vr -

Дам трафика чаще используется для отладки Option 82, и чтобы просто понять, приходят DHCP-запросы или нет.

Перезапустите DHCP-сервер в консоли - если есть какие-то ошибки конфигурации, Вы их сразу увидите

chroot /app/collector/ service dhcpd restart

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

В конфигурации сервера ошибка! Как её решить?

Если перезапуск сервера и мониторинг лога показали Вам ошибку, скопируйте её и попробуйте найти решение в поисковых системах.

Проблема: клиенты получают неправильный DNS-сервер

Эта проблема встречается на Windows XP и Windows 7 - в ряде случаев клиенты получают неправильный DNS-сервер. Причина в пакете DHCPINFORM.

Если ОС ранее уже получала адрес от DHCP-сервера или он был настроен статический и потом переключен на динамику, в первую очередь будет отправлен запрос DHCPINFORM - это широковещательный запрос и сервер отвечает на него сразу ответом DHCPACK.

Проблема здесь в том что запрос отправляется широковещательно и тут возможны две причины почему DNS-адрес (а возможно и другие параметры) будет неверным:

  • Если в сети несколько DHCP-серверов с похожими конфигурациями, ответ от неправильного сервера может достичь абонента раньше
  • Если запрос проходит через RELAY, на нём может быть настроено какое-то особенное поведение, например кеширование ответов или что-то в этом роде.

Для решения проблемы можно:

  1. Отключить отправку DHCPINFORM через реестр:, чтобы ОС запрашивала адрес пакетом DHCPDISCOVER
    Куст реестра
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\{Interface GUID}

    Здесь Interface GUI это ID сетевого интерфейса. Параметры ключа:

    • Тип: DWORD
    • Имя: UseInform
    • DWORD значение: 0
  2. Отключить ответ на DHCPINFORM на всех DHCP-серверах кроме нужного
    • Например, на СКАТ DPI нужно установить опцию bras_relay_dhcp_inform в 0 в файле fastdpi.conf:
      Если ваш DHCP-сервер можно настроить так, чтобы на запрос DHCP-INFORM он отвечал relay-агенту (то-есть на адрес, заданный в поле giaddr DHCP-заголовка), то этот параметр следует установить в 0 (это значение по умолчанию): bras_relay_dhcp_inform=0
      В этом случае fastDPI BRAS будет пропускать DHCP-INFORM запросы «как есть», без модификации.
      Если же DHCP-сервер работает по стандарту и отвечает всегда на адрес клиента (на адрес, заданный в поле ciaddr DHCP-заголовка), то нужно задать в fastdpi.conf: bras_relay_dhcp_inform=1
  3. Настроить фаерволы, DHCP-сервера и релеи таким образом, чтобы каждый клиентский хост имел доступ только к одному DHCP-серверу
Введите метки, чтобы добавить к этой странице:
Please wait 
Ищите метку? просто начните печатать.