Настройка основных функций и атрибутов BGP

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

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

Главы 11 и 12 не призваны заменить руководство пользователя по работе с маршрутизаторами Cisco, и в них вы не найдете все команды и варианты настройки маршрутизаторов. В этих главах представлены примеры конфигурации маршрутизаторов для общих ситуаций, которые чаще всего возникают при подключении сетей к Internet. В вашей сети возможно потребуется скомбинировать несколько вариантов или способов подключения с целью выработки наиболее эффективного набора правил маршрутизации.

Далее мы увидим, что AS может играть роль клиента, провайдера или даже обе эти роли сразу. Постарайтесь не запутаться в этих ролях AS или в IP-адресации, которая может показаться вам несколько необычной. Все приведенные примеры — всего лишь упражнения, которые помогут вам понять, как функционирует протокол BGP, и оптимально реализовать его возможности.

Сеанс связи между взаимодействующими маршрутизаторами

В этом примере демонстрируются различные типы BGP-сеансов между взаимодействующими узлами, с которыми вы можете столкнуться на практике. Рассмотрим рис. 11.1.

Сеанс взаимодействия по 1BGP происходит внутри AS3 между физическим адресом маршрутизатора RTF и петельным адресом маршрутизатора RTA. Кроме того, между AS3 и AS1 сформирован сеанс по EBGP с использованием двух IP-адресов из одного сегмента на маршрутизаторах RTA и RTC. Еще один EBGP-сеанс сформирован между маршрутизаторами RTF в AS3 и RTD в AS2 с использованием IP-адресов, которые находятся в разных сегментах (мультиузловое соединение).

Рис. 11.1. Сеанс между несколькими узлами

Очень важно помнить, что TCP-соединение не будет установлено в BGP до тех пор, пока между двумя узлами не будет установлена  связь по протоколу ЮР или если они соединены напрямую. В качестве протокола ЮР мы будем использовать OSPF, с помошью которого и будет обеспечиваться требуемая внутренняя связность. В листинге 11.1 показана конфигурация маршрутизатора RTA.

Листинг 11.1. Конфигурация маршрутизатора RTA

ip subnet-zero

interface LoopbackO

ip address 172/16/2/254 255/255/255.255

interface Ethernetl

ip address 172.16.1.1 255.255.255.0

interface Serial0

ip address 172.16.20.2 255.255.255.0

router ospf 10

network 172.16.0.0 0.0.255.255 area 0

router bgp 3

no syncronization

neighbor 172.16.1.2 remote-as 3

neighbor 172.16.1.2 update-source Loopback0

neighbor 172.16.20.1 remote-as 1 no auto-summary

 ip classless                                                                   

В примере конфигурации маршрутизатора  RTA в листинге 11.1 вам, возможно, незнаком синтаксис команд. Синтаксис всех этих команд приведен в табл. 11.1. В ней этим командам даются пояснения применительно к схеме маршрутизации, представленной на рис.

11.1.                  В последующих примерах, которые вы найдете в этой главе, все команды маршрутизатора будут касаться в основном настройки работы по BGP, IGP или статической маршрутизации. Команды, с помощью которых проводится назначение интерфейсам  IP- адресов, не будут рассматриваться, поскольку объем книги ограничен.

Таблица 11.1 Команды конфигурации из листинга 11.1

Команда                          Пояснение

Это команда глобальной настройки, если требуется настроить интерфейсы, которые подпадают  под  нулевые  подсети  (какой  является  192.168.1.0/30).  С  переходом  к

ip subnet-zero

interface type slot/port

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

С помощью этой команды задается тип интерфейса и его номер на маршрутизаторе. Настройки, следующие за ней, будут относиться именно к этому интерфейсу. (Синтаксис slot/port может немного отличаться в зависимости от производителя оборудования). Обратите внимание, что на RTA задаются три команды interface — для каждого из трех соединений. Интерфейс loopback представляет собой программный интерфейс, эмулирующий интерфейс, который всегда находится в активном состоянии

ip address /p-address mask [secondary]

router process [process-id]

С помощью этой команды интерфейсу задается пара IP-адреса и маски. Например, IP-

адрес порта Ethernet на RTA задается так: ip address 172.16.1.1 255.255.255.0

Эта глобальная команда определяет процесс (режим работы) маршрутизатора, такой как OSPF, RIP или BGP, и присваивает ему идентификатор процесса. Некоторым процессам, например RIP, нет необходимости присваивать идентификатор процесса. Например, при настройке маршрутизатора RTA команда router ospf 10 определяет, что процесс OSPF имеет идентификатор 10, а команда router bgp 3 указывает на BGP- процесс в автономной системе 3

network                            Эта   команда   определяет   сеть   или   (в   случае   работы   по   OSPF)   интерфейсы, принимающие участие в маршрутизации

Обратите внимание на команду network, заданную на маршрутизаторе RTA. Как видите, там имеется запись 0.0.255.255 — т.е. за нулями следуют единицы. Это и есть инверсная маска, где нули точно определяют размер сети, а единицы представляют

inverse mask

незначащие биты. Например, запись 172.16.0.0 0.0. 255. 255 указывает на любую сеть или IP-адрес вида 176.16.Х.Х. Инверсные маски можно использовать при организации списков разрешения доступа, а также совместно с командой network. В табл. 1 1 .2 приведена схема преобразования нормальных масок в инверсные в десятичной записи

area area-number            Эта команда используется для организации области с заданным номером в протоколе

OSPF

neighbor

Этой командой задаются параметры соединения с соседними BGP-узлами и правила маршрутизации, которые будут использоваться между маршрутизатором и другими узлами. При настройке маршрутизатора RTA команда neighbor 172.16.1.2 remote-as 3 указывает на то, что BGP-сеанс будет устанавливаться между RTA и взаимодействующим узлом 1 72. 1 6. 1 .2 в AS3

no syncronization            Эта команда отключает синхронизацию между BGP и IGP. Более подробно она описана в главе 6, "Настройка параметров BGP"

Эта команда выключает в BGP режим автосуммирования по классам на границе основных сетей. Без этой команды BGP не будет рассылать маршруты в подсети основной сети, которые были преобразованы из IGP. Другими словами, сообщения об обновлениях маршрутов 172.16.1.0/24, 172.16-2.0/24 и т.д. будут рассылаться в виде

no auto-summary

ip classless

одного сообщения о сети класса В 172.16.0,0/16. Суммирование на границе основных сетей необходимо выполнять только в том случае, если в AS объединены сети, принадлежащие одной основной сети (т.е. сети одного класса). Если нет явной необходимости в суммировании сетей, по умолчанию желательно запрещать эту процедуру

Эта команда позволяет маршрутизатору пересылать пакеты, которые адресованы в неизвестные сети, соседним сетям, подключенным непосредственно к маршрутизатору. По умолчанию, когда маршрутизатор получает пакеты для подсети, которая правильно задана сточки зрения IP-адресации, но отсутствует в его таблицах маршрутов и для этой сети нет маршрута по умолчанию, он отвергает пакеты. Задав команду ip classless, вы разрешаете маршрутизатору пересылать эти пакеты по наилучшему маршруту в суперсеть

update-source interface

Эта команда, заданная совместно с выражением neighbor, определяет номер интерфейса, который будет использоваться в качестве IP-адреса источника во время BGP-сеанса с соседним узлом. Так, при настройке маршрутизатора RTA вторая строка с выражением neighbor указывает на то, что в качестве IP-адреса источника будет использоваться интерфейс LoopbackO

remote -as

Эта команда, заданная совместно с выражением neighbor, определяет номер AS удаленного взаимодействующего BGP-узла. При настройке RTA первое выражение neighbor указывает на то, что внутренний соседний BGP-узел 1 72. 1 6. 1 .2 принадлежит к локальной AS3. Третье выражение выражением neighbor указывает на то, что BGP-узел 1 72. 1 6.20. 1 принадлежит к AS 1

Таблица 11.2 Преобразование префиксов C1DR в десятичные маски подсети

Префикс CIDR

Десятичная запись

Инверсная запись

/1

128.0.0.0

127.255.255.255

/2

192.0.0.0

63.255.255.255

/3

224.0.0.0

31.255.255.255

/4

240.0.0.0

15255.255,255

/5

248.0.0.0

7.255.255.255

/6

252.0.0.0

3.255.255.255

/7

254.0.0.0

1.255.255.255

/8

255.0.0.0

0.255.255.255

/9

255.128.0.0

0.127.255.255

/10

255.192.0.0

0.63.255.255

/11

255.224.0.0

0.31.255.255

/12

255.240.0.0

0.15.255.255

/13

255.248.0.0

0.7.255.255

/14

255.252.0.0

0.3.255.255

/15

255.254.0.0

0.1.255.255

/16

255.255.0.0

0.0.255.255

/17

255.255.128.0

0.0.127.255

/18

255.255.192.0

0.0.63.255

/19

255.255.224.0

0.0.31.255

/20

255.255.240.0

0.0.15.255

/21

255.255.248.0

0.0.7.255

/22

255.255.252.0

0.0.3.255

/23

255.255.254.0

0.0.1.255

/24

255.255.255.0

0.0.0.255

/25

255.255.255.128

0.0.0.127

/26

255.255.255.192

0.0.0.63

/27

255.255.255.224

0.0.0.31

/28

255.255.255.240

0.0.0.15

/29

255.255.255.248

0.0.0.7

/30

255.255.255.252

0.0.0.3

/31

255.255.255.254

0.0.0.1

/32

255.255.255.255

0.0.0.0

Рассмотрим теперь конфигурацию маршрутизатора RTF (листинг 11.2).

Листинг 11.2. Конфигурация маршрутизатора RTF

ip subnet-zero

interface Ethernetl

ip address 172.16.1.2 255.255.255.0

interface Serial2/l

ip address 192.68.5.1 255.255.255.0

router ospf 10

network 172.16.0.0 0.0.255.255 area 0

network 192.68.0.0 0.0.255.255 area 0

router bgp 3

no syncronization

neighbor 172.16.2.254 remote-as 3

neighbor 192.68.12.1 remote-as 2

neighbor  192.68.12.1  ebgp-multihop  2 no              а                                                                                                                                                              и                                                                                                                                                             с           о                                        -summary

 ip classless                                                                   

Вы, наверное, обратили внимание на команду ebgp-multihop 2, которая используется как часть команды neighbor при настройке маршрутизатора RTF. Она показывает, что внешний BGP-узел не имеет непосредственного соединения с маршрутизатором RTF и доступен не более чем через два промежуточных узла. Помните, что команда применяется только в EBGP и не будет работать с IBGP. Величина, задаваемая в конце команды ebgp- multihop (в нашем примере 2), определяет значение времени жизни (Time To Live — TTL), которое задается в заголовке IP-пакета. В листингах 11.3 и 11.4 представлены примеры конфигурации маршрутизаторов RTC и RTD.

Листинг 11.3. Конфигурация маршрутизатора RTC

ip subnet-zero

interface Serial2/l

ip address 172.16.20.1 255.255.255.0

router bgp 1

no synchronization

neighbor 172.16.20.2 remote-as 3

no auto-summary

 ip classless                                                                   

Листинг 11.4. Конфигурация маршрутизатора RID

ip subnet-zero

interface SerialO/0

ip address 192.68.12.1 255.255.255.0

router ospf 10

network 192.68.0.0 0.0.255.255 area 0

router bgp 2

neighbor 192.68.5.1 remote-as 3

neighbor 192.68.5.1 ebgp-multihop 2

no auto-summary

 ip classless                                                                   

В листинге 11.5 представлен сеанс между взаимодействующими узлами после того, как они установили соединение.

Листинг 11.5. Соединение между взаимодействующими узлами (маршрутизатор RTF)

RTF#show ip bgp neighbor

BGP neighbor is 172.16.2.254, remote AS 3, internal link

BGP version 4, remote router ID 172.16.2.254

BGP state = Established, table version = 2, up for 22:36:09

Last read 00:00:10, hold time is 180, keepalive interval is 60 seconds Minimum time between advertisement runs is 5 seconds

Received 1362 messages, 0 notifications, 0 in queue

Sent 1362 messages, 0 notifications, 0 in queue

Connections established 2; dropped 1

Connection state is ESTAB, I/O status: 1, uread input bytes: 0

Local host: 172.16.1.2, Local port:

11008

Foreign host: 172.16.2.254, Foreign

port:

179

BGP neighbor is 192.68.12.1, remote AS 2, external link BGP version 4, remote router ID 192.68.5.2

BGP state = Established, table version = 2, up for 22:13:01

Last read 00:00:00, hold time is 180, keepalive interval is 60 seconds

Minimum time between advertisement runs is 30 seconds Received 1336 messages, 0 notifications, 0 in queue

Sent 1336 messages, 0 notifications, 0 in queue

Connections established 1; dropped 0

External BGP neighbor may be up to 2 hops away.

Connection state is ESTAB, I/O status: 1, uread input bytes: 0 Local host: 192.68.5.1, Local port: 11016

 Foreign host: 192.68.12.1, Foreign port: 179                                   

Для маршрутизатора RTF соседний узел 172.16.2.254 является внутренним соседним узлом, который принадлежит AS3. Соединение между этими узлами организовано по BGP-4 с использованием версии таблицы 2. Версия таблицы изменяется каждый раз, когда происходит ее обновление.

Другим соседним маршрутизатором по отношению к RTF является узел 192.68.12.1, с которым также установлено соединение. Этот маршрутизатор является внешним соседним узлом, принадлежащим к AS2. Обратите внимание; в листинге указано, что этот узел доступен через два промежуточных узла (согласно команде ebgp-multihop).

Фильтрация маршрутов и управление атрибутами

Фильтрация маршрутов и управление атрибутами являются основой для реализации правил маршрутизации в BGP. В этом разделе мы рассмотрим следующее:

•                           карты BGP-маршрутов;

•                           списки префиксов;

•                           идентифицирование и фильтрация маршрутов на основе NLRI;

•                           идентифицирование и фильтрация маршрутов на основе анализа AS_PATH.

Для введения в действие новых правил маршрутизации в BGP, таких как фильтрация маршрутов или управление атрибутами, для входных правил маршрутизации (Input Policy Engine) нужно представить набор соответствующих маршрутов. Это можно сделать несколькими способами. Самый грубый из них ~ сбросить BGP-сеанс с помощью команды:

clear ip bgp [ * / address / peer-group] [soft [in / out]]

Однако с помощью мягкой перенастройки или механизма обновления BGP- маршрутов возможно более элегантное решение этой проблемы. Более детально об этих методах читайте в главе 12, "Настройка эффективных правил маршрутизации в сети Internet".

Источник: Сэм Хелеби, Денни Мак-Ферсон, Принципы маршрутизации в 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