Документация: ПО Факел — разрабатываемая версия

Ограничения

На этой странице собраны ограничения текущей версии ПО Факел, которые описаны в других разделах документации. Команды, перечисленные ниже, принимаются командной строкой, но не дают ожидаемого результата.

Межсетевой экран

  • В FVE передаются только правила базовых цепочек firewall ipv4|ipv6 forward|input|output filter, причем обоих семейств. Правила IPv4 и IPv6 одного потока (forward, input, output) загружаются в одну общую таблицу FVE, и FVE проверяет по ней трафик IPv6. Сравнение адресов и префиксов IPv6 в правилах не подтверждено; одиночный адрес IPv6 без длины префикса обрабатывается как префикс /32. Особенности общей таблицы: правило без адреса источника и назначения (например, только с портом или протоколом) действует на трафик обоих семейств; номер правила задает его приоритет в общей таблице, поэтому правила IPv4 и IPv6 с одинаковым номером одного потока конфликтуют; действие по умолчанию у потока одно — если задана цепочка IPv6 этого потока, действует ее default-action (значение по умолчанию accept), иначе — default-action цепочки IPv4. Именованные наборы правил (firewall ipv4|ipv6 name …, переходы jump) принимаются командной строкой, но не применяются (Правила фильтрации по протоколам IPv4 и IPv6). Зоны доступа (firewall zone …), таблицы потоков (firewall flowtable …, действие offload) и межсетевой экран в режиме моста (firewall bridge …) принимаются командной строкой, но не применяются (Зоны, Таблица потоков, Режим моста).

  • Действие drop отбрасывает пакет, любое другое действие (в том числе jump, reject, return) применяется как accept.

  • В правилах применяются классификаторы: адрес или префикс источника и назначения, группы адресов, сетей и интерфейсов IPv4, порт, протокол, входящий и исходящий интерфейс, connection-status nat. Диапазоны адресов, группы IPv6, портов, MAC-адресов, доменов и динамические группы (в том числе добавление адресов в них командами add-address-to-group), а также остальные классификаторы (state, icmp, fragment, dscp, limit, time, geoip и другие) не применяются (Правила фильтрации по протоколам IPv4 и IPv6, Группы). Инверсия группы (!name) не поддерживается: фиксация конфигурации с таким значением завершается ошибкой.

  • Глобальные параметры firewall global-options принимаются командной строкой, но не применяются (Межсетевой экран).

  • Команды просмотра отдельных цепочек и правил — show firewall ipv4|ipv6|bridge forward|input|output filter, show firewall … name <name>, их формы rule <1-999999> и detail — выводят только сообщение N/A for VPP dataplane. Правила и соединения FVE выводит команда show firewall (Правила фильтрации по протоколам IPv4 и IPv6, Режим моста).

NAT

  • Группы адресов и сетей (group address-group|network-group) в правилах NAT игнорируются; группа входящего или исходящего интерфейса (inbound-interface group, outbound-interface group) приводит к ошибке при фиксации конфигурации. Остальные группы в правилах NAT не применяются (Настройка NAT44).

  • NAT66 применяется только средствами ядра Linux (nftables), NAT64 — модулем ядра Jool; правил для плоскости передачи данных FVE нет, поэтому на трафик, который пересылает FVE, эти преобразования не распространяются (Настройка NAT66, Настройка NAT64).

  • Команды show nat66 source|destination rules|statistics|translations выводят состояние NAT44 плоскости FVE, а не NAT66 (Настройка NAT66).

Интерфейсы

  • Интерфейс туннеля всегда создается как туннель GRE (сетевой уровень): значения encapsulation кроме gre и ip6gre, а также параметры ERSPAN, 6rd, parameters ip tos|ttl|ignore-df|no-pmtu-discovery, parameters ipv6 … и enable-multicast не применяются (Интерфейс туннеля, Протоколы GRE).

  • WireGuard: параметры однорангового узла preshared-key, persistent-keepalive (интервал всегда 30 секунд) и disable, а также fwmark не применяются; адрес и порт однорангового узла обязательны (Интерфейс WireGuard).

  • Для интерфейса туннеля необходим source-address: настройка только с source-interface завершается ошибкой при фиксации конфигурации (Интерфейс туннеля).

  • Агрегированный интерфейс: режимы transmit-load-balance и adaptive-load-balance принимаются командной строкой, но не проходят проверку при фиксации конфигурации (ошибка Mode not supported); они описаны на странице Агрегированный интерфейс.

  • OpenVPN: параметр replace-default-route local требует значение, хотя значение не используется (Интерфейс OpenVPN).

  • Команды show interfaces … counters и clear interfaces … counters для интерфейсов всех типов, а также show interfaces … detail и show interfaces <тип> <интерфейс> для интерфейсов всех типов, кроме ethernet и bonding, используют счетчики ядра Linux, которые могут не учитывать трафик, пересылаемый FVE.

  • Команда show interfaces ethernet <интерфейс> transceiver не выводит сведения о приемо-передающем модуле и возвращает только сообщение N/A for VPP dataplane (Интерфейс Ethernet).

  • Команды show bridge vlan tunnel и show bridge vni отображают состояние ядра Linux (утилита bridge), а не FVE (VLAN-интерфейс на интерфейсе сетевого моста).

  • Команды monitor bridge, monitor bridge fdb, monitor bridge link и monitor bridge mdb выводят изменения моста ядра Linux, а не FVE (Интерфейс сетевого моста).

QoS

  • Не применяются параметры codel-quantum (все политики), priority (Shaper, Limiter), exceed, not-exceed и mtu (Limiter), flow-isolation и ack-filter (CAKE). Применение параметра queue-limit в FVE не подтверждено (Политика Drop Tail, Политика Fair Queue).

  • Суффикс M параметра burst политики Limiter означает тысячи байт, как и k; значения с суффиксами kb, mb и gb, допустимые по синтаксису, приводят к ошибке при фиксации конфигурации (Политика Limiter).

  • Значения queue-type drop-tail и fair-queue принимаются, но очередь не создается; random-detect приводит к ошибке при фиксации конфигурации. Дисциплины описаны на страницах Политика Drop Tail, Политика Fair Queue и Политика Random Detect.

  • В правилах классификации не применяются условия max-length, tcp, ether, mark и vif, в том числе в составе групп правил (match-group, qos traffic-match-group): группы работают, если в них заданы применяемые условия. Команды для групп правил описаны на странице Классификация трафика.

  • На входящем направлении (qos interface <интерфейс> ingress) допустима только политика Limiter без классов: политики с очередями и Limiter с классами не проходят проверку при фиксации конфигурации (Обработка входящего трафика).

  • Именованные метки DSCP (EF, AF11, CS1 и другие) в условиях классификации ip dscp, ipv6 dscp и в параметре set-dscp передаются в FVE как значения байта ToS (например, EF — 0xB8), а числовые значения — без преобразования; результат для имен не подтвержден (Метки DSCP).

  • Входящий трафик нельзя шейпировать через интерфейс IFB: команды interfaces input и redirect принимаются, но IFB и перенаправление трафика относятся к ядру Linux, а политики QoS применяются к интерфейсам FVE (Обработка входящего трафика).

  • Команды show qos shaper и show qos cake читают дисциплины очередей ядра Linux и не отображают политики FVE; используйте show qos (qos).

Динамическая маршрутизация

  • OSPFv2: команды monitor protocol ospf enable|disable packet <тип> detail, … recv, … recv detail, … send и … send detail (для всех типов пакетов: all, dd, hello, ls-ack, ls-request, ls-update) передаются в подсистему маршрутизации в неверном виде и не включают и не отключают отладку (OSPFv2).

  • OSPFv2: параметры protocols ospf area <area> virtual-link <link> authentication kuznechik|magma|streebog принимаются командной строкой, но не передаются в конфигурацию службы маршрутизации: для виртуальных каналов применяются только пароль (plaintext-password), MD5 и таймеры. Аутентификация на виртуальном канале по ГОСТ не включается (OSPFv2).

  • SRv6: параметры protocols segment-routing … применяются только в ядре Linux и не передаются в FVE; пакеты SRv6, которые пересылает FVE, по правилам SRv6 не обрабатываются (Сегментная маршрутизация SRv6).

Политика маршрутизации

  • Команды PBR (policy route, policy route6, policy local-route, policy local-route6) применяются средствами ядра Linux (nftables и ip rule), поэтому трафик, который пересылает FVE, они не затрагивают. Команды принимаются командной строкой и описаны на странице Политика маршрутизации; команды show policy route и show policy route6 выводят счетчики nftables ядра Linux, а не FVE.

Канальный уровень, MPLS и туннели

  • protocols mpls: команды настраивают MPLS в службе маршрутизации (LDP) и в ядре Linux (net.mpls.*); ПО Факел не передает конфигурацию MPLS в FVE, поэтому пересылка по меткам плоскостью передачи данных FVE не подтверждена (MPLS).

  • interfaces bridge: мост создается и настраивается в ядре Linux (порты добавляются командой ip link … master, параметры STP и VLAN записываются в ядро); ПО Факел не настраивает мост в FVE, поэтому пересылка кадров между портами моста плоскостью передачи данных FVE не подтверждена (Интерфейс сетевого моста).

  • Интерфейсы interfaces geneve, vxlan, macsec, pseudo-ethernet, virtual-ethernet, input, sstpc и wireless создаются только в ядре Linux и в FVE не создаются, поэтому пересылка трафика через них плоскостью передачи данных FVE не подтверждена (Интерфейс GENEVE, Интерфейс VXLAN, Интерфейс MACsec, Интерфейс Pseudo Ethernet, Интерфейс Virtual Ethernet, Интерфейс Input (IFB), Клиент SSTP, Беспроводной интерфейс).

  • Команда show interfaces wwan <interface> log не реализована и выводит not implemented (Интерфейс WWAN).

  • interfaces l2tpv3: туннель и сеанс создаются средствами ядра Linux (ip l2tp); туннель L2TPv3 в FVE не создается, поэтому пересылка трафика туннеля плоскостью передачи данных FVE не подтверждена (Интерфейс L2TPv3).

Групповая рассылка

  • Протоколы PIM, IGMP и IGMP прокси строят групповые маршруты в ядре Linux (служба маршрутизации и igmpproxy); ПО Факел не передает эти маршруты в FVE, поэтому пересылка группового трафика плоскостью передачи данных FVE по ним не гарантируется (уточняется у разработчиков) (PIM и IGMP, IGMP прокси).

  • PIMv6 и MLD (protocols pim6): групповые маршруты строятся в ядре Linux и в FVE не передаются, поэтому пересылка группового трафика плоскостью передачи данных FVE по ним не гарантируется (PIM для IPv6 и MLD).

  • Групповые маршруты protocols static multicast задаются в службе маршрутизации (ip mroute) и в FVE не передаются, поэтому пересылка группового трафика плоскостью передачи данных FVE по ним также не подтверждена (Статическая маршрутизация).

  • Команды show ip multicast route, show ip multicast interface и reset ip multicast route отображают и очищают состояние ядра Linux, а не FVE (PIM и IGMP).

VPN (IPsec)

  • Параметры vpn ipsec ike-group <группа> ikev2-reauth и vpn ipsec site-to-site peer <участник> ikev2-reauth принимаются командной строкой, но не применяются (Site-to-Site VPN).

Отслеживание соединений

  • service conntrack-sync: служба запускает conntrackd и синхронизирует таблицу соединений ядра Linux; сеансы NAT плоскости передачи данных FVE этой службой не синхронизируются (Отслеживание соединений).

  • Команды show conntrack table ipv4, show conntrack table ipv6 и show conntrack statistics отображают таблицу соединений ядра Linux, а не FVE: соединения трафика, который пересылает FVE, в нее не попадают (Отслеживание соединений).

  • Команда reset conntrack очищает таблицу соединений ядра Linux; записи соединений трафика, который пересылает FVE, она не затрагивает (Отслеживание соединений).

Журналы

  • Команды show log ssh и monitor log ssh в некоторых сборках выводят -- No entries --. Используйте sudo journalctl -t sshd (см. Удаленное управление по протоколу SSH).

  • Команды show log protocol nhrp и monitor log protocol nhrp не выводят записи NHRP; используйте show log nhrp (DMVPN).

  • Команда show webproxy update-log всегда выводит Update log not found: команда update webproxy blacklists не ведет журнал обновления. Запись об обновлении базы блокируемых адресов (webproxy blacklist entries updated) выводит команда show log (Веб-прокси).

  • Команда monitor log openvpn interface <interface> выводит журнал интерфейса OpenVPN с момента загрузки системы и не ожидает новых записей (Журналы системы).

Мониторинг трафика

  • system flow-accounting: пакеты для учета потоков отбираются правилами ядра Linux; трафик, который пересылает FVE, в статистику не попадает (Учет потоков трафика).

  • system sflow: агент sFlow отбирает пакеты на интерфейсах ядра Linux; трафик, который пересылает FVE, в выборки не попадает, учитывается только служебный трафик (Мониторинг трафика sFlow).

  • Команды monitor bandwidth и monitor bandwidth interface <interface> используют счетчики интерфейсов ядра Linux, которые могут не учитывать трафик, пересылаемый FVE (Сетевые утилиты).

Обслуживание

  • Команда generate tech-support archive upload user <user> ticket <ticket> загружает архив диагностических сведений на внешний сервер, который не относится к технической поддержке ПО Факел. Не используйте ее: сохраните архив командой generate tech-support archive и передайте его способом, согласованным с технической поддержкой (Общие сведения).

  • Команда generate interfaces debug-archive собирает статистику интерфейсов и сетевого стека ядра Linux и захватывает пакеты на интерфейсах ядра; сведения могут не отражать трафик, который пересылает FVE (Общие сведения).