Протокол IP : Протокол BGP

Сведения об объединении маршрутов в BGP

20 октября 2016 - Машинный перевод
Другие версии: PDF-версия:pdf | Английский (22 августа 2015) | Отзыв


Содержание


Введение

Протокол граничного шлюза (BGP) позволяет агрегировать определенные маршруты в один маршрут с использованием команды aggregate-address адрес маска [as-set] [summary-only] [suppress-map имя-привязки] [advertise-map имя-привязки] [attribute-map имя-привязки]. При выдаче команды aggregate-address без аргументов не происходит наследования атрибутов отдельного маршрута (таких как AS_PATH или сообщество), что приводит к недостаточной детализации. В этом документе поясняется способ манипулирования другими атрибутами при использовании команды aggregate-address и управление процессом распространения.

Предварительные условия

Требования

Компания Cisco рекомендует предварительно ознакомиться со следующими предметами:

Используемые компоненты

Настоящий документ не имеет жесткой привязки к каким-либо конкретным версиям программного обеспечения и оборудования. Однако конфигурация в этом документе была протестирована с Cisco Выпуск ПО IOS� 12.2 (28).

Сведения, представленные в этом документе, были получены от устройств, работающих в специальной лабораторной среде. Все устройства, описанные в этом документе, были запущены с чистой (стандартной) конфигурацией. В рабочей сети необходимо изучить потенциальное воздействие всех команд до их использования.

Условные обозначения

Дополнительные сведения об условных обозначениях см. в документе Условные обозначения технических терминов Cisco.

Схема сети

/image/gif/paws/5441/aggregation1.gif

Агрегат без аргумента актива

Использование аргумента актива создает агрегируемый адрес с математическим набором автономных систем (AS). Этот аргумент актива суммирует Атрибуты as_path всех отдельных маршрутов. Эти примеры конфигурации позволяют вам исследовать эту функцию и как этот аргумент помогает BGP обнаруживать и избегать петель.

Маршрутизатор А
Current configuration: 

 hostname RouterA 
 ! 
 interface Serial1 
  ip address 2.2.2.2 255.0.0.0 
 !  
interface Loopback0
  ip address 160.20.1.1 255.255.0.0
 !
 router bgp 100 
  network 160.20.0.0 

!--- Router A advertises network 160.20.0.0/16.      

  neighbor 2.2.2.1 remote-as 300 
 ! 
 end

Маршрутизатор В
Current configuration: 

 hostname RouterB 
 ! 
 interface Serial0 
  ip address 3.3.3.3 255.0.0.0 
 ! 
interface Loopback0
  ip address 160.10.1.1 255.255.0.0
 !
 router bgp 200 
  network 160.10.0.0 

!--- Router B advertises network 160.10.0.0/16.      

  neighbor 3.3.3.1 remote-as 300 
 ! 
 end

Маршрутизатор C
Current configuration: 

 hostname RouterC 
 ! 
 interface Serial0 
  ip address 2.2.2.1 255.0.0.0 
 ! 
 interface Serial1 
  ip address 3.3.3.1 255.0.0.0 
 ! 
 interface Serial2 
  ip address 4.4.4.1 255.0.0.0 
 ! 
 router bgp 300 
  neighbor 2.2.2.2 remote-as 100 
  neighbor 3.3.3.3 remote-as 200 
  neighbor 4.4.4.4 remote-as 400 
  aggregate-address 160.0.0.0 255.0.0.0 summary-only  

!--- The network is summarized, and Router C only
!--- advertises 160.0.0.0/8.

 ! 
 end  

Маршрутизатор D
Current configuration: 

 hostname RouterD
 ! 
 interface Serial0 
  ip address 4.4.4.4 255.0.0.0 
 ! 
 router bgp 400 
  neighbor 4.4.4.1 remote-as 300                     
 ! 
 end 

Маршрутизатор C (AS-300) объединяет маршруты 160.20.0.0/16 и 160.10.0.0/16, которые прибывают из AS-100 и AS-200, соответственно. Это действие происходит, потому что вы настроили аргумент summary-only на маршрутизаторе C. Маршрутизатор C только объявляет об агрегате 160.0.0.0/8 маршрутизатору D. Агрегат 160.0.0.0/8 является маршрутом методологии CIDR. Более определенный 160.10.0.0/16 и маршруты 160.20.0.0/16 подавлены, поскольку эта таблица BGP на маршрутизаторе C показывает:

RouterC# 
show ip bgp
 
BGP table version is 6, local router ID is 4.4.4.1
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path
*> 160.0.0.0/8      0.0.0.0                            32768 i
s> 160.10.0.0       3.3.3.3                  0             0 200 i
s> 160.20.0.0       2.2.2.2                  0             0 100 i

Вот таблица BGP маршрутизатора D. Наблюдайте информацию о пути объединенного маршрута:

RouterD# 
show ip bgp

BGP table version is 6, local router ID is 4.4.4.4
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path
*> 160.0.0.0/8      4.4.4.1                                0 300 i

Объединенный маршрут 160.0.0.0/8, как полагают, произошел из AS-300 с IGP исходного кода. Маршрут потерял все определенные Сведения атрибута AS_PATH отдельных префиксов 160.10.0.0/16, AS-200 и 160.20.0.0/16, AS-100.

Агрегат с Аргументом актива

Теперь, вы настраиваете аргумент актива в команде aggregate-address на маршрутизаторе C. Вот новая конфигурация:

Маршрутизатор C
Current configuration: 

 hostname RouterC 
 ! 
 interface Serial0 
  ip address 2.2.2.1 255.0.0.0 
 ! 
 interface Serial1 
  ip address 3.3.3.1 255.0.0.0 
 ! 
 interface Serial2 
  ip address 4.4.4.1 255.0.0.0 
 ! 
 router bgp 300 
  neighbor 2.2.2.2 remote-as 100 
  neighbor 3.3.3.3 remote-as 200 
  neighbor 4.4.4.4 remote-as 400 
  aggregate-address 160.0.0.0 255.0.0.0 summary-only as-set

!--- With the as-set configuration command, the aggregate 
!--- inherits the attributes of the more-specific routes.

 ! 
 end 

Теперь, посмотрите на то, как этот аргумент влияет на выходные данные show ip bgp на маршрутизаторе D:

RouterD# 
show ip bgp

BGP table version is 2, local router ID is 4.4.4.4
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path
*> 160.0.0.0/8      4.4.4.1                                0 300 {200,100} i

С аргументом актива информация о пути в таблице BGP для объединенного маршрута изменяется для включения набора от 300 {200,100}. Этот набор указывает, что агрегат фактически суммирует маршруты, которые прошли через AS-200 и AS-100. Информация об активе становится важной в предотвращении циклов маршрутизации, потому что информационные записи, где маршрут был.

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

Примечание: Аргумент актива содержит информацию о каждом отдельном маршруте, который суммирует агрегат. Изменения в отдельном маршруте вызывают обновление агрегата. В примере, если 160.10.0.0/16 выключается, информация о пути составных изменений от 300 {200,100} к 300 {200}. Агрегат обновлен. Если агрегат суммирует десятки или сотни маршрутов и маршруты, которые формируются, агрегат имеют проблемы, может быть постоянная откидная створка.

Измените атрибуты объединенного маршрута

Агрегат с Разделом аргумента актива показывает вам, как использовать актив для сохранения Атрибутов as_path с определенным маршрутом. В некоторых случаях можно потребовать изменения в атрибутах объединенного маршрута. Примеры таких атрибутов включают метрику, сообщество и происхождение.

Этот раздел показывает, как можно использовать аргумент attribute-map для управления атрибутами агрегаторного адреса. В этом случае вы настраиваете один или больше определенных агрегированных маршрутов со значением no-export атрибута community. Маршрутизатор наборы значение no-export атрибута community к сети 160.20.0.0/16 и объявляет о сети маршрутизатору C. Этот раздел показывает конфигурацию. В то время как маршрутизатор объединяется 160.0.0.8, маршрутизатор C наследовал значение no-export атрибута community. Поэтому нет никакой рекламы 160.0.0.0/8 к маршрутизатору D. Конфигурация маршрутизаторов B, C и D не изменяются. Вот новая конфигурация для маршрутизатора A:

Маршрутизатор А
Current configuration: 

 hostname RouterA 

 ! 
 interface Serial1 
  ip address 2.2.2.2 255.0.0.0 
 !  
 router bgp 100 
  network 160.20.0.0 

!--- Router A advertises network 160.20.0.0/16.

  neighbor 2.2.2.1 remote-as 300 
  neighbor 2.2.2.1 send-community 
  neighbor 2.2.2.1 route-map SET_NO_EXPORT out 
 ! 
 access-list 1 permit 160.20.0.0 0.0.255.255 
 route-map SET_NO_EXPORT permit 10 
  match ip address 1 
  set community no-export 

!--- This sets the community attribute no-export.    

  at Router A for route 160.20.0.0/16 
 ! 
 end

Вот таблица BGP маршрутизатора C для 160.0.0.0/8:

RouterC# show ip bgp 160.0.0.0
BGP routing table entry for 160.0.0.0/8, version 9
Paths: (1 available, best #1, not advertised to EBGP peer)
  Not advertised to any peer
  {200,100}, (aggregated by 300 4.4.4.1)
    0.0.0.0 from 0.0.0.0 (4.4.4.1)
      Origin IGP, localpref 100, weight 32768, valid, aggregated, local, atomic-
aggregate, best, ref 2
      Community: no-export

No-export сообщества останавливает объявление маршрутизатора C об объединенном маршруте к равному маршрутизатору eBGP D. Маршрутизатор D показывает, что не учился 160.0.0.0 из маршрутизатора C:

RouterD# show ip bgp 160.0.0.0
% Network not in table

Можно настроить аргумент attribute-map в маршрутизаторе C для управления атрибутом сообщества объединенного маршрута от no-export ни до одного. Эта конфигурация позволяет рекламу агрегата к маршрутизатору D.

Маршрутизатор C
Current configuration: 

 hostname RouterC 
 ! 
 interface Serial0 
  ip address 2.2.2.1 255.0.0.0 
 ! 
 interface Serial1 
  ip address 3.3.3.1 255.0.0.0 
 ! 
 interface Serial2 
  ip address 4.4.4.1 255.0.0.0 
 ! 
 router bgp 300 
  neighbor 2.2.2.2 remote-as 100 
  neighbor 3.3.3.3 remote-as 200 
  neighbor 4.4.4.4 remote-as 400 
  aggregate-address 160.0.0.0 255.0.0.0 
  as-set summary-only attribute-map Map 

!--- Use of the attribute-map argument allows
!--- you to change the community of the aggregate.
 
 ! 
 route-map Map permit 10 
  set community none 

!--- This sets the community of the aggregate to none.

 end

Теперь, посмотрите на таблицу BGP маршрутизатора C для 160.0.0.0/8. Поскольку нет никакого сообщества для объединенного маршрута, маршрутизатор C объявляет 160.0.0.0/8 к маршрутизатору D.

RouterC# show ip bgp 160.0.0.0
BGP routing table entry for 160.0.0.0/8, version 6
Paths: (1 available, best #1)
  Advertised to non peer-group peers:
  2.2.2.2 3.3.3.3 4.4.4.4
  {200,100}, (aggregated by 300 4.4.4.1)
    0.0.0.0 from 0.0.0.0 (4.4.4.1)
      Origin IGP, localpref 100, weight 32768, valid, aggregated, local, atomic-
aggregate, best, ref 2

Выходные данные show ip bgp 160.0.0.0 в маршрутизаторе D показывают, что маршрутизатор D изучил объединенный маршрут 160.0.0.0/8 из маршрутизатора C.

RouterD# show ip bgp 160.0.0.0
BGP routing table entry for 160.0.0.0/8, version 10
Paths: (1 available, best #1, table Default-IP-Routing-Table)
  Not advertised to any peer
  300 {200,100}, (aggregated by 300 4.4.4.1)
    4.4.4.1 from 4.4.4.1 (4.4.4.1)
      Origin IGP, localpref 100, valid, external, best

Используйте advertise-map для Агрегации Подмножества Определенных Маршрутов

Если вы управляете отдельными префиксами, которые формируют объединенный маршрут, можно более легко решить, какие атрибуты агрегат будет нести. Исключите префикс 160.20.0.0 из объединенного маршрута в примере в Изменении Атрибуты раздела Объединенного маршрута. В этом случае агрегат 160.0.0.0/8 не наследовал значение no-export атрибута community. Для внесения этого изменения настройте аргумент advertise-map в маршрутизаторе C.

Маршрутизатор C
Current configuration: 

 hostname RouterC 
 ! 
 interface Serial0 
  ip address 2.2.2.1 255.0.0.0 
 ! 
 interface Serial1 
  ip address 3.3.3.1 255.0.0.0 
 ! 
 interface Serial2 
  ip address 4.4.4.1 255.0.0.0 
 ! 
 router bgp 300 
  neighbor 2.2.2.2 remote-as 100 
  neighbor 3.3.3.3 remote-as 200 
  neighbor 4.4.4.4 remote-as 400 
  aggregate-address 160.0.0.0 255.0.0.0
  as-set summary-only advertise-map SELECT_SP_ROUTE   

!--- You exclude a particular prefix with the
!--- use of advertise-map.

 ! 
 access-list 1 permit 160.10.0.0 0.0.255.255 
 ! 
 route-map SELECT_SP_ROUTE permit 10 
  match ip address 1 
 ! 
 end

Теперь, посмотрите на таблицу BGP маршрутизатора C для 160.0.0.0/8:

RouterC# show ip bgp 160.0.0.0
BGP routing table entry for 160.0.0.0/8, version 15
Paths: (1 available, best #1)
  Advertised to non peer-group peers:
  2.2.2.2 4.4.4.4
  200, (aggregated by 300 2.2.2.1)
    0.0.0.0 from 0.0.0.0 (2.2.2.1)
      Origin IGP, localpref 100, weight 32768, valid, aggregated, local, atomic-
aggregate, best, ref 2

Только AS-200 является частью Сведений атрибута AS_PATH агрегата; AS-100 не является частью информации. Кроме того, нет никакого наследования no-export сообщества от 160.20.0.0/16. Поэтому об объединенном маршруте объявляют маршрутизатору D. Выходные данные show ip bgp 160.0.0.0 показывают объявление:

RouterD# show ip bgp 160.0.0.0
BGP routing table entry for 160.0.0.0/8, version 7
Paths: (1 available, best #1, table Default-IP-Routing-Table)
  Not advertised to any peer
  300 200, (aggregated by 300 4.4.4.1)
    4.4.4.1 from 4.4.4.1 (4.4.4.1)
      Origin IGP, localpref 100, valid, external, atomic-aggregate, best
ip bgp 160.0.0.0

Примечание: Поскольку составной актив имеет AS-200 только, маршрутизатор A в AS-100 принимает объединенный маршрут и устанавливает маршрут в таблице маршрутизации. Механизм обнаружения петли BGP вызывает это принятие маршрута. Механизм обнаружения петли BGP не обнаруживает свой собственный AS в активе.

RouterA# show ip bgp
BGP table version is 3, local router ID is 160.20.0.1
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path
*> 160.0.0.0/8      2.2.2.1                                0 300 200 i
*> 160.20.0.0       0.0.0.0                  0         32768 i

Влияние Использования suppress-map с Другими Командами настройки

Команда aggregate-address включает другие команды настройки, такие как suppress-map. Для понимания влияния использования всех команд настройки в комбинации обратите внимание, что агрегаторный адрес только наследовал атрибуты от более определенных маршрутов при использовании команды настройки актива. Примеры атрибутов, которые может наследовать агрегаторный адрес, включают no-export, и нет - дают объявление.

  • При использовании команды настройки suppress-map наряду с командой настройки summary-only команда настройки summary-only не имеет никакого эффекта. С использованием команды настройки suppress-map не объявлены более определенные маршруты, которые подавляет suppress-map. Однако маршруты, которые не покрывает suppress-map, объявлены в дополнение к агрегированному маршруту. Поэтому примечания в этом разделе применяются к использованию suppress-map или с или без команды настройки summary-only.

  • При использовании актива с suppress-map невзирая на то, что подавленные маршруты не объявлены, агрегированный маршрут наследовал атрибуты всех подавленных маршрутов. Но можно отвергнуть наследованные атрибуты с использованием других команд настройки, такие как attribute-map. Изменение Атрибуты раздела Объединенного маршрута описывает использование attribute-map.

  • Когда вы используете актив и команды настройки suppress-map с advertise-map, составными формами. Агрегат наследовал атрибуты только из маршрутов, которые выбраны в advertise-map, независимо от того, подавляет ли suppress-map маршрут. Посмотрите advertise-map Использования для Агрегации Подмножества Определенного раздела Маршрутов.

  • При использовании advertise-map и attribute-map наряду с активом и другими командами настройки attribute-map отвергает атрибуты, которые выбраны в advertise-map.

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


Дополнительные сведения


Document ID: 5441