{{indexmenu_n>8}} ======Поддержка LLDP====== =====Описание===== LLDP (Link Layer Discovery Protocol) — это протокол канального уровня (L2), используемый сетевыми устройствами для объявления о себе соседним устройствам и для их обнаружения. В fastDPI LLDP нужен не для анализа трафика и не для построения карты сети — fastDPI генерирует и отправляет собственные LLDP-пакеты чтобы: - Быть обнаруженным соседним сетевым оборудованием (коммутаторами, роутерами). - Корректно встраиваться в разрыв кабеля — fastDPI представляется активным устройством, но не пересылает чужие LLDP-пакеты. **Все входящие LLDP-пакеты безусловно дропаются.** =====Конфигурация LLDP===== Секция ''lldp'' в файле конфигурации управляет поведением LLDP. Все параметры внутри секции, кроме ''device'', являются опциональными. ====Базовый шаблон конфигурации==== lldp { enable=off trace=off pcap=off chassis= ttl=120 src_mac= dest_mac=01:80:c2:00:00:0e system_name= system_desc= device=01-00.0;enable=on;desc=port_description } ====Конфигурационные параметры==== Все параметры — горячие, применяются без перезапуска fastDPI. ^ Параметр ^ Описание ^ Возможные значения ^ | ''enable'' | Включение/выключение поддержки LLDP. \\ По умолчанию: если секция ''lldp'' присутствует в конфигурации — ''on'', если отсутствует — ''off''. | ''on'', ''off'' | | ''trace'' | Включение трассировки LLDP. При включении информация о формировании и отправке пакетов записывается в ''fastdpi_alert.log''. | ''on'', ''off'' | | ''pcap'' | Включение записи LLDP-пакетов в pcap-файл (имя вида ''udpi_YYYYMMDDHHMMSS_XXXXX.pcap''). | ''on'', ''off'' | | ''chassis'' | Значение Chassis-ID, передаваемое в LLDP-пакете. Если не задан — используется MAC-адрес из опции ''bras_arp_mac'', а если и её нет — MAC-адрес порта. | Строка | | ''ttl'' | Время жизни (Time To Live) LLDP-пакета в секундах. | Число (по умолчанию ''120'') | | ''src_mac'' | Source MAC-адрес в Ethernet-заголовке LLDPDU. Если не задан — используется MAC из ''bras_arp_mac'', иначе MAC порта. | MAC-адрес (например, ''aa:bb:cc:dd:ee:ff'') | | ''dest_mac'' | Destination MAC-адрес в Ethernet-заголовке LLDPDU. | MAC-адрес (по умолчанию ''01:80:c2:00:00:0e'' — multicast LLDP) | | ''system_name'' | Значение TLV System-Name в LLDP-пакете. Если не задан — TLV System-Name не включается. | Строка | | ''system_desc'' | Значение TLV System-Description в LLDP-пакете. Если не задан — TLV System-Description не включается. | Строка | | ''device'' | Указание порта, на котором надо отправлять LLDP-пакеты. Параметр может повторяться для разных портов. Имя порта должно соответствовать значению ''in_dev''/''out_dev''. Внутри параметра через точку с запятой задаются подпараметры:\\ • ''enable=on|off'' — включить/отключить отправку для этого порта (по умолчанию on)\\ • ''desc=строка'' — значение TLV Port-Desc (если не задан — TLV Port-Desc не включается) | Формат: ''<имя_порта>[;enable=on|off][;desc=<строка>]''\\ \\ Пример: ''device=01-00.0;enable=on;desc=WAN_port'' | ====Примеры конфигурации==== ===Минимальная конфигурация, необходимая для включения поддержки LLDP=== lldp { device=01-00.0 device=02-00.0 } ===Конфигурация с заданием значений TLV Port-Desc для каждого порта=== lldp { device=01-00.0;desc=WAN_port_1;enable=on device=02-00.0;desc=LAN_port_2;enable=on } =====Управление через CLI===== Команды для динамического управления LLDP: * Включить формирование и отправку LLDP-пакетов (немедленная отправка): fdpi_cli lldp enable * Выключить формирование и отправку LLDP-пакетов: fdpi_cli lldp disable Пример вывода при включении: LLDP enabled chassis='' TTL=120 system: name='', desc='' src_MAC=00:00:00:00:00:00 dest_MAC=01:80:c2:00:00:0e Devices: '01-00.0': enabled desc='' '02-00.0': enabled desc='' =====Диагностика и отладка===== ====Трассировка==== При включении параметра ''trace=on'' в секции ''lldp'' информация о формировании и отправке LLDP-пакетов записывается в лог-файл ''fastdpi_alert.log'': [INFO ][2026/05/25-10:56:31:700344][0x7f0a4aa34400] LLDP options: enable : 1 trace : 1 pcap : 0 chassis : '' ttl : 120 src_mac : - dest_mac : 01:80:c2:00:00:0e system_name : '' system_desc : '' device '01-00.0': enable=1 desc='' device '02-00.0': enable=1 desc='' [TRACE ][2026/05/25-10:56:31:700454][0x7f0a4aa34400] [LLDP]make_pdu: dev '01-00.0' PDU len=234 [TRACE ][2026/05/25-10:56:31:700475][0x7f0a4aa34400] [LLDP]make_pdu: dev '02-00.0' PDU len=234 [TRACE ][2026/05/25-10:56:31:850646][0x7f0a4aa34400] [LLDP]send_pdu: dev '01-00.0' via slave #0 [TRACE ][2026/05/25-10:56:31:850725][0x7f0a4aa34400] [LLDP]send_pdu: dev '02-00.0' via slave #0 ====Запись PCAP==== При включении параметра ''pcap=on'' все сгенерированные LLDP-пакеты сохраняются в pcap-файл (имя вида ''udpi_YYYYMMDDHHMMSS_XXXXX.pcap''). =====Пример LLDPDU (результат работы)===== Пример кадра, сгенерированного fastDPI (минимальная конфигурация, ''bras_arp_mac=00:01:02:33:44:f1''): 00:01:02:33:44:f1 > 01:80:c2:00:00:0e, ethertype LLDP (0x88cc), length 78 Chassis ID TLV (1), length 7 Subtype MAC address (4): 00:01:02:33:44:f1 Port ID TLV (2), length 8 Subtype Local (7): 01-00.0 Time to Live TLV (3), length 2: TTL 120s End TLV (0), length 0 Пакеты отправляются периодически с интервалом 2 минуты или немедленно по команде ''fdpi_cli lldp enable''.