Рекомендуем
VPS на Windows и Linux — от 49 ₽ за 7 дней Быстрый запуск сервера на NVMe для сайтов, ботов и других задач.
Выбрать VPS

BSDRP 2.3 переводит маршрутизацию на BIRD 3 и обновляет сетевой стек FreeBSD

BSD Router Project 2.3 опубликован 20 сентября 2026 года и синхронизирует систему с FreeBSD main и портами на эту дату. Релиз переводит BIRD на ветку 3, обновляет PIMD до 3.1.0 с SSM, FRRouting до 10.7.1 и добавляет заметный набор изменений в pf, FIB, iflib, обслуживание jail и сетевых карт Intel.

BSDRP 2.3 переводит маршрутизацию на BIRD 3
BSDRP 2.3 переводит маршрутизацию на BIRD 3

BIRD 3 становится новой основой динамической маршрутизации в BSDRP

Самое заметное изменение BSDRP 2.3 спрятано в одной строке списка пакетов: bird перешёл с ветки 2 на 3.3.2_1. Для специализированного маршрутизатора такой переход затрагивает одну из ключевых программ, которая отвечает за динамическую IP-маршрутизацию.

BSD Router Project представляет собой компактный свободный дистрибутив на базе FreeBSD, собранный специально для сетевых узлов. Проект включает FRRouting, BIRD, ExaBGP, OpenVPN, strongSwan и другие инструменты, поэтому смена основной версии BIRD заметно меняет программную основу системы.

Официальный сайт BSDRP датирует выпуск версии 2.3 20 сентября 2026 года. В CHANGES.md для тега v2.3 разработчики указывают переход bird2bird3 как major version upgrade. В итоговом образе используется BIRD 3.3.2_1.

Параллельно FRRouting поднялся с 10.6.1 до 10.7.1. BSDRP тем самым обновляет сразу два крупных компонента, которые применяются для построения динамической маршрутизации.

PIMD 3.1.0 подхватывает VLAN, туннели и PPP-интерфейсы уже после запуска

Второй крупный переход связан с multicast-маршрутизацией. PIMD обновлён с 2.3.2b_1 до 3.1.0, а в описании пакета теперь прямо указана поддержка PIM-SM/SSM.

Для сетевого администратора здесь интересна конкретная перемена в поведении демона. PIMD 3.1.0 повторно просматривает список сетевых интерфейсов ядра во время работы. Если после запуска службы появляется PPP- или L2TP-соединение, туннель либо новый VLAN, такой интерфейс может автоматически стать виртуальным интерфейсом PIM.

То же поведение распространяется на строки phyint в pimd.conf, где указан интерфейс, отсутствовавший в момент запуска демона. В прежней схеме динамически появляющиеся интерфейсы создавали отдельную эксплуатационную проблему: служба стартовала раньше интерфейса и не видела его без дополнительного вмешательства.

SSM расшифровывается как Source-Specific Multicast. В этой модели получатель подписывается на multicast-поток от конкретного источника. Для сетей, где multicast используется для распределения потоков между заранее известными источниками и получателями, появление SSM расширяет варианты построения такой схемы непосредственно средствами PIMD.

Разработчики исправили и поведение при переходе в фоновый режим: демон освобождает управляющий терминал. PIMD, запущенный через rc-скрипт с консоли, больше не завершается из-за следующего сигнала INTR, введённого в этой консоли.

FreeBSD main приносит в BSDRP изменения pf, iflib, FIB и TCP

BSDRP 2.3 собран со свежими изменениями FreeBSD main и коллекции портов по состоянию на 20 сентября 2026 года. Поэтому часть наиболее интересных сетевых изменений появилась в базовой системе FreeBSD и попала в новый образ BSDRP вместе с ней.

В iflib, инфраструктуре драйверов сетевых адаптеров FreeBSD, появился путь передачи simple_tx. Он отправляет пакеты напрямую, пока доступен mutex очереди передачи, а конкурирующие потоки временно проходят через ограниченный buf_ring. В release notes указано, что такой режим заметно опережает mp_ring в сценариях, где производительность ограничивает процессор. По умолчанию simple_tx пока не активирован.

Сетевые драйверы на базе iflib получили и другие изменения: выбор очереди передачи со стороны драйвера, запросы конфигурации RSS, аппаратные временные метки для принятых пакетов и ряд исправлений SR-IOV. В частности, для ice, ixgbe и igbv усилена изоляция виртуальных функций, добавлена защита от перегрузки mailbox-запросами и расширена передача статуса через netlink и ifconfig.

Пакетный фильтр pf тоже изменился. Syncookies теперь отправляются из принимающего потока, а специально сформированный TCP Reset больше не может сбросить существующее TCP-состояние тем способом, который описан в changelog. Ключ повторной сборки фрагментов учитывает направление трафика, исправлены несколько сценариев аварийного завершения.

Для pfsync заявлена работа через интерфейсы с большим MTU. В libalias устранено переполнение буфера при обработке RTSP, а в ipfw/nat64 и nat64lsn исправлены паника из-за смешения типов экземпляров NAT64 и ошибка пересчёта контрольной суммы после NAT.

Маршрутизация внутри FreeBSD получила более последовательную работу с FIB — отдельными таблицами маршрутизации. Выбор адреса, проверка ICMP Redirect и часть поведения bind(2) теперь учитывают нужный FIB. Группы next-hop подписываются на события состояния интерфейса и могут заменять недоступные next-hop, а ICMP Redirect обновляет только ту таблицу FIB, через которую пришёл пакет.

В TCP реализацию PRR привели в соответствие с RFC 9937, а проверка последовательности для RST-сегментов стала строже. Для маршрутизатора такие изменения находятся ниже уровня пользовательских демонов: они затрагивают обработку пакетов самим сетевым стеком FreeBSD.

Удалённая переустановка, growfs и дополнительные драйверы меняют обслуживание образа

В тестовую инфраструктуру BSDRP добавлен lab-reinstall-test. Он проверяет сценарий удалённой переустановки через загрузку в RAM и передачу образа по связке ssh|dd. Это интересный эксплуатационный сценарий для удалённых маршрутизаторов, где физический доступ к накопителю может быть ограничен.

Собственный rc-скрипт gpartfix заменён штатным инструментом FreeBSD growfs. BSDRP тем самым использует стандартный механизм расширения файловой системы после изменения доступного размера носителя.

В образ включены дополнительные модули ядра для USB- и последовательных устройств. Для компактных сетевых систем такие интерфейсы встречаются в консолях управления, USB-сетевых устройствах, модемах и другом периферийном оборудовании.

Отдельная группа исправлений касается сохранения конфигурации. Команда config save теперь проверяет rc.conf перед сохранением и исключает каталоги сокетов SSH Agent из сохраняемой конфигурации. Механизм setlock больше не удаляет блокировку другого экземпляра и сообщает об ошибке вместо успешного завершения.

Jail-инструменты получили более предсказуемое управление экземплярами

Утилита BSDRP для управления tenant-jail получила флаг -l, который выводит список настроенных jail. Вместе с ним в релиз вошла серия исправлений жизненного цикла таких экземпляров.

Разработчики устранили конфликт с autosave, обработали ситуацию с уже существующим jail, усилили очистку после частично завершённого создания и изменили вычисление следующего идентификатора. Новый ID выводится из существующих конфигураций, поэтому файл jail.lastid больше не является единственной точкой, от которой зависит эта операция.

Исправлен шаблон grep, применявшийся при проверке дублирующихся интерфейсов, а удаление jail теперь спокойнее обрабатывает «осиротевшие» конфигурации. Эти изменения нацелены на сценарии, где сбой происходит посередине создания или удаления экземпляра и оставляет систему в промежуточном состоянии.

Python 3.12 и Intel NIC tools расширяют набор сервисных утилит

Python в BSDRP обновлён с ветки 3.11 до 3.12. ExaBGP и связанные с ним инструменты пересобраны под Python 3.12; в итоговом образе указан python312 3.12.14 и py312-exabgp4 4.2.22_1.

Для сетевых адаптеров Intel появился отдельный набор средств обслуживания. BSDRP 2.3 включает intel-epct 1.39.56.9 — Ethernet Port Configuration Tool — и утилиты обновления NVM для контроллеров I210, I225/I226 и X550.

При этом пакет intel-nvmupdate-100g исчез из образа. В changelog это связано с upstream-переименованием в intel-nvmupdate-e810; переименованный пакет в список BSDRP 2.3 не вошёл.

FRRouting, OpenVPN и strongSwan получили свежие версии

Помимо крупных переходов BIRD и PIMD, BSDRP 2.3 обновляет заметную часть сетевого пользовательского пространства.

КомпонентБылоСтало в BSDRP 2.3
BIRD23.3.2_1
FRRouting10.6.110.7.1
PIMD2.3.2b_13.1.0
OpenVPN2.7.42.7.7
strongSwan6.0.66.1.0
Monit5.35.26.0.0
dnsmasq2.92rel2,12.93,1
pmacct1.7.8_11.7.9
mstflint4.36.0.14.37.0.1

WireGuard Tools остаётся на версии 1.0.20260223, которая уже присутствовала в предыдущем наборе пакетов. Микрокод Intel обновлён с выпуска 20260512 до 20260812.

Такой список хорошо показывает характер версии 2.3: релиз одновременно меняет крупные компоненты маршрутизации, подтягивает VPN-стек и синхронизирует системные пакеты с более свежим состоянием FreeBSD ports.

BSDRP 2.3 концентрируется на маршрутизации, сетевом стеке и обслуживании

BSDRP 2.3 объединяет сразу несколько крупных переходов: BIRD 3, PIMD 3.1.0, Python 3.12, FRRouting 10.7.1 и сетевые изменения FreeBSD main по состоянию на 20 сентября 2026 года. На уровне эксплуатации релиз затрагивает появляющиеся во время работы multicast-интерфейсы, сохранение конфигурации, жизненный цикл jail, удалённую переустановку и обслуживание сетевых адаптеров Intel.

В опубликованном changelog нет отдельных результатов производительности simple_tx именно на BSDRP и отдельного руководства по миграции конфигураций с BIRD 2 на BIRD 3. Фактический эффект этих двух изменений будет зависеть от конкретной схемы маршрутизации, драйверов сетевых карт и аппаратной платформы.

При использовании материалов сайта необходимо указывать ссылку на TGLand.ru. Если вы копируете фрагменты текста в интернете, прямая гиперссылка, доступная для индексации поисковыми системами, должна быть размещена в начале материала.

Вам также может понравиться