![]() |
Динамическая маршрутизация BGP |
![]() |
Динамическая маршрутизация может быть настроена с помощью протокола BGP (Border Gateway Protocol). BGP – протокол динамической маршрутизации, обеспечивает междоменную маршрутизацию. BGP предназначен для обмена маршрутной информацией между автономными системами. Автономные системы BGP являются отдельными доменами маршрутизации с локальными политиками, на которые разделены глобальные внешние сети. Информация о достижимости сетей между автономными системами передается вместе с атрибутами пути, с помощью которых выбирается наилучший маршрут. Соединение между взаимодействующими ФПСУ и маршрутизаторами, принадлежащими различным автономным системам, организуется посредством внешнего протокола eBGP. Внутренний протокол iBGP внутри автономным систем не поддерживается. По умолчанию, динамическая маршрутизация отключена на ФПСУ. Настройки динамической маршрутизации открываются из пункта меню «Порты ФПСУ → Динамическая маршрутизация BGP». В окне «Настройки динамической маршрутизации BGP» находятся вкладки с настраиваемыми параметрами протокола. Переход с активной вкладки на соседнюю осуществляется установлением курсора на вкладку и нажатием сочетаний клавиш <Ctrl →> и <Ctrl ←> или клавиш <→> и <←>. Для включения ФПСУ в протокол BGP требуется указать номер автономной системы Local AS и идентификатор Router ID, включить протокол на вкладке «General», задать соседей на вкладке «Peers». Конфигурация протокола BGP записывается в файл bgpd.conf после запуска ФПСУ (см. пункт «Дополнения»). На вкладке General включается протокол BGP и добавляются маршруты из других источников. Local AS – идентификатор локальной автономной системы; 32-битное число указывается в формате asplain - простое число, либо в формате asdot - два 16-битных числа, разделенных точкой. Router ID – идентификатор маршрутизатора BGP; 32-разрядное значение в формате адреса IPv4. Идентификатор маршрутизатора служит уникальным обозначением однорангового узла BGP в сети, может совпадать с IP-адресом интерфейса ФПСУ. Если «Router ID» дублируется для какого-то маршрутизатора или ФПСУ, BGP-сессия с этим устройством не будет установлена. Для работы протокола BGP необходимо, чтобы данный ФПСУ сформировал отношения соседства с соседними устройствами, иначе BGP-соседи не смогут обмениваться информацией о маршрутах через сообщения обновления, маршруты соседних устройств не будут добавлены в таблицу маршрутизации этого ФПСУ. Одноранговым узлом, BGP-узлом называется устройство (ФПСУ или маршрутизатор), поддерживающее протокол BGP, которое имеет активное TCP-соединение с другим устройством, поддерживающим BGP. BGP-спикер - устройство (ФПСУ или маршрутизатор), которое обменивается маршрутами с другим устройством (BGP-спикером) по протоколу BGP. Graceful restart – установленный флаг включает глобальный режим плавного перезапуска ФПСУ, возможность сохранения маршрутов в плоскости пересылки во время перезапуска плоскости управления данного ФПСУ. ФПСУ, являясь BGP-спикером, сохраняет состояние пересылки во время перезапуска BGP. Информация о маршрутах временно сохраняется при завершении и повторном установлении TCP-сессии с BGP-узлом до завершения первоначального обновления маршрутизации на перезапускаемом ФПСУ. В этот период BGP-узел помечает любые маршруты, связанные с перезапускаемым ФПСУ, как «устаревшие», но продолжает использовать эти маршруты для пересылки пакетов. BGP-узел не передает какие-либо изменения состояния перезапускаемого ФПСУ ни одному из своих соседей. BGP-узел отправляет обновления BGP, чтобы перезапускающийся ФПСУ мог повторно получить свою информационную базу маршрутизации BGP (RIB). Graceful restart может быть включен на уровне протокола и на уровне внешнего BGP-узла. Глобальный режим Graceful restart включается для всех внешних BGP-узлов. Require policy on EBGP – установленный флаг включает обмен маршрутами с внешними BGP-узлами на основе политик. Никакие маршруты не будут отправлены внешним BGP-узлам или получены при отсутствии политик, определенных с помощью карт входящих и исходящих маршрутов, в соответствии с RFC 8212. Политики настраиваются с помощью route-map на вкладке «Route Map-list». Информация о статических маршрутах, маршрутах с прямым подключением, маршрутах из другого протокола динамической маршрутизации может быть перераспределена в протокол BGP с помощью перераспределения маршрутов. Перераспределение маршрутов позволяет избегать конфликтов маршрутов на ФПСУ при использовании протоколов динамической маршрутизации. Флаги Redistribution – перераспределение маршрутов из указанных источников в BGP. В таблице маршрутов ФПСУ объявляются маршруты, которые будут добавлены из других источников. Connected – напрямую подключенные маршруты; Kernel – маршруты, установленные во время загрузки из настроек абонентов ФПСУ; Static – статические маршруты из настроек портов ФПСУ; OSPF – динамические маршруты протокола OSPF. Активно – установленный флаг включает протокол BGP. На вкладке Networks указываются входящие в данную автономную систему подсети, ФПСУ анонсирует эти подсети по протоколу BGP внешним BGP-узлам. Для создания подсети необходимо во вкладке нажать кнопку «Добавить». Описание – текстовое описание подсети. Адрес – IP-адрес подсети. Объявляемая подсеть должна присутствовать в таблице маршрутизации ФПСУ, описана как абонент на одном из портов ФПСУ, либо перераспределена из протокола OSPF. Маска – маска подсети; можно ввести значение маски непосредственно, а можно в поле ввода нажать <Пробел>, после чего в появившемся окне ввести число значащих разрядов (от 1 до 30) и нажать <Пробел>, в таком случае ФПСУ рассчитает значение маски автоматически. Активно – при включении флага подсеть будет анонсирована протоколом BGP. Если подсеть не отмечена флагом, она не отображается в маршрутизации BGP. В списке запись активированной подсети отмечена знаком «√». На вкладке Peers добавляются BGP-соседи, с которыми ФПСУ будет обмениваться маршрутной информацией. Для создания BGP-узла необходимо во вкладке нажать кнопку «Добавить». Описание – текстовое описание внешнего BGP-узла. Адрес – IP-адрес внешнего BGP-узла. Remote AS – номер автономной системы, в которой находится внешний BGP-узел. Keepalive time – Интервал времени, между отправкой сообщений Keepalive. По умолчанию 60 секунд. Сообщение Keepalive периодически отправляется между BGP-узлами, чтобы поддерживать активность TCP-соединения. Hold time – Интервал времени, по истечении которого сосед будет считаться недоступным. По умолчанию 180 секунд. Если интервал Hold time истекает и сообщение Keepalive не получено, то BGP-узел считается недоступным. Next hop self – при включении флага ФПСУ объявляет себя следующим узлом на маршрутах, о которых он оповещает BGP-узел. Graceful restart – установленный флаг включает поддержку плавного перезапуска ФПСУ на внешнем BGP-узле, возможность сохранения маршрутов в плоскости пересылки во время перезапуска плоскости управления данного ФПСУ. ФПСУ, являясь BGP-спикером, сохраняет состояние пересылки во время перезапуска BGP. Информация о маршрутах временно сохраняется при завершении и повторном установлении TCP-сессии с BGP-узлом до завершения первоначального обновления маршрутизации на перезапускаемом ФПСУ. В этот период BGP-узел помечает любые маршруты, связанные с перезапускаемым ФПСУ, как «устаревшие», но продолжает использовать эти маршруты для пересылки пакетов. BGP-узел не передает какие-либо изменения состояния перезапускаемого ФПСУ ни одному из своих BGP-соседей. BGP-узел отправляет обновления BGP, чтобы перезапускающийся ФПСУ мог повторно получить свою информационную базу маршрутизации BGP (RIB). Graceful restart может быть включен на уровне протокола и на уровне внешнего BGP-узла. Если глобальный режим Graceful restart выключен, а для внешнего BGP-узла включен, то плавный перезапуск ФПСУ будет поддерживаться только с этим BGP-узлом. Для ограничения количества получаемых и отправляемых маршрутов BGP-узлом используются фильтры Prefix-list и Route-map. Passive – при установлении флага BGP-узел переходит в пассивный режим и не пытается установить соединение с ФПСУ, а ожидает управляющих пакетов от ФПСУ, прежде чем начнет отвечать. По умолчанию флаг отключен и BGP-узел в активном режиме пытается установить соединение с ФПСУ. Multihop – установленный флаг позволяет устанавливать сеансы с соседями eBGP, когда они находятся на расстоянии нескольких переходов. Если сосед не подключен напрямую и флаг выключен, соединение не установится. 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, ФПСУ устанавливает 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) и нажать <Пробел>, в таком случае ФПСУ рассчитает значение маски автоматически. Для задания диапазона префиксов необходимо указать значения маски подсети «от» и «до» с помощью параметров «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
На вкладке 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>. |