Состоялся выпуск специализированного дистрибутива BSD Router Project 2.0 (BSDRP). Решение вышло под девизом «Не покупайте роутер: скачайте его!».

Дистрибутив BSDRP предназначен для создания компактных программных маршрутизаторов, поддерживающих протоколы маршрутизации RIP, OSPF, BGP и PIM. Управление производится в режиме командной строки через CLI-интерфейс, напоминающий интерфейс Cisco IOS. Дистрибутив доступен в сборках для архитектур x86_64 и ARM64 (размер сжатых установочных образов ~340 МБ). В проекте обновлена кодовая база до находящейся в разработке ветки FreeBSD 16. Проект курирует создатель дистрибутива FreeNAS Оливье Кочар-Лаббе (Olivier Cochard-Labbé).

По информации OpenNET, основные характеристики дистрибутива:

  • в комплект входят два пакета с реализацией протоколов маршрутизации: FRRouting (форк Quagga) с поддержкой BGP, RIP, RIPng (IPv6), OSPF v2, OSPF v3 (IPv6), ISIS и BIRD с поддержкой BGP, RIP, RIPng (IPv6), OSPF v2 и OSPF v3 (IPv6);

  • дистрибутив адаптирован для параллельного использования нескольких обособленных таблиц маршрутизации (FIB), привязанных к реальным и виртуальным интерфейсам;

  • для мониторинга и управления может использоваться SNMP (bsnmp‑ucd);

  • поддерживается экспорт данных о трафике в форме потоков Netflow;

  • для оценки производительности сети в состав входят утилиты NetPIPE, iperf, netblast, netsend и netreceive. Для накопления статистики о трафике используется ng_netflow;

  • поддержка создания отказоустойчивых маршрутизаторов из двух серверов — в штатном режиме нагрузка может быть распределена на оба сервера, но в случае сбоя первый маршрутизатор может взять на себя нагрузку второго, а второй — первого (применяется привязка к активному серверу виртуального MAC‑адреса). Реализация основана на использовании протоколов VRRP (Virtual Router Redundancy Protocol) и CARP (Common Address Redundancy Protocol), реализованный при помощи пакета ucarp;

  • поддержка PPTP, PPPoE и L2TP при помощи mpd (Multi‑link PPP daemon);

  • поддержка ограничения пропускной способности при помощи IPFW + dummynet или ng_car;

  • для Ethernet поддерживается работа с VLAN (802.1q), агрегация линков и использование сетевых мостов (802.1w, Rapid Spanning Tree Protocol);

  • для мониторинга применяется пакет monit;

  • поддержка VPN: GRE, GIF, IPSec (IKEv1 и IKEv2 со strongswan), OpenVPN и Wireguard;

  • поддержка NAT64 с использованием демона tayga и встроенная поддержка туннелей IPv6-to‑IPv4;

  • возможность установки дополнительных программ с использованием пакетного менеджера pkgng;

  • использование в качестве DHCP‑сервера dnsmasq, а в качестве агента доставки почты — ssmtp;

  • поддержка управления через SSH, последовательный порт, telnet и локальную консоль. Для упрощения администрирования в комплект входит утилита tmux (BSD‑аналог screen);

  • загрузочные образы сгенерированы на основе FreeBSD при помощи скриптов из NanoBSD;

  • механизм обновления системы основывается на создании двух разделов на Flash‑накопителе: новая версия загружается во второй раздел, который после перезагрузки становится активным, а другой раздел ожидает появления очередного обновления (разделы меняются местами). В случае выявления проблем с установленным обновлением возможен откат на прошлое состояние системы;

  • для проверки целостности системы для каждого файла сохраняется контрольная сумма sha256.

Основные изменения и дополнения в BSD Router Project 2.0:

  • системное окружение обновлено до ветки FreeBSD 16-HEAD и портов по состоянию на 25 сентября 2025 года;

  • обновлены версии bird 2.17, frr 10.4.1 (с включением поддержки скриптов на языке Lua), openvpn 2.6.15 и strongswan 6.0.1, dnsmasq 2.90, iperf 3.19, lldp 1.0.19, monit 5.35;

  • добавлена поддержка систем на базе архитектуры ARM64;

  • в установочном образе обеспечена поддержка загрузки как на системах с UEFI, так и на системах с BIOS. Для миграции с MBR на GPT требуется переустановка;

  • осуществлён переход с инструментария Nanobsd на poudriere‑image;

  • в состав включены пакеты: net/vpp, flashrom, mstflint и утилиты Mellanox NIC;

  • удалены пакеты isc‑dhcp44 и dhcprelya, вместо которых задействован dnsmasq.