Previous 

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

Next

Динамическая маршрутизация может быть настроена с помощью протокола BGP (Border Gateway Protocol).

BGP – протокол динамической маршрутизации, обеспечивает междоменную маршрутизацию. BGP предназначен для обмена маршрутной информацией между автономными системами. Автономные системы BGP являются отдельными доменами маршрутизации с локальными политиками, на которые разделены глобальные внешние сети. Информация о достижимости сетей между автономными системами передается вместе с атрибутами пути, с помощью которых выбирается наилучший маршрут. Соединение между взаимодействующими ФПСУ-IP и маршрутизаторами, принадлежащими различным автономным системам, организуется посредством внешнего протокола eBGP.

Внутренний протокол iBGP внутри автономным систем не поддерживается.

По умолчанию, динамическая маршрутизация отключена на ФПСУ-IP.

Настройки динамической маршрутизации открываются из пункта меню «Порты ФПСУ → Динамическая маршрутизация BGP».

В окне «Настройки динамической маршрутизации BGP» находятся вкладки с настраиваемыми параметрами протокола. Переход с активной вкладки на соседнюю осуществляется установлением курсора на вкладку и нажатием сочетаний клавиш <Ctrl  →> и <Ctrl  ←> или клавиш <→> и <←>.

Для включения ФПСУ-IP в протокол BGP требуется указать номер автономной системы Local AS и идентификатор Router ID, включить протокол на вкладке «General», задать соседей на вкладке «Peers».

Конфигурация протокола BGP записывается в файл bgpd.conf после запуска ФПСУ-IP (см. пункт «Дополнения»).

На вкладке General включается протокол BGP и добавляются маршруты из других источников.

Local AS – идентификатор локальной автономной системы; 32-битное число указывается в формате asplain - простое число, либо в формате asdot - два 16-битных числа, разделенных точкой.

Router ID – идентификатор маршрутизатора BGP; 32-разрядное значение в формате адреса IPv4. Идентификатор маршрутизатора служит уникальным обозначением однорангового узла BGP в сети, может совпадать с IP-адресом интерфейса ФПСУ-IP. Если «Router ID» дублируется для какого-то маршрутизатора или ФПСУ-IP, BGP-сессия с этим устройством не будет установлена. Для работы протокола BGP необходимо, чтобы данный ФПСУ-IP сформировал отношения соседства с соседними устройствами, иначе BGP-соседи не смогут обмениваться информацией о маршрутах через сообщения обновления, маршруты соседних устройств не будут добавлены в таблицу маршрутизации этого ФПСУ-IP.

Одноранговым узлом, BGP-узлом называется устройство (ФПСУ-IP или маршрутизатор), поддерживающее протокол BGP, которое имеет активное TCP-соединение с другим устройством, поддерживающим BGP.

BGP-спикер - устройство (ФПСУ-IP или маршрутизатор), которое обменивается маршрутами с другим устройством (BGP-спикером) по протоколу BGP.

Graceful restart – установленный флаг включает глобальный режим плавного перезапуска ФПСУ-IP, возможность сохранения маршрутов в плоскости пересылки во время перезапуска плоскости управления данного ФПСУ-IP. ФПСУ-IP, являясь BGP-спикером, сохраняет состояние пересылки во время перезапуска BGP. Информация о маршрутах временно сохраняется при завершении и повторном установлении TCP-сессии с BGP-узлом до завершения первоначального обновления маршрутизации на перезапускаемом ФПСУ-IP. В этот период BGP-узел помечает любые маршруты, связанные с перезапускаемым ФПСУ-IP, как «устаревшие», но продолжает использовать эти маршруты для пересылки пакетов. BGP-узел не передает какие-либо изменения состояния перезапускаемого ФПСУ-IP ни одному из своих соседей. BGP-узел отправляет обновления BGP, чтобы перезапускающийся ФПСУ-IP мог повторно получить свою информационную базу маршрутизации BGP (RIB).

Graceful restart может быть включен на уровне протокола и на уровне внешнего BGP-узла. Глобальный режим Graceful restart включается для всех внешних BGP-узлов.

Require policy on EBGP – установленный флаг включает обмен маршрутами с внешними BGP-узлами на основе политик. Никакие маршруты не будут отправлены внешним BGP-узлам или получены при отсутствии политик, определенных с помощью карт входящих и исходящих маршрутов, в соответствии с RFC 8212. Политики настраиваются с помощью route-map на вкладке «Route Map-list».

Информация о статических маршрутах, маршрутах с прямым подключением, маршрутах из другого протокола динамической маршрутизации может быть перераспределена в протокол BGP с помощью перераспределения маршрутов. Перераспределение маршрутов позволяет избегать конфликтов маршрутов на ФПСУ-IP при использовании протоколов динамической маршрутизации.

Флаги Redistribution – перераспределение маршрутов из указанных источников в BGP. В таблице маршрутов ФПСУ-IP объявляются маршруты, которые будут добавлены из других источников.

Connected – напрямую подключенные маршруты;

Kernel – маршруты, установленные во время загрузки из настроек абонентов ФПСУ-IP;

Static – статические маршруты из настроек портов ФПСУ-IP;

OSPF – динамические маршруты протокола OSPF.

Активно – установленный флаг включает протокол BGP.

На вкладке Networks указываются входящие в данную автономную систему подсети, ФПСУ-IP анонсирует эти подсети по протоколу BGP внешним BGP-узлам.

Для создания подсети необходимо во вкладке нажать кнопку «Добавить».

Описание – текстовое описание подсети.

Адрес – IP-адрес подсети. Объявляемая подсеть должна присутствовать в таблице маршрутизации ФПСУ-IP, описана как абонент на одном из портов ФПСУ-IP, либо перераспределена из протокола OSPF.

Маска – маска подсети; можно ввести значение маски непосредственно, а можно в поле ввода нажать <Пробел>, после чего в появившемся окне ввести число значащих разрядов (от 1 до 30) и нажать <Пробел>, в таком случае ФПСУ-IP рассчитает значение маски автоматически.

Активно – при включении флага подсеть будет анонсирована протоколом BGP. Если подсеть не отмечена флагом, она не отображается в маршрутизации BGP.

В списке запись активированной подсети отмечена знаком «√».

На вкладке Peers добавляются BGP-соседи, с которыми ФПСУ-IP будет обмениваться маршрутной информацией.

Для создания BGP-узла необходимо во вкладке нажать кнопку «Добавить».

Описание – текстовое описание внешнего BGP-узла.

Адрес – IP-адрес внешнего BGP-узла.

Remote AS – номер автономной системы, в которой находится внешний BGP-узел.

Keepalive time – Интервал времени, между отправкой сообщений Keepalive. По умолчанию 60 секунд. Сообщение Keepalive периодически отправляется между BGP-узлами, чтобы поддерживать активность TCP-соединения.

Hold time – Интервал времени, по истечении которого сосед будет считаться недоступным. По умолчанию 180 секунд. Если интервал Hold time истекает и сообщение Keepalive не получено, то BGP-узел считается недоступным.

Next hop self – при включении флага ФПСУ-IP объявляет себя следующим узлом на маршрутах, о которых он оповещает BGP-узел.

Graceful restart – установленный флаг включает поддержку плавного перезапуска ФПСУ-IP на внешнем BGP-узле, возможность сохранения маршрутов в плоскости пересылки во время перезапуска плоскости управления данного ФПСУ-IP. ФПСУ-IP, являясь BGP-спикером, сохраняет состояние пересылки во время перезапуска BGP. Информация о маршрутах временно сохраняется при завершении и повторном установлении TCP-сессии с BGP-узлом до завершения первоначального обновления маршрутизации на перезапускаемом ФПСУ-IP. В этот период BGP-узел помечает любые маршруты, связанные с перезапускаемым ФПСУ-IP, как «устаревшие», но продолжает использовать эти маршруты для пересылки пакетов. BGP-узел не передает какие-либо изменения состояния перезапускаемого ФПСУ-IP ни одному из своих BGP-соседей. BGP-узел отправляет обновления BGP, чтобы перезапускающийся ФПСУ-IP мог повторно получить свою информационную базу маршрутизации BGP (RIB).

Graceful restart может быть включен на уровне протокола и на уровне внешнего BGP-узла. Если глобальный режим Graceful restart выключен, а для внешнего BGP-узла включен, то плавный перезапуск ФПСУ-IP будет поддерживаться только с этим BGP-узлом.

Для ограничения количества получаемых и отправляемых маршрутов BGP-узлом используются фильтры Prefix-list и Route-map.

Prefix-list – списки префиксов используются для фильтрации маршрутов. В поле «IN» указывается список префиксов, ограничивающий маршруты, получаемые от внешнего BGP-узла. В поле «OUT» выбирается список префиксов, ограничивающий маршруты, объявляемые внешнему BGP-узлу. Списки префиксов предварительно должны быть созданы на вкладке «Prefix-list».Пример использования prefix-list при настройке исходящих и входящих маршрутов приведен в пункте «Применение prefix-list в протоколе BGP».

Route Map-list – карты маршрутов используются для настройки политик с изменением атрибутов маршрута, применяются к обновлениям маршрутов получаемым или отправляемым внешнему BGP-узлу, используются для управления таблицами маршрутов и указания условий, при выполнении которых маршруты передаются между BGP-узлами. В поле «IN» выбирается карта маршрутов, применяемая к маршрутам, получаемым от внешнего BGP-узла. В поле «OUT» выбирается карта маршрутов, применяемая к маршрутам, отправляемым внешнему BGP-узлу. Карты маршрутов предварительно должны быть созданы на вкладке «Route Map-list».

Активно – при включении флага BGP-узел добавляется в протокол BGP, ФПСУ-IP устанавливает BGP-сессию с данным BGP-узлом. В списке активированный BGP-узел отмечен знаком «√».

На вкладке Prefix-list описываются списки префиксов. Применяется при описании BGP-узла и в карте маршрутов.

Для создания prefix-list необходимо во вкладке нажать кнопку «Добавить».

Имя – наименование списка префиксов.

Описание – текстовое описание, уточнение применения списка для входящих или исходящих маршрутов (in/out).

Активно – при включении флага активируется список префиксов. При выключенном флаге маршруты не будут фильтроваться по списку префиксов. В списке активированный Prefix-list отмечен знаком «√».

Prefix-list состоит из правил, нумерованных записей. Правило содержит порядковый номер, разрешающее или запрещающее действие, префикс сети. Проверка соответствия маршрута префиксу производится по списку, начиная с записи префикса с наименьшим порядковым номером, до тех пор пока не будет найдено соответствие. Как только соответствие найдено, применяется указанное в правиле действие. Если соответствие не найдено, применяется неявная политика запрета по умолчанию «deny any». Важен порядок следования правил в списке.

Для добавления prefix нажмите кнопку «Добавить».

Sequence – порядковый номер правила в списке префиксов, определяет порядок сканирования правил при проверке соответствия маршрута префиксу.

Action – действие правила, разрешающее или запрещающее префикс. Если префикс разрешен, то маршрут используется.

Any – любой IP-адрес, не требует задания IP-адреса и маски подсети. Действие «Action» будет распространяться на все маршруты.

Для задания префикса необходимо указать адрес и маску подсети.

Адрес – IP-адрес подсети.

Маска – можно ввести значение маски подсети непосредственно, а можно в поле ввода нажать <Пробел>, после чего в появившемся окне ввести число значащих разрядов (от 1 до 32) и нажать <Пробел>, в таком случае ФПСУ-IP рассчитает значение маски автоматически.

Для задания диапазона префиксов необходимо указать значения маски подсети «от» и «до» с помощью параметров «Greater value» и «Less value». При указании параметров должно выполняться условие:

Маска <= Greater value <= Less value <= 32

Greater value – наименьшее значение диапазона длины (в битах) сетевой маски («от» диапазона длин).

Less value – наибольшее значение диапазона длины (в битах) сетевой маски («до» диапазона длин).

На вкладке Route Map-list описываются карты маршрутов. Применяются при описании BGP-узла. С помощью карты маршрутов настраивается политика с изменением атрибута маршрута.

Для создания списка карт маршрутов необходимо во вкладке нажать кнопку «Добавить».

Имя – наименование карты маршрутов.

Описание – текстовое описание, уточнение применения карты для входящих или исходящих маршрутов (in/out).

Активно – при включении флага активируется карта маршрутов. При выключенном флаге условия карты маршрутов  не будут применяться при фильтрации маршрутов. В списке активированная карта маршрутов отмечена знаком «√».

Карта маршрутов содержит список правил, нумерованные записи. Правило включает порядковый номер, разрешающее или запрещающее действие при выполнении условий фильтрации (Prefix-list, AS-Path, Community), атрибут BGP, устанавливаемый маршруту командой SET. Карта маршрутов срабатывает, если маршрут попадает под условие фильтра, для срабатывания должны быть выполнены все условия фильтра. Проверка правил производится по списку, начиная с правила с наименьшим порядковым номером, обработка карты маршрутов прекращается при обнаружении соответствия. При срабатывании, применяется указанное действие и изменяется указанный атрибут маршрута.

Sequence – порядковый номер правила в карте маршрутов, определяет порядок сканирования правил при проверке соответствия маршрута условиям карты маршрута.

Action – действие правила, разрешающее или запрещающее.

Permit – если маршрут совпадает с условием фильтра, выполняется действие SET (устанавливается или изменяется атрибут маршрута). Маршрут разрешается с изменением указанного атрибута маршрута.

Deny – если маршрут совпадает с условием фильтра, обработка карты маршрута завершается отклонением маршрута.

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

Фильтры – условие попадания маршрута под данное правило. В качестве фильтра может выступать Prefix-list, AS-Path, Community. Для выбора фильтра в списке выделите строку и нажмите <Пробел>, в крайнем левом столбце фильтр будет отмечен знаком «√».

Set – команда SET устанавливает новое значение атрибута маршрута, если обновление маршрута соответствует условию карты маршрутов. Список атрибутов BGP, устанавливаемых командой SET, приведен в таблице.

Таблица. Атрибуты BGP, изменяемые командой SET

Команда set

Описание

as-path prepend AS_PATH

Увеличение длины пути, добавляются лишние переходы в AS-Path при анонсировании маршрутов. Строка номеров автономных систем добавляется к AS_PATH. Может быть добавлен свой номер автономной системы

community COMMUNITY

Атрибут Community. устанавливает значение Community в обновлениях BGP

distance DISTANCE

Административное расстояние, которое будет использоваться для маршрута. Применяется локально, не распространяется среди BGP-соседей

ip next-hop IPV4_ADDRESS

Атрибуту следующего перехода присваивается значение IPv4. Как для входящих, так и для исходящих route map

ip next-hop peer-address

Атрибуту следующего перехода присваивается адрес BGP-узла. Для входящей route map это означает, что используется IP-адрес BGP-узла. Для исходящего маршрутная карта это означает, что собственный IP-адрес ФПСУ-IP используется для установления соединения с BGP-соседом

ip next-hop unchanged

Атрибут следующего перехода не изменяется. Изменение поведения по умолчанию атрибута NEXT-HOP для eBGP-соседа — все обновления для BGP-узла отправляются без изменения атрибута NEXT-HOP

local-preference LOCAL_PREF

Атрибут LOCAL_PREF. Маршрут будет анонсироваться с новым значением атрибута. Действует внутри автономной системы, не передается в другие автономные системы

local-preference +LOCAL_PREF

Добавление значения к существующему LOCAL_PREF

local-preference -LOCAL_PREF

Вычитание значения из существующего LOCAL_PREF

metric METRIC

Метрика. Атрибут  используется для информирования eBGP-соседей о том, какой путь в автономную систему более предпочтительный, передается в другие автономные системы. Распространяется внутри автономной системы.  Атрибут будет влиять на выбор маршрута, в случае если атрибуты сравниваемых маршрутов WEIGHT, LOCAL_PREF, AS_PATH и ORIGIN с одинаковым значением

metric <[+|-](1-4294967295)|rtt|+rtt|-rtt>

Для атрибута метрика может быть установлено определенное значение. Значение может быть добавлено или вычтено. Значение может быть установлено временно, период временного значения метрики может быть увеличен и уменьшен

origin ORIGIN <egp|igp|incomplete>

Атрибут ORIGIN

tag TAG

Метка на выбранном маршруте. Значение этого тега изменяется от 1 до 4294967295. Значение тега преобразуется в значение области (если включена поддержка Linux Realms), затем области может быть назначена политика маршрутизации

weight WEIGHT

Вес маршрута. Не распространяется за пределы маршрутизатора

На вкладке AS Path-list описываются списки AS-Path. Применяется в карте маршрутов для фильтрации по пути.

Имя – наименование списка AS-Path.

Описание – текстовое описание, уточнение применения списка AS-Path для входящих или исходящих маршрутов.

Номер – номер списка AS-Path.

Активно – при включении флага активируется список AS-Path. При выключенном флаге условие AS-Path не будут применяться при фильтрации маршрутов. Активный список AS-Path отмечен знаком «√» на вкладке «AS Path-list».

Список AS-Path состоит из правил, нумерованных записей. Правило содержит порядковый номер, разрешающее или запрещающее действие, условие, записанное в виде регулярного выражения. Проверка соответствия маршрута условиям списка AS-Path производится по списку, начиная с записи с наименьшим порядковым номером, до первого соответствия. Если соответствие не найдено, применяется неявная политика запрета по умолчанию «deny any».

Sequence – порядковый номер правила в списке AS-Path, определяет порядок сканирования правил при проверке соответствия маршрута условиям списка AS-Path.

Action – действие правила, разрешающее или запрещающее, удовлетворяющего условиям regexp.

Regexp – регулярное выражение, которому должен соответствовать AS-Path. AS-Path представляет собой список чисел - номеров автономных систем. Регулярное выражение строится по правилам регулярных выражений Unix, но пробелу соответствует символ подчеркивания «_».

На вкладке Community-list описываются списки Community. Применяется в карте маршрутов для фильтрации входящих и исходящих маршрутов на основе тега Community.

Community – группа маршрутов, которые имеют общее свойство, используется для тегирования маршрутов.

Список Community состоит из правил, нумерованных записей. Правило содержит порядковый номер, разрешающее или запрещающее действие, набор атрибутов и значение Community. Действие списка как в AS Path-list.

Поддерживаются стандартные нумерованные списки Community (номер списка в диапазоне от 1 до 99).

Имя – наименование Community.

Описание – текстовое описание, уточнение применения Community для входящих или исходящих маршрутов.

Активно – при включении флага активируется список Community. При выключенном флаге Community не будет применяться при фильтрации маршрутов. Активный список Community отмечен знаком «√» на вкладке «Community-list».

Sequence – порядковый номер Community в списке, определяет порядок сканирования правил при проверке соответствия маршрута условиям списка Community.

Action – действие правила, разрешающее или запрещающее.

Set Community Один маршрут может обладать несколькими атрибутами Community.

Internet – объявляет префикс всем соседям BGP. Cовпадение со всеми указанными значениями Community. Если указано несколько значений Сommunity, то они все должны быть в пришедшем маршруте для того, чтобы было совпадение с правилом. По умолчанию все маршруты принадлежат общему Internet Community.

Gracefull Shutdown – Community, используемое с функцией плавное завершение сеанса BGP, позволяет уменьшить количество потерянного трафика при отключении сеансов BGP для обслуживания, в соответствии с RFC 8326.

Blackhole – отправка префиксов одноранговым узлам eBGP и восходящему потоку с целью блокировки трафика, в соответствии с RFC 7999. Префиксы, отмеченные этим сообществом, обычно не должны повторно объявляться соседями исходной сети. При получении сообщения BLACKHOLE community от BGP-спикера сообщество NO ADVERTISE добавляется автоматически.

No Export – при объявлении маршрута eBGP-соседу не объявляет маршрут внешним BGP-узлам за пределы конфедерации. Если соседний узел BGP является частью конфедерации, узел считается находящимся внутри  конфедерации, поэтому маршрут будет объявлен узлу.

No Advertise – при добавлении Community, принимающий маршрутизатор BGP будет использовать и сохранять префикс в своей таблице BGP, но он не будет объявлять префикс никаким BGP-соседям.

Local AS –  все маршруты c таким значением, не должны объявляться внешним BGP-узлам. Если BGP-сосед является частью конфедерации, он считается внешним одноранговым узлом, поэтому маршрут не будет объявлен одноранговому узлу.

No Peer – используется для передачи в другую сеть информации о том, как исходная сеть хочет распространить префикс, в соответствии с RFC 3765.

Community List – значения Community; Значение указывается в виде числа или в формате ASN:VALUE, где ASN - идентификатор автономной системы, VALUE - значение Community. Значения разделяются запятой.

Для выхода в меню с сохранением настроек протокола BGP, нажмите кнопку «Сохранить» или клавишу <F2>. Для выхода без сохранения настроек нажмите клавишу <Esc>.