Denis Evgraphov писал(а):
Прошивку нужно использовать ту, что приведена мной выше, так как подобная проблема фиксилась.
вот сегодня с ней и развлекался.
наблюдения:
1. если нужно qinq между длинком и циской или между двумя длинками, но по пути есть циска - нужен outer tpid 0x8100, кошка тупо засовывает фрейм с ethertype 0x88A8 в native vlan на входе в транковый порт, потому что не воспринимает как .1q фрейм.
2. outer tpid на UNI не имеет смыла, достаточно НЕ ставить там 0x8100, потому что такой фрейм даже не долетает до выходного NNI порта почему-то, ну и хрен с ним, на выходе из NNI будет повешен нужный ethertype.
3. translation rule - работают, хехе. по add навешивается второй тег, по replace - заменяется один тег на другой. кстати, на des-3200 мне нем удалось заставить работать правила трансляции, как-то работает только port based qinq, причем там outer tpid ставится глобально на все порты почему-то.
4. загадка - если порт, в который приходит клиентский транк, поставить в NNI - ничего не меняется, что нелогично, так как фрейм с тегом, допустим, 71, должен дропаться, так как на свиче нет вилана 71. происходит вот что - этот фрейм попадает в PVID vlan этого порта, как-то проходит свичфабрику и таки на выходе из NNI, смотрящего на магистраль, на него навешивается второй тег.
5. поскольку внутренняя архитектура длинка, по-видимому, тайна - могу предположить, что при включенном qinq фрейм с C тегом, попадая в UNI порт, помечается какой-то внутренней меткой, так как в отсутствие правил трансляции на ВЫХОДЕ из свича, на порту NNI на него вешается S тег, соответствующий PVID входного, UNI, порта.