Перейти к содержанию

Управление атрибутами для входящих и исходящих маршрутов

Описание и назначение функции и выполняемой настройки

В протоколе BGP выбор наилучшего маршрута определяется набором атрибутов маршрута. Управление этими атрибутами позволяет администратору влиять на процесс выбора маршрута и на то, какие маршруты будут распространяться между соседними маршрутизаторами.

Изменение и назначение атрибутов BGP для входящих и исходящих маршрутов позволяет:

  • управлять предпочтительностью маршрутов внутри автономной системы;
  • изменять параметры маршрута перед его передачей соседям;
  • влиять на процесс выбора оптимального пути;
  • реализовывать политики маршрутизации.

В рассматриваемом сценарии используются два метода управления атрибутами:

  • назначение значений атрибутов по умолчанию;
  • изменение атрибутов с использованием route-policy для входящих и исходящих маршрутов.

Необходимые условия и предварительные требования

Перед настройкой управления атрибутами BGP должны быть выполнены следующие условия:

  • между маршрутизаторами должно быть установлено BGP-соседство;
  • маршрутизаторы должны находиться в состоянии Established;
  • маршрутизаторы должны обмениваться маршрутами BGP;
  • должна существовать базовая конфигурация BGP и объявление сетей.

Основная информация о применяемых технологиях

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

Наиболее распространенные атрибуты, применяемые при управлении маршрутами:

Local Preference

Атрибут Local Preference определяет предпочтительность маршрута внутри автономной системы.

Особенности атрибута:

  • используется только внутри iBGP;
  • чем выше значение, тем более предпочтительным считается маршрут;
  • распространяется между маршрутизаторами одной AS.

MED (Multi Exit Discriminator)

Атрибут MED используется для указания предпочтительного входа в автономную систему.

Особенности атрибута:

  • меньшие значения являются более предпочтительными;
  • используется для выбора маршрута при наличии нескольких точек входа в AS;
  • может передаваться между соседними AS.

AS-Path

Атрибут AS-Path содержит список автономных систем, через которые прошел маршрут.

Используется для:

  • предотвращения петель маршрутизации;
  • выбора маршрута (предпочтение отдается более короткому AS-path).

Origin

Атрибут Origin определяет источник маршрута.

Возможные значения:

  • IGP – маршрут объявлен через команду network;
  • EGP – получен через протокол EGP;
  • Incomplete – источник маршрута неизвестен или получен через перераспределение.

Назначение применяемой команды/конфигурации

Команда default local-med используется для задания значения MED по умолчанию для маршрутов, распространяемых данным маршрутизатором.

Команда default local-preference задает значение Local Preference по умолчанию для маршрутов, используемых внутри автономной системы.

1
2
3
SW1(config-bgp)#default ?
  local-med          Default Local med Value
  local-preference   Default Local Preference Value

SW1(config-bgp)#neighbor 10.10.12.2 ?
  advertisement-interval   Advertisement interval timer
  allow-as-loop            Configure permit of as-path loop
  as-origin-interval       AS origination interval timer
  bfd                      Bidirectional Forwarding Detection Protocol
  connect-retry-interval   Connection retry interval after connect failed
  disable                  Inactive Neighbor in Special Address Family
  ebgp-multihop            Enable multihop nexthop for EBGP
  enable                   Active Neighbor in Special Address Family
  keeplive-timer           Keepalive timer configured to peer,in seconds
  next-hop-invariable      Do not change nexthop when forwarding route
  next-hop-local           Specify local address as the next hop of routes advertised to the peer
  password                 Configure BGP Md5 secret
  preference               Configure route preference from this peer
  public-as-only           Remove private AS number from outbound updates
  remote-as                The remote AS number to which the BGP peer.
  route-policy             Route policy
  route-reflector-client   Configure this neighbor as route reflector client
  route-refresh            Route Refresh
  send                     Send Message
  send-community           Configure send community attribute to this neighbor
  shutdown                 Admin shut down the connection to neighbor
  substitute-as            Substitute neighbor AS number which is specialed by AS_Path with local AS
  tcp                      TCP control
  update-source            Setting Source Address when Connecting Neighbor
  valid-ttl-hops           Valid ttl hops

Изменение атрибутов маршрутов может также выполняться при помощи route-policy, которая применяется к BGP-соседу.

Команда apply используется внутри политики маршрутизации для изменения атрибутов маршрутов.

SW1(config-route-policy-BGP-1)#apply ?
  as-path            BGP AS path list
  community          Community of bgp route
  cost               Set cost of the matched route
  cost-type          Type of metric for destination routing protocol
  extcommunity       Extend community of bgp route
  isis               IS-IS
  local-preference   Local preference of bgp route
  origin             Orgin of bgp route
  ospf               Open Shortest Path First
  preferred-value    Preferred-value of bgp route
  tag                Set tag of route

Применение политики маршрутизации к соседу выполняется командой:

SW1(config-bgp)#neighbor X.X.X.X route-policy <name> import
SW1(config-bgp)#neighbor X.X.X.X route-policy <name> export

  • import – применяется к маршрутам, получаемым от соседа;
  • export – применяется к маршрутам, отправляемым соседу.

Начальное состояние устройств

Настройка_соседства_BGP1.png

Первоначальная конфигурация SW1

SW1(config-bgp)# sh running-config
!
router bgp 65100
 router-id 10.10.12.1
  neighbor 10.10.12.2 remote-as 65100
 ipv4-family unicast
  neighbor 10.10.12.2 enable
  network 1.1.1.1 255.255.255.255
!
interface 10gigaethernet 1/0/3
 work-mode router
 ip address 10.10.13.1/24
!
interface 10gigaethernet 1/0/24
 work-mode router
 ip address 10.10.12.1/24
!
interface loopback 2
 ip address 1.1.1.1/32
!

Первоначальная конфигурация SW2

SW2(config-bgp)# sh running-config
!
router bgp 65100
 router-id 10.10.12.2
  neighbor 10.10.12.1 remote-as 65100
 ipv4-family unicast
  neighbor 10.10.12.1 enable
  network 2.2.2.2 255.255.255.255
!
interface 10gigaethernet 1/0/24
 work-mode router
 ip address 10.10.12.2/24
!
!
interface loopback 2
 ip address 2.2.2.2/32
!

Настройка атрибутов

Атрибуты по умолчанию

SW1(config-bgp)#default local-med 100
SW1(config-bgp)#default local-preference 150

Изменение атрибутов при помощи route-policy

Правила на исходящий трафик

1
2
3
SW1(config-route-policy-BGP-1)#apply as-path 65000 overwrite
SW1(config-route-policy-BGP-1)#apply local-preference 200
SW1(config-route-policy-BGP-1)#apply origin incomplete
Правило на входящий трафик
SW1(config-route-policy-BGP_in-1)#apply local-preference 300

Управление атрибутами

SW1(config-bgp)#neighbor 10.10.12.2 route-policy BGP export
SW1(config-bgp)#neighbor 10.10.12.2 route-policy BGP_in import

Полная конфигурация на SW1 и SW2

SW1#sh running-config
!
route-policy BGP permit node 1
 apply local-preference 200
 apply origin incomplete
 apply as-path 65000 overwrite
route-policy BGP_in permit node 1
 apply local-preference 300
!
router bgp 65100
 router-id 10.10.12.1
 default local-med 100
  neighbor 10.10.12.2 remote-as 65100
 ipv4-family unicast
  neighbor 10.10.12.2 enable
  neighbor 10.10.12.2 route-policy BGP_in import
  neighbor 10.10.12.2 route-policy BGP export
  network 1.1.1.1 255.255.255.255
  default local-preference 150
!
interface 10gigaethernet 1/0/24
 work-mode router
 ip address 10.10.12.1/24
!
interface loopback 2
 ip address 1.1.1.1/32
!
SW2#sh running-config
!
router bgp 65100
 router-id 10.10.12.2
  neighbor 10.10.12.1 remote-as 65100
 ipv4-family unicast
  neighbor 10.10.12.1 enable
  network 2.2.2.2 255.255.255.255
!
interface 10gigaethernet 1/0/24
 work-mode router
 ip address 10.10.12.2/24
!
interface loopback 1
 ip address 2.2.2.2/32
!


Изучение состояния устройства

SW1 изменил параметр local-preference

1
2
3
4
SW1#sh ip bgp route
DestAddr/Prefixlen      Peer                   Nexthop                Protocol  Med         LocalPrf    Origin     Vpn-Instance   As-Path
1.1.1.1/32              0.0.0.0                0.0.0.0                other     0           0           IGP        N/A
2.2.2.2/32              10.10.12.2             10.10.12.2             bgp       0           300         IGP        N/A
SW2 изменил параметры: AS-path, origin и local-preference
1
2
3
4
SW2#sh ip bgp route
DestAddr/Prefixlen      Peer                   Nexthop                Protocol  Med         LocalPrf    Origin     Vpn-Instance   As-Path
1.1.1.1/32              10.10.12.1             10.10.12.1             bgp       0           200         Incomplete N/A            as-seq 65000
2.2.2.2/32              0.0.0.0                0.0.0.0                other     0           0           IGP        N/A


История возникновения команды

Команды применимы для:

  • аппаратных платформ CIT серии L3200;
  • версий программного обеспечения 5.3.0 и выше.

Версия ПО

Функциональность является актуальной, начиная с версии ПО 5.3.0.

Ссылка на внешнюю документацию

Стандарт

  • RFC 4271 – Border Gateway Protocol 4
  • RFC 1997 – BGP Communities Attribute
  • RFC 4451 – BGP MED Considerations