Сети Для Самых Маленьких
  • Сети для самых маленьких
  • 0. Планирование
    • 0. Документация сети
    • 1. Схемы сети
    • 2. IP-план
    • 3. Список VLAN
    • 4. План подключения оборудования по портам
    • 5. Заключение
  • 1. Подключение к оборудованию cisco
    • 0. Среда
    • 1. Способы подключения
    • 2. Управление по консоли
    • 3. Первичная настройка
    • 4. Настройка доступа
    • 5. Сброс пароля
  • 2. Коммутация
    • Теория
      • СКС, ЛВС, LAN
      • IP-адресация
      • Широковещательный домен
      • OSI
      • Путь пакета
      • VLAN
      • FAQ
    • Практика
      • Порты доступа (access)
      • Транковые порты (trunk)
      • Сеть управления и первичная настройка
      • Резюме
  • 3. Статическая маршрутизация
    • InterVlan Routing
    • Планирование расширения
    • Принципы маршрутизации
    • Настройка
    • Дополнительно
    • Материалы выпуска
  • 4. STP
    • Широковещательный шторм
    • STP
    • RSTP
    • MSTP
    • Агрегация каналов
    • Port security
    • Практика
    • Материалы выпуска
  • 5. ACL и NAT
    • Access Control List
      • Практика
    • NAT
      • Практика
    • Материалы выпуска
    • Бонусы
    • Спасибы
  • 6. Динамическая маршрутизация
    • Теория протоколов динамической маршрутизации
    • OSPF
      • Теория
      • Теория-2
      • Практика OSPF
      • Задача 1
      • Практика. Продолжение
      • Задача 2
      • Задача 3
    • EIGRP
      • Теория
      • Практика
      • Задача 4
    • Настройка передачи маршрутов между различными протоколами
    • Задача 5
    • Маршрут по умолчанию
    • Задача 6
    • Полезные команды для траблшутинга
    • Задача 7
    • Материалы
    • Полезные ссылки
  • 7. VPN
    • Введение в VPN
    • GRE
      • Абстрактная топология
      • Настройка
      • Механизм работы протокола
      • Итого
    • IPSec
      • Теория
        • Security Association
        • Трансформ-сет
      • Режимы работы IPSec
        • Туннельный режим работы IPSec
        • Практика
          • Настройка на локальной стороне
          • Настройка на обратной стороне
          • Настройка. Завершение
        • Задача 1
        • Теория
        • Задача 2
        • Транспортный режим работы IPSec
        • Задача 3
    • GRE over IPSec
      • Практика
      • Теория
      • Задача 4
      • Задача 5
    • IPSec VTI
    • DMVPN
      • Теория и практика DMVPN
      • OSPF
        • Практика
        • Теория
      • IPSec
      • NAT-Traversal
      • Задача 6
    • TShoot IPSec
    • MTU
    • Материалы выпуска
    • Полезные ссылки
  • 8. BGP и IP SLA
    • Автономные системы
    • PI и PA адреса
    • BGP
      • Теория
      • Установление BGP-сессии и процедура обмена маршрутами
      • Настройка BGP и практика
        • Настройка BGP и практика
        • Задача 1
        • Full View и Default Route
        • Задача 2
        • Looking Glass и другие инструменты
        • Control Plane и Data Plane
        • Выбор маршрута
        • Задача 3
      • Управление маршрутами
        • AS-Path ACL
        • Prefix List
        • Route Map
        • Задача 4
      • Балансировка и распределение нагрузки
        • Балансировка нагрузки
        • Задача 5
        • Распределение нагрузки
          • Исходящий
          • Задача 6
          • Входящий
        • AS-Path Prepend
        • MED
        • Анонс разных префиксов через разных ISP
        • BGP Community
        • Задача 7
        • Общая таблица по видам балансировки и распределения нагрузки
    • PBR
      • Теория
      • PBR
      • Практика
      • Задача 8
    • IP SLA
      • Настройка
      • Задача 9
      • Задача 10
    • Полезные ссылки
  • 8.1 IBGP
    • IBGP
    • Различия IBGP и EBGP
    • Проблема Эн квадрат
      • Route Reflector
        • Правила работы RR
        • Практика RR
          • Проблема резервирования
      • Конфедерации
    • Атрибуты BGP
      • Хорошо известные обязательные (Well-known Mandatory)
      • Хорошо известные необязательные (Well-known Discretionary)
      • Опциональные передаваемые/транзитивные (Optional Transitive)
      • Опциональные непередаваемые/нетранзитивные (Optional Non-transitive)
      • Community
        • Теория Community
        • Задача 7
        • Практика Community
        • Задача 8
        • Задача 9
      • Задача 6
    • Материалы выпуска
    • Задача 1
    • Задача 2
    • Практика
      • EBGP
      • iBGP
      • iBGP
      • Задача 3
      • Настройка внутренней маршрутизации. OSPF
      • Настраиваем BGP
      • Задача 4
      • Что мы можем улучшить?
      • Задача 5
      • Задача 6
      • Задача 7
      • Задача 8
      • Задача 9
    • Послесловие
  • 9. Multicast
    • Общее понимание Multicast
      • Пример I
      • Пример II
    • IGMP
      • Теория IGMP
      • Querier
      • Ещё пара слов о других версиях IGMP
      • Повторим ещё раз
      • И ещё раз
    • PIM
      • PIM Dense Mode
      • PIM Sparse Mode
      • Чтобы разобраться с тем, что такое PIM, обратимся к сети гораздо более сложной
      • Разбор полётов
        • RP
        • Бритва Оккама или отключение ненужных ветвей
        • SPT Switchover — переключение RPT-SPT
        • Задача 1
        • Задача 2
      • DR, Assert, Forwarder
      • Выбор RP
      • Завершение
    • SSM
    • BIDIR PIM
    • Мультикаст на канальном уровне
      • Мультикастовые MAC-адреса
      • IGMP Snooping
      • Задача 3
      • IGMP Snooping Proxy
      • Multicast VLAN Replication
    • Заключение
  • 10. Базовый MPLS
    • Что не так с IP?
    • Заголовок MPLS
    • Пространство меток
    • Что такое MPLS
    • Передача трафика в сети MPLS
    • Терминология
    • Распространение меток
      • Методы распространение меток
        • DU против DoD
        • Ordered Control против Independent Control
        • Liberal Label Retention Mode против Conservative Label Retention Mode
        • PHP
      • Протоколы распространения меток
        • LDP
          • Практика
        • Применение чистого MPLS в связке с BGP
        • RSVP-TE
          • Практика
    • ВиО
    • Полезные ссылки
    • Спасибы
  • 11. MPLS L3VPN
    • VRF, VPN-Instance, Routing Instance
      • VRF-Lite
    • MPLS L3VPN
      • Data Plane или передача пользовательских данных
      • Роль меток MPLS
        • Транспортная метка
        • Сервисная метка
      • Терминология
      • Control Plane или передача служебной (маршрутной) информации
      • Протоколы маршрутизации
      • MBGP
        • Route Distinguisher
        • Route Target)
    • Практика
      • VRF-Lite
      • MPLS L3VPN
      • Взаимодействие между VPN
    • Трассировка в MPLS L3VPN
    • Доступ в Интернет
      • NAT на CE
        • Практика
        • Теория
        • Повторим шаги настройки
      • VRF Aware NAT
        • Практика
        • Теория
      • Common Services
    • ВиО
    • Полезные ссылки
  • 12. MPLS L2VPN
    • О технологиях L2VPN
    • VPWS
      • Data Plane
      • Control Plane
      • Практика
      • Теория
      • Виды VPWS
    • VPLS
      • Data Plane
      • Control Plane
      • VPLS Martini Mode (targeted LDP)
        • Практика
        • Теория
      • VPLS Kompella Mode (BGP)
        • Обнаружение соседей или Auto-Discovery
        • Передача префиксов
        • Распределение меток и механизм Label Block
        • Практика
        • Теория
      • Martini vs. Kompella
      • Иерархический VPLS (H-VPLS)
        • Практика H-VPLS
        • Теория
    • Проблемы VPLS
    • Полезные ссылки
    • Спасибы
  • 12.1. MPLS EVPN
    • Вспоминаем VPLS
    • Базовая часть технологии EVPN
    • Лаборатория для тестов и конфигурации
    • Маршруты EVPN
      • Маршрут типа 3 (Inclusive Multicast Ethernet Tag Route)
      • Маршрут типа 2 (MAC/IP Advertisement Route)
        • Изучение MAC-адресов
      • Маршрут типа 1 (Ethernet Auto-Discovery Route)
        • Автоматический поиск multihomed PE и ESI label
        • MAC Mass Withdrawal
        • Aliasing label
      • Маршрут типа 4 (Ethernet Segment Route)
        • Механизм выбора DF
    • L3-функционал в EVPN
      • IRB synchronisation
      • Маршрутизация между bridge-доменами
      • Выход в другие VRF и внешние сети
    • Зачем это всё-таки нужно?
    • Заключение
  • 12.2. EVPN Multihoming
    • Практический пример
    • Проблемы Multihoming-га.
    • Что такое DF и зачем он нужен?
    • Зачем нужен маршрут типа 1 per-ESI?
    • Зачем нам маршрут типа 1, сгенерированный per-EVI?
    • А нужен ли нам MC-LAG в EVPN?
    • Заключение
  • 13. MPLS Traffic Engineering
    • Предпосылки появления MPLS TE
    • Принципы работы MPLS Traffic Engineering
    • Способы направления трафика в TE-туннель
    • Способы управления туннелями
  • 14. Packet Life
    • 0. Коротко о судьбе и пути пакета
    • 1. Уровни и плоскости
      • Forwarding/Data Plane
      • Control Plane
      • Management Plane
      • Краткий итог
    • 2. История способов обработки трафика
      • Что с тобой не так, IP?!
      • О дивный новый мир
    • 3. Типов-чипов
      • CPU — Central Processing Unit
      • RAM — Random Access Memory
      • CAM — Content-Addressable Memory
      • TCAM — Ternary Content-Addressable Memory
      • ASIC — Application Specific Integrated Circuit
      • Programmable ASIC
      • FPGA — Field Programmable Gate Array
      • NP — Network Processor
    • 4. Аппаратная архитектура коммутирующего устройства
      • Общая шина
      • Управляющий модуль
      • Интерфейсный модуль или линейная карта
        • PIC — Physical Interface Card
        • FE — Forwarding Engine
        • QoS или TM — Traffic Management
        • SerDes — Serializer, Deserializer
        • Распределённая плоскость управления (Distributed Control Plane)
      • Фабрика коммутации
    • 5. Путешествие длиною в жизнь
      • Транзитные пакеты
      • Локальные пакеты
    • Заключение
    • Спасибы
  • 15. QoS
    • 0. Чем определяется QoS?
      • Потери
      • Задержки
      • Джиттер
      • Неупорядоченная доставка
      • Полоса пропускания
    • 1. Три модели обеспечения QoS
      • Best Effort (BE)
      • IntServ
      • DiffServ
    • 2. Механизмы DiffServ
    • 3. Классификация и маркировка
      • Behavior Aggregate
      • Interface-based
      • Multi-Field
      • Маркировка внутри устройства
      • Рекомендации IETF (категории трафика, классы сервиса и модели поведения)
      • Короткий итог по классификации
    • 4. Очереди
    • 5. Предотвращение перегрузок
      • Tail Drop и Head Drop
      • RED — Random Early Detection
      • WRED — Weighted Random Early Detection
    • 6. Управление перегрузками
      • FIFO — First In, First Out
      • PQ — Priority Queuing
      • FQ - Fair Queuing
      • RR — Round-Robin
      • Короткий итог про механизмы диспетчеризации
    • 7. Ограничение скорости
      • Traffic Policing
      • Traffic Shaping
      • Шейпинг против полисинга
      • Практика Полисинг и шейпинг
      • Механизмы Leaky Bucket и Token Bucket
        • Алгоритм Leaky bucket
        • Алгоритм Token Bucket
      • Короткий итог по ограничению скорости
    • 8. Аппаратная реализация QoS
    • Полезные ссылки
    • Спасибы
  • Инструкция для контрибьютеров
Powered by GitBook
On this page
  1. 8.1 IBGP

Различия IBGP и EBGP

PreviousIBGPNextПроблема Эн квадрат

Last updated 2 years ago

1) Главная тонкость, которая появляется при переходе внутрь Автономной Системы и откуда растут ноги почти всех отличий — петли. В EBGP мы с ними справлялись с помощью AS-Path. Если в списке уже был номер собственной AS, то такой маршрут отбрасывался. Но, как вы помните, при передаче маршрута внутри Автономной Системы AS-Path не меняется. Вместо этого в IBGP прибегают к хитрости: используется полносвязная топология — все соседи имеют сессии со всеми — Full Mesh. При этом маршрут, полученный от IBGP-соседа не анонсируется другим IBGP-соседям. Это позволяет на всех маршрутизаторах иметь все маршруты и при этом не допустить петель.

Поясним на примерах.

Как это могло бы быть в такой топологии, например, если не использовать технологию избежания петель: R1 получил анонс от EBGP-соседа, передал его R2, тот передал R3, R3 передал R4. Вроде, все молодцы, все знают, где находится сеть Интернет. Но R4 передаёт этот анонс обратно R1. R1 получил маршрут от R4, и он по выгодности точно такой-же, как оригинальный от ISP — AS-Path-то не менялся. Поэтому в качестве приоритетного может выбраться даже новый маршрут от R4, что, естественно, неразумно: мало того, что маршруты будут изучены неверно, так и трафик в итоге может заloopиться и не попадёт к точке назначения.

В случае же полносвязной топологии и правила Split Horizon, такая ситуация исключается. R1, получив анонс от ISP1, передаёт его сразу всем своим соседям: R2, R3, R4. А те в свою очередь эти анонсы сохраняют, но передают только EBGP-партнёрам, но не IBGP, именно потому, что получены от IBGP-партнёра. То есть все BGP-маршрутизаторы имеют актуальную информацию и исключены петли.

Причём, не имеет значение, подключены соседи напрямую или через промежуточные маршрутизаторы. Так, например, на вышеприведённой схеме R1 не имеет связи с R3 напрямую — они общаются через R2, однако это не мешает им установить TCP-сессию и поверх неё BGP.

Понятие Split Horizon тут применяется в более широком смысле. Если в RIP это означало «не отсылать анонсы обратно в тот интерфейс, откуда они пришли», в IBGP это означает «не отсылать анонсы от IBGP-партнёров другим IBGP-партнёрам.»

2) Вторая тонкость — адрес Next Hop. В случае External BGP маршрутизатор при отправке анонса своему EBGP-соседу сначала меняет адрес Next-Hop на свой, а потом уже отсылает. Вполне логичное действие.

Вот как анонс сети 103.0.0.0/22 выглядит при передаче от R5 к R1:

Если же маршрутизатор передаёт анонс IBGP-соседу, то адрес Next-Hop не меняется. Хм. Непонятно. Почему? Это расходится с привычным пониманием DV-протокола маршрутизации.

Вот тот же анонс при передаче от R1 r R2:

Дело в том, что здесь понятие Next-Hop отличается от того, которое используется в IGP. В IBGP он сообщает о точке выхода из локальной AS.

И тут возникает ещё один момент — важно, чтобы у получателя такого анонса был маршрут до Next-Hop — это первое, что проверяется при выборе лучшего маршрута. Если его не будет, то маршрут будет помещён в таблицу BGP, но его не будет в таблице маршрутизации.

Такой процесс называется рекурсивной маршрутизацией.

То есть, чтобы R2 мог отправлять пакеты ISP1 он должен знать, как добраться до адреса 101.0.0.1, который в данной схеме и является Next-Hop'ом для сети 103.0.0.0/22.

В принципе, практически всё оборудование даёт возможность менять адрес Next-Hop на свой при передаче маршрута IBGP-соседу. На циске это делается командой "neighbor XYZ Next-Hop-self". Позже вы увидите, как это применяется на деле.

3) Третий момент: если в EBGP обычно подразумевается прямое подключение двух соседей друг к другу, то в Internal BGP соседи могут быть подключены через несколько промежуточных устройств.

На самом деле в EBGP также можно настраивать соседей, которые находятся за несколько хопов друг от друга и это на самом деле практикуется, например, в случае настройки Inter-AS Option C. Называется это дело MultiHop BGP и включается командой "neighbor XYZ ebgp-multihop" в режиме конфигурации BGP. Но для IBGP это работает по умолчанию.

Это позволяет устанавливать IBGP-партнёрство между Loopback-адресами. Делается это для того, чтобы не привязываться к физическим интерфейсам — в случае падения основного линка, BGP-сессия не прервётся, потому что лупбэк будет доступен через резервный. Это самая распространённая практика.

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

Вам нужно стараться избегать ситуаций, когда между IBGP-соседями будут не-BGP маршрутизаторы.

Пример конфигурации такого соседства:

Вообще-то есть механизм, позволяющий если не исправить, то по крайней мере предупредить такую ситуацию, — IGP Synchronization. Он не позволит добавить маршрут в таблицу, если точно такой же маршрут не известен через IGP. Это в какой-то мере гарантирует, что на промежуточных устройствах, независимо от того, активирован на них BGP или нет, будут нужные маршруты. Но я не знаю тех десперадо, которые решились включить IGP Synchronization. Во-первых, каким образом такие маршруты попадут в IGP? Только редистрибуцией. Теперь представьте себе, как Full View медленно наполняет LSDB OSPF, проникая в отдалённые уголки памяти и заставляя процессор до изнеможения выискивать кратчайшие маршруты. Хотите ли вы ? А, во-вторых, вытекающее из «во-первых», по умолчанию, IGP-synchronization выключен практически на всех современных маршрутизаторах.

этого