Настройка BGP Route Reflector для устранения iBGP Full Mesh топологии
- Необходимость настройки сотен статических сессий iBGP при добавлении каждого нового маршрутизатора (проблема
N*(N-1)/2). - Маршруты iBGP, полученные от одного соседа, не передаются другим iBGP-маршрутизаторам (правило iBGP Split Horizon).
- Появление петель маршрутизации внутри автономной системы при некорректном развертывании кластера RR.
1. Проблема iBGP Split Horizon и решение через Route Reflector
По стандарту RFC 4271 маршрутизатор не имеет права пересылать префикс, полученный по iBGP, другим iBGP-соседям. **Route Reflector (RR)** выступает центральным узлом, которому разрешено ретранслировать полученные iBGP маршруты своим клиентам (**RR-Clients**).
2. Правила ретрансляции префиксов Route Reflector
- Маршрут от **eBGP соседа** -> пересылается ВСЕМ (клиентам и не-клиентам).
- Маршрут от **RR Client** -> пересылается ВСЕМ клиентам и не-клиентам.
- Маршрут от **Non-Client** -> пересылается ТОЛЬКО клиентам.
3. Конфигурация BGP Route Reflector на Cisco IOS-XE
router bgp 65001
bgp router-id 10.255.255.1
bgp cluster-id 1
neighbor IBGP_CLIENTS peer-group
neighbor IBGP_CLIENTS remote-as 65001
neighbor IBGP_CLIENTS update-source Loopback0
neighbor IBGP_CLIENTS route-reflector-client
!
# Добавление клиентов в группу
neighbor 10.255.255.2 peer-group IBGP_CLIENTS
neighbor 10.255.255.3 peer-group IBGP_CLIENTS
neighbor 10.255.255.4 peer-group IBGP_CLIENTS4. Конфигурация клиентского маршрутизатора (RR Client)
Клиент не требует специальных настроек RR — он настраивает стандартное iBGP соседство с сервером Route Reflector:
router bgp 65001
bgp router-id 10.255.255.2
neighbor 10.255.255.1 remote-as 65001
neighbor 10.255.255.1 update-source Loopback05. Защита от петель: Атрибуты Originator ID и Cluster List
show ip bgp 192.168.0.0/24 | include (Originator|Cluster) Частые вопросы (FAQ)
Как Route Reflector защищает iBGP сеть от петель маршрутизации?
С помощью двух обязательных атрибутов: 1) Originator ID (Router ID инициатора префикса — если роутер видит свой ID, маршрут отбрасывается); 2) Cluster List (список идентификаторов кластеров RR, через которые прошел анонс).
Нужно ли настраивать iBGP пиринг между самими клиентами одного RR?
Нет. Клиенты не устанавливают сессии друг с другом, они обмениваются всеми маршрутами исключительно через сервер Route Reflector.
Зачем в сети настраивают два Route Reflector?
Для отказоустойчивости (Redundancy). Оба сервера RR настраиваются с одинаковым Cluster ID (например, bgp cluster-id 1.1.1.1) и каждый клиент устанавливает сессии с обоими серверами.
Изменяет ли Route Reflector атрибут NEXT_HOP при отражении маршрута клиенту?
По умолчанию нет. RR оставляет исходный NEXT_HOP без изменений, поэтому внутри AS должен работать IGP (OSPF/IS-IS), обеспечивающий связность до этого адреса.