Juniper EX4500 и Selective QinQ
Всем доброго времени суток.
Столкнулся с проблемой работы Selective QinQ на Juniper EX4500. QinQ-tunneling работает, и даже Selective частично отрабатывает.
Задача состоит в том чтобы Juniper из QinQ влана на физический интерфейс выдавал только 1 или n-е число вланов после снятия метки, а сейчас он выдает все вланы, которые были вложены в QinQ влан, но обратно принимает лишь те, которые укажешь
Привожу часть конфигурации для ясности
version 15.1R7.9;
interfaces {
ge-0/0/0 {
mtu 1600;
unit 0 {
family ethernet-switching {
port-mode trunk;
vlan {
members [ 68 2500 3300 ];
}
}
}
}
ge-0/0/1 {
unit 0 {
family ethernet-switching;
}
}
vlans {
MNG-68 {
vlan-id 68;
filter {
input CoS-7;
}
l3-interface vlan.68;
}
ZR3300 {
vlan-id 3300;
interface {
ge-0/0/1.0 {
mapping {
3300 {
swap;
}
}
}
}
filter {
input CoS-6;
}
}
qinq-2500 {
description QinQ-ZR2500;
vlan-id 2500;
interface {
ge-0/0/1.0 {
mapping {
11 {
push;
}
}
}
ge-0/0/0.0;
}
filter {
input CoS-0;
}
dot1q-tunneling {
customer-vlans 11;
}
}
}
Прошу не обращать внимание на использование «push» и «customers-vlans» вместе. Конфиг с тестовой машины. Но если кто-то пояснит за функционал «push» буду признателен.
И после кусочка конфига опишу суть беды. На нижестоящую циску должен подаваться тег влан 11, посредством интерфейса ge-0/0/1, который на обратном пути будет заворачиваться в QinQ, и влан управления 3300. Проблема лишь в том, что с QinQ влана летит все сразу, а вот функция push насколько я понял, позволяет с этого интерфейса принять только вланы указанные в mapping
Но, в целях безопасности необходимо, чтобы на физический интерфейс кроме указанного влана 11 ничего не улетало(или другие вланы улетали при необходимости)
Выясняется это тем, что на нижестоящей Cisco создается влан 12 и можно увидеть маки, которые летят с аплинка. А вот если к циске подключить ПК, то Джун уже мак ПК не увидит, т.к. на входе ge-0/0/1 12 влан просто выкинет.
Может найдется гуру, способный показать кусочек конфига для фикса данной проблемы.
PS Прикреплять данную функцию посредством ACL конечно можно, но буду признателен если найдется решение без использования ACL