Настройка Q-in-Q

Схема сети
triangle-exclamation

1. Настройка Bridge-Domains (MX) и VLANs (QFX)

1.1. Bridge-Domains (MX)

Чтобы настроить вланы на MX нам нужно сбриджевать интерфейсы. Иными словами объединить юниты в один Bridge-Domain. Так будут выглядеть домены на PE-1:

Если на PE-устройствах мы настраивали S-TAG, то на клиентских добавляем туда C-TAG's:

Таким образом настраиваем все MX. На ISP2 не забываем сменить S-TAG на 410 и 810 соответственно.

1.2. VLANS (QFX)

Просто указываем VLAN's на QFX. CE:

2. Настройка CE-устройств

2.1. Настройка MX

Тут всё довольно просто. Всё настраивается под Family Bridge:

Аналогично настраиваем порты и на других MX. Теперь видно какому Bridge-Domain какие интерфейсы принадлежат:

2.2. Настройка QFX

Тут всё тоже довольно просто. Можно настроить порты под Family Ethernet-Switching. Конфигурация другая, но схожа с MX:

Пропингуем c 210-2 210-1 и посмотрим таблицу MAC-адресов.

Всё ОК:

3. Настройка PEB-устройств

Тут всё настраивается аналогично CE-устройствам:

4. Настройка CORE-устройств

"flexible-vlan-tagging" - позволяет на данном интерфейсе работать как с 802.1Q, так и с 802.1AD трафиком, так и не тегированным трафиком, вообще.

"encapsulation flexible-ethernet-services" - позволяет на разных unit'ах использовать различные family и различные типы ethernet-инкапсуляций.

5. Настройка VLAN-Translation

Позволяет сменить Outter-Tag на другую метку, чтобы клиент мог, например, подключиться через разных ISP:

Т.е. тут мы указываем на интерфейсе наш список VLAN'ов, затем указываем, что входящие фреймы с метками 410 и 810 мы принимаем и переписываем метки на свои: 400 и 800 соответственно. Аналогично делать на ISP2-CORE не нужно, так как на ISP1-CORE мы уже настроили смену метки. Если настроить зеркальную подмену метки, то трафик не пойдёт, так как от ISP1-CORE будет ожидаться метка 400, но приходить будет уже 410 и наоборот.

Теперь трафик проходит:

Также можно вручную сбриджевать интерфейсы, только тут логика будет немного отличаться, но об этом далее:

Тут, если посмотреть на конфигурацию интерфейса ge-0/0/0, видно, что мы настраиваем и принимаем VLAN стороннего провайдера. И уже только потом меняем его на свой. Именно поэтому в unit 400 прописан vlan-id 410, после чего при помощи input-vlan-map мы поменяли его на 400 и пустили трафик в нашу сеть. Результат:

6. Приём определённых C-TAGs (MX)

Как видно на топологии, на PE4 yет смысла принимать 210 C-TAG, учить лишние маки и забивать сеть лишним трафиком. Как это выглядит сейчас:

Соответственно нам нужно исправить это.

Тут мы вручную настроили то, что мы принимаем VLAN 200 с клиентского порта и запаковываем его в 800 влан перед отправкой к ядру сети. По-другому сделать нельзя. При этом можно от разных клиентов принимать одинаковые VLANы, но они будут смешиваться из-за того, что мы вручную внесём разные юниты в разные Bridge-Domains.

7. Приём одного и того же C-TAG от разных клиентов

7.1 MX

Схема тут такая же.

Вот настройка для ISP (Идентична для обоих MX, разница только в Host-Name). Настройка на CE была разобрана в предыдущих пунктах.

Теперь смотрим как проходит трафик:

Тут наглядно видно, что трафик ходит куда надо и не приходит к другому клиенту.

Для справки, вот так выглядить трафик с двойным тэгом:

7.2 QFX

На QFX всё делается аналогично, только настройки вносятся не Bridge-Domain, а в секцию настроек VLAN.

Настройка CE расматривалась уже ранее. Вот так выглядит настройка со стороны ISP:

8. Приём определённых C-TAG и запаковка их в S-TAG одним действием

Можно также принять от клиента определённый C-TAG и упаковать его в S-TAG.

Схема сети

Тут всё описано на картинке. S-TAG будет 100. Принимаем от клиента только 10 VLAN.

Тут видно, что от клиента мы приняли на порту ge-0/0/0 VLAN 10 и тут же упаковали его в 100 VLAN, после чего передали дальше по сети.

На ISP2, как пример, указана другая конфигурация с запаковкой при отправке:

Тут мы принимаем от клиента 10 VLAN и запаковывем его в 100 при отправке. Хотя, применимо скорее больше в том случае, если от аплинка Q-in-Q распаковывем к себе в сеть. Если использовать для приёма клиентских тэгов, то придётся создавать Virtual-Switch, чтобы VLANы не пересекались.

Last updated

Was this helpful?