Сети для самых маленьких bgp

Сети для самых маленьких bgp

BGP (англ. Border Gateway Protocol , протокол граничного шлюза) — динамический протокол маршрутизации.

Относится к классу протоколов маршрутизации внешнего шлюза (англ. EGP — External Gateway Protocol).

BGP
Название Border Gateway Protocol
Семейство TCP/IP
Порт/ID 179/TCP
Назначение протокола Протокол динамической маршрутизации
Спецификация RFC 4271
Основные реализации (клиенты) Cisco IOS, Juniper JunOS, Bird, OpenBGPD, Quagga, Huawei VRP, Mikrotik RouterOS, frrouting

На текущий момент является основным протоколом динамической маршрутизации в сети Интернет.

Протокол BGP предназначен для обмена информацией о достижимости подсетей между автономными системами (АС, англ. AS — autonomous system), то есть группами маршрутизаторов под единым техническим и административным управлением, использующими протокол внутридоменной маршрутизации для определения маршрутов внутри себя и протокол междоменной маршрутизации для определения маршрутов доставки пакетов в другие АС. Передаваемая информация включает в себя список АС, к которым имеется доступ через данную систему. Выбор наилучших маршрутов осуществляется исходя из правил, принятых в сети.

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

BGP, наряду с DNS, является одним из главных механизмов, обеспечивающих функционирование Интернета.

BGP является протоколом прикладного уровня и функционирует поверх протокола транспортного уровня TCP (порт 179). После установки соединения передаётся информация обо всех маршрутах, предназначенных для экспорта. В дальнейшем передаётся только информация об изменениях в таблицах маршрутизации. При закрытии соединения удаляются все маршруты, информация о которых передана противоположной стороной.

Содержание

Формат сообщения [ править | править код ]

Сообщение BGP начинается с заголовка, после которого, в зависимости от типа сообщения, могут следовать данные. Максимальная длина сообщения — 4096 октетов, минимальная — 19 октетов. Заголовок сообщения содержит следующие поля:

  • Маркер (16 октетов) — используется для совместимости, должен быть заполнен единицами;
  • Длина (2 октета) — длина сообщения в октетах, включая заголовок;
  • Тип (1 октет):
  • 1 — Открытие;
  • 2 — Обновление информации;
  • 3 — Оповещение;
  • 4 — Сохранение соединения.

Открытие [ править | править код ]

Первое сообщение после установки соединения должно быть «Открытие». Если сообщение успешно обработано, в ответ будет послано «Сохранение соединения». В дополнение к заголовку BGP сообщение «Открытие» содержит следующие поля:

  • Версия (1 октет) — версия протокола, текущее значение 4;
  • Моя система (2 октета) — номер автономной системы;
  • Интервал времени (2 октета) — максимальный интервал времени в секундах между получением сообщений «Обновление информации» или «Сохранение соединения»;
  • Идентификатор отправителя (4 октета) — устанавливается равным IP-адресу;
  • Длина дополнительных параметров (1 октет);
  • Дополнительные параметры:
  • Тип параметра (1 октет);
  • Длина параметра (1 октет);
  • Значение параметра.

Обновление информации [ править | править код ]

Сообщение «Обновление информации» предназначено для передачи информации о маршрутах между АС. Сообщение может указывать новые маршруты и удалять неработающие. Структура сообщения:

Флаги атрибутов

Бит Значение
1 – дополнительный, 0 – стандартный
1 1 – транзитивный (для стандартных всегда 1)
2 1 – информация частичная, 0 – полная
3 1 – поле длины атрибута два октета, 0 – один октет
4 не используются, должны быть 0
5
6
7
  • Длина удаляемых маршрутов (2 октета);
  • Удаляемые маршруты:
  • Длина (1 октет) — длина в битах префикса IP-адреса;
  • Префикс IP-адреса, дополненный минимальным количеством бит до полного октета;
Читайте также:  Работа силы реакции опоры
  • Длина атрибутов пути (2 октета);
  • Атрибуты пути:
    • Тип атрибута:
      • Флаг атрибута;
      • Код атрибута;
      • Длина атрибута (1 или 2 октета, в зависимости от флага);
      • Данные атрибута;
      • Информация о достижимости — список префиксов IP-адресов:
        • Длина (1 октет) — длина в битах префикса IP-адреса (нулевая длина — соответствие всем IP-адресам);
        • Префикс IP-адреса, дополненный минимальным количеством бит до полного октета.
        • Все атрибуты пути соответствуют всем записям в поле «Информация о достижимости».

          Сохранение соединения [ править | править код ]

          Сообщение сохранения соединения должно посылаться не реже чем раз в одну третью часть максимального интервала времени между сообщениями, но не чаще чем один раз в секунду. Если интервал времени установлен равным нулю, то сообщение не должно периодически рассылаться. Сообщение не использует дополнительных полей.

          Оповещение [ править | править код ]

          Оповещение посылается в случае обнаружения ошибки, при этом соединение закрывается. Сообщение содержит следующие поля:

          • Код ошибки (1 октет);
          • Субкод (1 октет);
          • Данные.

          Процесс выбора [ править | править код ]

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

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

          Поиск по этому блогу

          пятница, 11 февраля 2011 г.

          Коротко о настройке BGP и его диагностировании

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

          1. Команда bgp router-id
          2. Наибольший IP петлевого (loopback) интерфейса
          3. Наибольший IP физического интерфейса

          В BGP по-умолчанию маршруты суммируются до границ своего класса. Как и в других протоколах, здесь это отключается той же командой no auto-summary .

          Маршруты, объявляемые вручную, указываются следующей командой:

          Маршруты, добавленные вручную (командой network ) помечаются как маршруты, происходящие из IGP ("i"), а маршруты, полученные при редистрибуции, помечаются как маршруты с неизвестным происхождением ("?").

          BGP-маршрутизатор может отдавать своим соседям маршрут по-умолчанию:

          Router(config-router)# no synchronization

          "eBGP multihop" обязателен, если используются петлевые интерфейсы.

          Для рассылки агрегированных маршрутов есть два способа: статические маршруты и команда aggregate-address .

          Router(config)# ip route 192.168.0.0 255.255.0.0 Null0
          .
          Router(config-router)# network 192.168.0.0 mask 255.255.0.0

          Router(config-router)# aggregate-address 192.168.0.0 255.255.0.0 [summary-only]

          Если используется ключевое слово summary-only , объявляется только агрегированный маршрут. Если же это ключевое слово не используется, то наряду с агрегированным маршрутом рассылаются и more-specific (морспецифики, более конкретные маршруты).

          С другой стороны, отдельные морспецифики можно фильтровать при помощи "подавления" (suppress map):

          Router(config-router)# aggregate-address 192.168.0.0 255.255.0.0 suppress-map

          Router(config-router)# aggregate-address 192.168.0.0 255.255.0.0 attribute-map

          Router(config-router)# aggregate-address 192.168.0.0 255.255.0.0 as-set

          Router(config-router)# aggregate-address 192.168.0.0 255.255.0.0 as-set advertise-map

          Для удобства каждому соседу можно назначить описание:

          Router(config-router)# neighbor 192.168.123.45 description R7 in Moscow

          Router(config-router)# neighbor 192.168.123.45 password FooBar

          Router(config-router)# neighbor 192.168.123.45 advertisement-interval

          Router(config-router)# neighbor 192.168.123.45 version

          Router(config-router)# bgp bestpath as-path ignore

          Router(config-router)# neighbor 192.168.123.45 maximum-prefix [ ] [warning-only]

          Здесь порог предупреждения (warning threshold) определяет процент от максимального количества префиксов, при превышении которого генерируется предупреждение. Ключевое слово warning-only позволяет соединению продолжать работу, даже если пир превысил максимальный порог префиксов.

          Читайте также:  Яндекс навигатор неправильно определяет местоположение

          Для временного отключения соседа без удаления его конфигурации используется команда neighbor shutdown .

          Для фильтрации принимаемых или рассылаемых маршрутов применяются списки дистрибуции (distribute list):

          Router(config-router)# neighbor distribute-list

          Router(config)# ip as-path access-list 1 permit
          .
          Router(config-router)# neighbor filter-list

          Router(config-router)# neighbor route-map

          Router(config-router)# neighbor weight

          Router(config-router)# neighbor filter-list
          weight

          Административная дистанция отличается от веса тем, что влияет на предпочтения среди маршрутов, полученных от разных протоколов маршрутизации. Чем меньше дистанция, тем предпочтительней. Административная дистанция внешних BGP-маршрутов равна 20. Дистанция внутренних и локальных (генерируемых данным роутером при помощи команды network ) BGP-маршрутов равна 200.

          Бэкдор (backdoor link, черный ход) — приватное соединение между AS, которому должно отдаваться предпочтение перед eBGP-маршрутами. Для чего административная дистанция внешнего маршрута должна быть искусственно завышена включением в BGP-процесс необходимой сети с ключевым словом backdoor :

          Router(config-router)# network backdoor

          Маршрут к указанной сети будет считаться локальным с административной дистанцией 200, из-за чего предпочтение будет отдаваться маршрутам, полученным из IGP, который работает в этом приватном линке, и трафик вместо внешнего маршрута потечет по бэкдору.

          Кроме того, iBGP-пиры обмениваются друг с другом локальными предпочтениями (local preference, 32-битная величина, по-умолчанию равная 100). Это значение можно установить командой ip default local-preference , либо set local-preference в роутмапе. В отличие от административного веса, действие локалпрефов распространяется за пределы локального роутера.

          Влияние на путь, которым трафик будет заходить в вашу AS из соседней, при наличии нескольких точек входа, оказывает MED (или "метрика"). Для установки MED BGP-маршрута равным значению метрики такого же маршрута из IGP, в роутмапе можно воспользоваться командой set metric-type internal . Для принудительного сравнения MED нескольких маршрутов к одному адресату, даже если они происходят из разных AS, в BGP-процессе применяется команда bgp always-compare-med .

          MED влияет только на поведение соседней AS. Повлиять аналогичным образом на поведение удаленных AS можно при помощи искусственного увеличения "AS Path" маршрутов. Для этого в роутмапе используется команда set as-path prepend . Обычно локальная AS "препендится" один или несколько раз. Например, для маршрутов AS 123:

          Для сохранения BGP-информации в процессе редистрибуции в/из IGP используется тегирование маршрутов (route tagging). По-умолчанию маршруты, передаваемые из BGP в IGP, тегируются собственным "AS Path". В тег можно добавить ещё происхождение маршрута командой set automatic-tag в роутмапе. Для автоматической установки атрибута "AS Path" из тега при редистрибуции маршрута из IGP обратно в BGP применяется команда set as-path tag в роутмапе. Также теги маршрутов могут применяться для хранения BGP-коммьюнити.

          Включение подавления маршрутов:

          Router(config-router)# neighbor BRANCHES peer-group
          Router(config-router)# neighbor BRANCHES ebgp-multihop 2
          Router(config-router)# neighbor BRANCHES update-source Loopback 0
          Router(config-router)# neighbor 10.1.0.84 peer-group BRANCHES
          Router(config-router)# neighbor 10.1.0.84 remote-as 123

          • no-export — передается с маршрутом, рассылаемым eBGP-пирам, инструктируя их не рекламировать этот маршрут дальше, за пределы собственной AS
          • no-advertise — рассылается iBGP-пирам с целью предотвращения дальнейшей рассылки маршрута
          • local-as — используется для ограничения рассылки маршрута пределами конфедерации

          Пользовательские коммьюнити устанавливаются либо в десятичном формате, либо в форме AA:NN (ASN:число).

          Router(config)# ip community-list 101

          Router(config-router)# neighbor remove-private-as

          Router(config-router)# bgp confederation identifier

          Router(config-router)# bgp confederation peers [ . ]

          Router(config-router)# neighbor route-reflector-client

          Роут-рефлектор добавляет к маршрутам "Originator ID", указывающий на происхождение маршрута, и "Cluster List", определяющий рефлект-кластер во избежание появления маршрутных петель. По-умолчанию роут-рефлектор добавляет свой ID в список кластера. Но ID кластера можно указать вручную командой bgp cluster-id . Это необходимо, если в кластере несколько рефлекторов.

          Читайте также:  Как сделать открытку в форме

          Если клиенты рефлектора полносвязны между собой, для отключения отражения маршрутов между клиентами используется команда no bgp client-to-client reflection . Маршруты извне кластера будут продолжать отражаться обычным образом.

          Войти

          Преимущества использования BGP

          1. Использование BGP для п одключения к провайдеру

          Интернет — это набор автономных систем, которые соединены между собой для коммуникации. BGP обеспечивает маршрутизацию между этими автономными системами.
          Предприятие, кjторое хочет подключиться к интернету, делает это через одного из провайдеров. Если предприятие имеет только одно подключение к интернету, возможно, ему не понадобится использовать BGP, вместо него можно использовать маршруты по умолчанию. Однако, если имеется несколько подключений к одному или нескольким провайдерам, BGP будет предпочтительным для использования, т.к. он позволяет манипулировать атрибутами маршрутов, чтобы был выбран оптимальный путь.
          Чтобы понять BGP, надо понять, чем он отличается от других протоколов маршрутизации. Один путь, это разделить протоколы на внешние и внутренние протоколы маршрутизации, такие как:
          — IGP (Interior gateway protocol), внутренний протокол маршрутизации — это протокол, который обменивается маршрутной информацией внутри автономной системы Примеры таких протоколов — RIP, OSPF, EIGRP.

          2. Варианты использования BGP для нескольких подключений к провайдеру

          Как видно на рисунке, автономные системы AS 65020 и AS 65030 отправляют маршруты по умолчанию в AS 65010, сеть абонента А. Из-за метрики внутреннего протокола маршрутизации сети абонента А, а также из-за настройки маршрутизаторов R1 и R2, граничный маршрутизатор провайдера PE1 выбран как маршрут по умолчанию для достижения любой внешней сети за пределами автономной системы абонента А.

          3. BGP маршрутизация между автономными системами

          Когда используется бесклассовая маршрутизация на маршрутизаторе ядра основного провайдера, построенная таблица маршрутизации состоит в основном из BGP маршрутов и имеет более 175000 блоков бесклассовых сетей. Если не использовать бесклассовую маршрутизацию, таблица маршрутизации может содержать более 2 000 000 записей. Использование BGP4 предотвращает таблицу маршрутизации интернета становиться слишком большой для соединения миллионов пользователей.

          3. Сравнение BGP с внутренними протоколами маршрутизации

          BGP работает не так, как внутренние протоколы маршрутизации. Внутренние протоколы маршрутизации ищут самый быстрый путь из одной точки корпоративной сети в другую, основываясь на определенной метрике. RIP использует число переприемов устройств третьего уровня на пути к сети назначения. OSPF и EIGRP boen лучшую доступную скорость по параметру bandwidth на интерфейсе/ Все внутренние протоколы вычисляют стоимость пути.
          BGP является внешним протоколом и не использует скорость для определения лучшего пути. Вместо этого BGP является протоколом, основанным на политиках, который позволяет автономным системам управлять трафиком с использованием атрибутов BGP путей. BGP позволяет провайдерам использовать всю свою пропускную способность путем манипулирования этими атрибутами пути.

          Ссылка на основную публикацию
          Сетевой город 71 щекино школа 12
          Запрошенная Вами страница не найдена. Возможно, Вы перешли по устаревшей ссылке или неверно ввели адрес. 2019 Электронное образование Министерство по...
          Самый лучший музыкальный центр по звуку
          На первый взгляд, сегодня мало кому в голову придет купить музыкальный центр себе домой, когда прослушивать музыку можно, просто подключив...
          Самый лучший плеер для виндовс 7
          Чтобы просмотр фильмов или прослушивание музыки за компьютером было действительно комфортным, необходимо скачать по-настоящему качественный проигрыватель. Ниже представлена подборка из...
          Сетевой драйвер для ноутбука асер
          Драйвера для ноутбуков и нетбуков Acer Поддерживаемые операционные системы: Windows 7 Для начала загрузки данного файла, найдите под пунктом номер...
          Adblock detector