NetDev

Материал из ALT Linux Wiki

Общее описание

NetDev — промышленная GNU/Linux-платформа, созданная на основе Sisyphus. Изначально разрабатывалась для софтроутеров, то есть, Linux-серверов, выполняющих функции высоконагруженного сетевого оборудования, например, опорных (core) и магистральных (border) маршрутизаторов, но также может применяться как на обычных серверах, так и в качестве встраиваемой ОС для промышленного оборудования.


Концепция

При разработке основное внимание уделяется стабильности работы и безопасности, эстетика и (в отдельных случаях) эргономика вторичны. Программные компоненты настраиваются или, при необходимости, модифицируются (например, пересобираются) с целью переноса обработки на максимально низкий уровень (из userspace в ядро — хорошо, из ядра в специализированное оборудование — еще лучше), минимизации установочных зависимостей (если X в принципе может работать без Y, пакет X ни при каких условиях не должен требовать установки пакета Y, иначе пакет X вообще не попадет в систему), обеспечения безопасных настроек по умолчанию или понижения привилегий.


Состояние

Начало 2018 года — нерегулярные экспериментальные выпуски установочных ONIE-образов с базовой платформой. Реализованы: 802.1q VLAN, VLAN renumbering, 802.3ad LACP, STP, маршрутизация (протоколы IPv4 и IPv6, OSPF, BGP, VRF-lite). Доступ для администрирования — через консоль (в том числе на последовательном порте) или по протоколу SSH.


Поддержка технологии SwitchDev

Система поддерживает работу с устройствами SwitchDev в объеме, предоставляемом ядром Linux (параметр CONFIG_NET_SWITCHDEV и далее по разделу). Тестирование производилось на коммутаторе Mellanox SN2100, который после установки и настройки пакета BIRD удалось превратить в полноценный маршрутизатор.


Отбракованные компоненты

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

  • alternatives
  • bridge-utils, ifplugd, ifrename, ipset, net-tools, vlan-utils — полностью заменены на iproute2
  • devmapper — содержит ошибки, приводящие к потере данных
  • etcnet, NetworkManager — заменены на специально разработанный rcnet
  • grub — заменен на syslinux (extlinux)
  • systemd
  • udev — для современных ядер (4.* на момент написания этого текста) этот костыль не нужен вообще


Отбракованные технологии

Для осуществления удаленного доступа к системе с целями администрирования или мониторинга было принято решение запретить использование заведомо ненадежных и недоверенных криптоалгоритмов:

  • любых алгоритмов симметричного шифрования в режиме сцепления блоков (CBC);
  • алгоритмов шифрования с открытым ключом DSA и EC-DSA;
  • хеш-функций с размером слова состояния менее 256 битов.