Клиенты различных провайдеров с резервным каналом между собой – правила маршрутизации в сети Internet

При добавлении или удалении клиентов провайдеры стараются изменять как можно меньше параметров, так как множественные изменения конфигурации могут негативно сказаться на масштабируемости их сети. Каждый раз, когда добавляется или удаляется клиент, провайдеру необходимо соответствующим образом подстраивать свои правила маршрутизации согласно требованиям клиента. В последующих примерах вы увидите, как в AS можно использовать атрибут COMMUNITY или другие методы управления маршрутами для того, чтобы новый клиент мог динамически согласовывать свои правила маршрутизации с правилами, установленными провайдером.

Управление маршрутами с помощью атрибута COMMUNITY

На рис. 12.9 клиент AS1 подключается к провайдеру AS4. А клиент AS3 получает доступ в Internet через провайдера AS3. При этом между клиентами AS1 и AS2 имеется частный канал, который используется для обмена трафиком между этими AS. Весь остальной трафик должен передаваться по каналам с соответствующими провайдерами: AS1

— через AS4, a AS2 — через AS3. В том случае, если частный канал выходит из строя, клиенты должны иметь возможность обмениваться между собой трафиком через сеть Internet. Если у одного из клиентов выходит из строя канал связи с провайдером, то он может через частный канал воспользоваться соединением с Internet другого клиента.

Рис. 12.9. Несколько AS, подключенных к различным провайдерам

В листингах с 12.32 по 12.34 показаны соответствующие конфигурации маршрутизаторов RTA, RTC и RTF. Маршрутизатор RTD должен быть зеркальным отражением RTC.

Листинг 12.32. Использование частного канала между двумя AS, подключенных к различным провайдерам, с применением атрибута COMMUNITY (конфигурация маршрутизатора RTA)

router bgp 4

network 172.16.220.0 mask 255.255.255.0

neighbor 172.16.1.2 remote-as 3

neighbor 172.16.1.2 route-map CHECK_COMMOKITY in

neighbor 172.16.20.1 remote-as 1

neighbor 172.16.20.1 route-map CHECK_COMMUNITY in no auto-summary

ip community-list 2 permit 4:40

ip community-list 3 permit 4:60

route-map CHECK_COMMUNITY permit 10 match  community 2

set  local-preference 40

route-map CKECK COMMUNITY permit 20 match  community 3

set  local-preference 60

route-map CHECK COMMUNITY permit 30

  set localpreference 100                                                    

Итак, как видите, на маршрутизаторе RTA создана карта маршрутов СНЕСК_ COMMUNITY. Согласно этой карте маршрутов, атрибут COMMINUTY проверяется на соответствие списку (команда match community) значений, представленных с помощью команды ip community-list. В карте маршрутов описывается следующее.

·          Запись  10  —  для  всех  маршрутов  со  значением  COMMUNITY  4:40  установить локальное предпочтение 40.

·          Запись  20  —  для  всех  маршрутов  со  значением  COMMUNITY  4:60  установить локальное предпочтение 60.

·          Запись  30  —  для  всех  остальных  маршрутов  установить  по  умолчанию  локаль ное предпочтение 100.

Листинг 12.33. Использование частного канала между двумя AS, подключенных к различным провайдерам, с применением атрибута COMMUNITY (конфигурация маршрутизатора RTC)

router bgp 1

no auto-summary

ip  as-path access-list 2  permit _2_ ip as-path access-list 10 permit  A$

ip as-path access-list 10 permit  A$

route-map setcommunity permit 10 match as-path 2

set community 4:40

 route-map setcommunity permit 20                                              

Давайте рассмотрим карту маршрутов setcommunity, которая создана для обслуживания маршрутов, поступающих от AS4. В этой карте маршрутов устанавливается следующее.

·          Запись 10 — для всех маршрутов, прошедших через AS2 (_2_) установить атрибут COMMUNITY 4:40.

·          Запись  20  —  все  остальные  маршруты  должны  проходить  без  изменений  и  не содержать атрибута COMMUNITY.

На маршрутизаторе RTC используется также список фильтров filter-list out, благодаря которому AS4 не получает сведений об AS3 через AS1. Этот фильтр разрешает только обмен маршрутами между AS1 и AS2. Если же канал между AS4 и AS3 выходит из

строя, то AS4 не сможет использовать AS1, чтобы отправить информацию о маршрутах в AS3.

Листинг 12.34. Использование частного канала между двумя AS, подключенных к различным провайдерам, с применением атрибута COMMUNITY (конфигурация маршрутизатора RTF)

router bgp  3

no auto-summary

route-map setcommunity permit 10

  set community 4:60                                                          

На маршрутизаторе RTF карта маршрутов setcommunnity, которая  используется совместно с BGP-командой neighbor, устанавливает всем маршрутам в направлении AS4 атрибут COMMUNITY 4:60.

Посмотрим,   чего   же   мы  добились.   Рассмотрим   таблицу   BGP-маршрутов   на

маршрутизаторе RTA, приведенную в листинге 12.35.

Листинг 12.35. Использование частного канала между двумя AS, подключенных

к различным провайдерам, с применением атрибута COMMUNITY (таблица

BGP-маршрутов на маршрутизаторе RTA)

RTC# show ip bgp

BGP table version is 7, local router ID is 172.16.2.254

Status codes: s suppressed, d damped, h history, * valid, > best, i – internal Origin codes: i – IGP, e – EGP,

Как видите, маршрутизатор RTA динамически установил локальное предпочтение равное 60 для всех маршрутов провайдера AS3. Все маршруты, поступающие от AS2 через AS1, имеют локальное предпочтение 40, а все локальные маршруты AS1 — 100.

Все маршруты, сгенерированные AS1 (т.е. локальные маршруты клиента), такие как

192.68.11.0/24, AS4 будет направлять прямо в AS1. Маршруты, принадлежащие AS2 (транзитные клиентские маршруты), такие как 192.68.10.0/24, будут передаваться AS4 другому провайдеру, т.е. на AS3. Все остальные маршруты, объявляемые провайдером (маршруты провайдера) в AS4, также будут направляться провайдеру AS3.

Источник: Сэм Хелеби, Денни Мак-Ферсон, Принципы маршрутизации в Internet, 2-е  издание.  : Пер. с англ. М. : Издательский дом «Вильямс», 2001. — 448 с. : ил. — Парал. тит. англ.

Вы можете следить за любыми ответами на эту запись через RSS 2.0 ленту. Вы можете оставить ответ, или trackback с вашего собственного сайта.

Оставьте отзыв

XHTML: Вы можете использовать следующие теги: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

 
Rambler's Top100