Разработчиците на OpenBSD издание на платформе OpenBGPD , който може да се използва в операционни системи, различни от OpenBSD. За осигуряване на преносимост са използвани части от кодове на проектите OpenNTPD, OpenSSH и LibreSSL. Освен OpenBSD е обявена поддръжка за Linux и FreeBSD. Работата на OpenBGPD е тествана в Debian 9, Ubuntu 14.04+ и FreeBSD 12.
Разработката на OpenBGPD се извършва с регионалния интернет регистратор RIPE NCC, който е заинтересован от предоставянето на функционалността на OpenBGPD до годност за използване на сървъри за маршрутизация в точки на междупосредническа размяна на трафик (IXP) и в създаването на пълноценна алтернатива на пакета (от други отворени алтернативи с реализация на протокола BGP могат да се споменат проектите , , и ).
При разработката на OpenBGPD основното внимание е насочено към осигуряване на максимално ниво на сигурност и надеждност. За защита се прилага строга проверка на коректността на всички параметри, средства за контрол на спазването на границите на буферите, разделение на привилегиите и ограничаване на достъпа до системните повиквания. Сред предимствата също е удобният синтаксис на езика за дефиниция на конфигурацията, високата производителност и ефективността при работа с паметта (например, OpenBGPD може да работи с таблици за маршрутизация, включващи стотици хиляди записи). Проектът поддържа голяма част от спецификациите на BGP 4 и отговаря на изискванията на RFC8212, но не се опитва да обхване всичко и осигурява главно поддръжка на най-търсените и разпространените функции.
В изданието OpenBGPD 6.7 следните подобрения:
- В утилитата bgpctl е реализирана начална поддръжка за извеждане във формат JSON;
- В е разрешил едновременна настройка на IPv4 и IPv6 адреси в директивата local-address в блоковете „група“;
- Обезпечена е правилна агрегация на ROA таблици (Route Origin Authorisation) с двойките prefix/source-as в един елемент с най-дългото значение „maxlen“;
- В bgpd.conf е добавено свойство „max-prefix {NUM} out“ за ограничаване на броя на обявените префикси, за да се избегне изтичането на пълни таблици;
- В bgpctl командата ‘show neighbor’ е разширена с показването на броячи на получените и обявените префикси, а също и стойността на лимита „max-prefix out“;
- В известията са включени данни за причината за вложените грешки. В командата „bgpctl show neighbor“ е осигурен изход на причината за последната получена грешка;
- За правилното изпълнение на операцията „graceful reload“ е осигурена маркировка на остарелите префикси в таблицата Adj-RIB-Out, съ храняща информация за маршрутите, избирани от локалния BGP рутер за обявяване на оптимални маршрути;
- Добавена е възможността за компилиране на OpenBGPD с помощта на пакет за писане на синтактични анализатори bison без наличието на byacc;
- Добавена е опцията „—runstatedir“, чрез която може да се определи пътят към bgpctl.sock;
- Проведена е чистка на конфигурационния скрипт за подобряване на преносимостта.
Източник: opennet.ru
