VPLS режим Kompella

Для реализации VPLS Kompella необходима комплексная подготовка сетевой инфраструктуры. Основой служит полнофункциональная MPLS-сеть, включающая протокол IGP (OSPF или ISIS) для обеспечения IP-связности loopback-интерфейсов всех PE-маршрутизаторов, а также LDP в качестве транспортного протокола.

Необходима настройка Multiprotocol BGP (MP-BGP) между всеми PE-устройствами. Для этого активируется адресное семейство L2VPN, которое отвечает за обмен управляющими данными о VPLS в формате NLRI. На практике для упрощения управления и масштабирования часто используются Route Reflector’ы, концентрирующие обновления BGP. Протокол должен поддерживать расширенные сообщества BGP, так как именно они несут атрибуты, управляющие логикой VPLS.

Непосредственная конфигурация сервиса на каждом PE-маршрутизаторе включает определение нескольких обязательных параметров. Глобальную идентификацию сервиса VPLS обеспечивает VPN ID. Членство в сервисе определяет атрибут Route Target, обычно имеющий одно значение для импорта и экспорта. Уникальность каждого объявления в общей BGP-таблице гарантирует Route Distinguisher. Каждому маршрутизатору в рамках домена назначается уникальный Ve ID, выполняющий роль порядкового номера сайта, а параметр Label Range резервирует блок меток MPLS, достаточный для подключения всех участников.

Клиентский трафик подключается к виртуальному коммутатору VPLS через физические или логические интерфейсы, такие как Ethernet-порты или VLAN-интерфейсы, которые привязываются к соответствующему экземпляру VPLS. Особое внимание следует уделить планированию нумерации: Ve ID должны быть не только уникальными, но и образовывать непрерывную последовательность, начиная с минимальных значений, чтобы избежать неэффективного расхода пространства меток. Размер Label Range должен закладываться с запасом для будущего расширения сервиса.

Режим Kompella обеспечивает механизм автообнаружения (Autodiscovery) участников VPLS-домена благодаря автоматическому построению полносвязной сети псевдопроводов под управлением BGP.

Пример настройки VPLS Kompella

Постройте схему в соответствии с рисунком ниже:

Рисунок

Настройте R1, как показано ниже.

enable
configure
hostname R1
 
router ldp
 transport-address ipv4 1.1.1.1
 
router ospf 1
 network 1.1.1.1 0.0.0.0 area 0
 network 10.0.12.1 0.0.0.0 area 0
 
router bgp 2000
 neighbor 3.3.3.3 remote-as 2000
 neighbor 3.3.3.3 update-source 1.1.1.1
 neighbor 4.4.4.4 remote-as 2000
 neighbor 4.4.4.4 update-source 1.1.1.1
 address-family l2vpn vpls
  neighbor 3.3.3.3 activate
  neighbor 4.4.4.4 activate
  exit-address-family
 
port ge1
 service-instance 4ge1
  encapsulation untagged
  
port ge3
 service-instance 4ge3
  encapsulation untagged
  
port ge4
 mtu 9728
 service-instance 4ge4
  encapsulation dot1q 120
  rewrite translate 1-to-1 1000
 
interface loopback.0
 ip mtu 1500
 ip address 1.1.1.1/32
 
interface 2ge1
 ip mtu 1500
 label-switching
 connect port ge1 service-instance 4ge1
 ip address 10.0.12.1/24
 ldp enable ipv4
 
vpls-instance INST 2
 member port ge3 service-instance 4ge3
 signaling bgp
  ve-id 2001
  ve-range 16
  route-target 2000:2
  rd 2000:1
  exit-signaling
 
vpls-instance INST2 3
 vpls-type tagged svlan 1000 tpid 8100
 member port ge4 service-instance 4ge4
 signaling bgp
  ve-id 2001
  ve-range 8
  route-target 2000:3
  rd 2000:11
  exit-signaling

vpls-instance INST 2 — на сервисах VPLS R1–R4 и R1–R3 использованы одинаковые имена и идентификаторы VPLS. Это допустимо и является стандартной практикой, так как имя и идентификатор должны быть уникальными только в пределах одного маршрутизатора.

member port ge3 service-instance 4ge3 — подключает AC (Access circuit)-порт к экземпляру VPLS.

ve-id 2001 — идентификатор VE (VPLS Edge) должен быть уникален для каждого маршрутизатора в пределах сервиса VPLS. Для оптимального использования пространства меток рекомендуется назначать ve-id в виде непрерывной последовательности, начиная с минимальных значений (например, 1, 2, 3…). Это позволяет минимизировать размер резервируемого блока меток (Label Range) и избежать их неэффективного расхода.

ve-range 16 —  определяет размер резервируемого блока меток MPLS для распределённого сервиса VPLS. Значение должно быть не меньше максимального количества PE-маршрутизаторов (с учётом будущего расширения), которые будут участвовать в данном сервисе. Минимальное значение — 8.

route-target 2000:2 — определяет членство в распределённом сервисе VPLS, указывая какие локальные экземпляры VPLS на разных маршрутизаторах принадлежат одному и тому же сервису. Использование одинакового значения route-target для всех участников в пределах одного сервиса VPLS обеспечивает их корректное соединение друг с другом и изоляцию от других сервисов.

rd 2000:4 — позволяет различать информацию о экземплярах VPLS разных VPLS-сервисов в общей BGP таблице. Route Distinguisher делает каждый BGP-маршрут уникальным, предотвращая коллизии между одинаковыми адресами из разных распределённых сервисов VPLS. Рекомендуется использовать уникальный RD для каждого локального экземпляра VPLS на маршрутизаторе.

Аналогично R1 настройте R2, R3 и R4.

Задайте наименования устройств.

В настройках протокола LDP в качестве транспортного адреса должен быть указан интерфейс loopback.0 данного маршрутизатора. Целевых соседей targeted-peer в режиме Kompella указывать не нужно.

В настройках router ospf 1 на каждом маршрутизаторе должны быть указаны адреса интерфейсов, связывающих маршрутизаторы, а также адрес loopback.0. Остальные параметры команды network 1.1.1.1 0.0.0.0 area 0 идентичны для каждого маршрутизатора.

На маршрутизаторах R2 и R3 должна быть настроена маршрутизация BGP. Все маршрутизаторы должны принадлежать одной автономной системе AS 2000. В команде neighbor A.B.C.D remote-as 2000 в качестве A.B.C.D необходимо указать loopback-адрес BGP-соседа. Для R2 и R3 BGP-соседом будет R1 с адресом 1.1.1.1. В команде neighbor 1.1.1.1 update-source A.B.C.D необходимо также указать BGP-соседа и адрес настраиваемого маршрутизатора в качестве источника A.B.C.D. Каждое соседство должно быть активировано командой neighbor A.B.C.D activate. На экземпляре маршрутизатора BGP должно быть включено адресное семейство L2VPN address-family l2vpn vpls.

На маршрутизаторах R2, R3 и R4 командой label-switching необходимо активировать MPLS на всех интерфейсах, связывающих маршрутизаторы. Одновременно на этих же интерфейсах, а также на интерфейсах loopback всех маршрутизаторов, необходимо командой ldp enable ipv4 задействовать протокол LDP.

Настройте адреса loopback.0 в соответствии с рисунком.

Сервисный интерфейс 4ge3 на R4 настройте как нетегированный.

На сервисном интерфейсе 4ge4 R3 настройте инкапсуляцию идентичную 4ge4 на R3.

Настройте на R4 экземпляр VPLS следующим образом:

vpls-instance INST 2
 member port ge3 service-instance 4ge3
 signaling bgp
  ve-id 2002
  ve-range 16
  route-target 2000:2
  rd 2000:4
  exit-signaling

Настройте на R3 экземпляр VPLS следующим образом:

vpls-instance INST2 3
 vpls-type tagged svlan 1000 tpid 8100
 member port ge4 service-instance 4ge4
 signaling bgp
  ve-id 2002
  ve-range 8
  route-target 2000:3
  rd 2000:13
  exit-signaling

Экземпляр VPLS и маршрутизацию BGP на R2 настраивать не нужно, поскольку он не являtтся граничными PE (Provider Edge) маршрутизаторами сети MPLS.

Настройте адрес и шлюз по умолчанию на PC1, PC2, PC3 и PC4:”

  • PC1 и PC3 : 192.168.0.1 255.255.255.0 gateway 192.168.0.2
  • PC2 и PC4 : 192.168.0.2 255.255.255.0 gateway 192.168.0.1

Данные настройки обеспечивают создание двух изолированных виртуальных частных LAN-сервисов поверх MPLS-инфраструктуры.

После применения конфигураций необходимо убедиться в установлении соседских отношений по OSPF и LDP между всеми узлами. Для активации изменений может потребоваться перезапустить протокол управления LDP с помощью команды clear bgp * или перезапустить конкретные интерфейсы с помощью последовательного ввода команд shutdown и no shutdown.

Для проверки VPLS соединений выполните команду ping 192.168.0.2 на PC1 и PC3.

При необходимости отладки воспользуйтесь командами:

  • show ldp session — покажет LDP соседства;
  • show bgp summary — покажет BGP соседства;
  • show bgp l2vpn — покажет запущенные локальные экземпляры VPLS;
  • show vpls-instance detail — покажет подробные данные по экземплярам VPLS.