Приветствую всех!
Ломал голову над проблемой, но безуспешно. Обращаюсь к community.
Имеем такую конфигурацию: <L3 router> -> cat3560g -> cat3560e -> <прочее L2 оборудование> -> <второй L3 router>
Проблема - странное прохождение броадкастов при двойном тегировании от <L3 router> до cat3560e и далее по цепочке (до <второй L3 router>)
Конфигурация первых двух свичей. На обоих несколько десятков vlan. Все, кроме management, используются для QnQ транзита.
Первый свитч 3560g (c3560-ipbasek9-mz.122-53.SE2.bin)
В порт Gi0/22 включен <L3 router>:
interface GigabitEthernet0/22
description L3
switchport access vlan 47
switchport mode dot1q-tunnel
no cdp enable
spanning-tree bpdufilter enable
Dot1Q трафик влетает в этот порт, тегируется вторым тэгом 47 и далее вылетает через несколько портов, а именно:
Первый порт - сюда включен тазик (linux) и на нем мы слушаем броадкасты (либо настраіваем сюда же mirror session)
interface GigabitEthernet0/17
description monitor
switchport trunk encapsulation dot1q
switchport trunk native vlan 11
switchport trunk allowed vlan 47
switchport mode trunk
switchport nonegotiate
no cdp enable
spanning-tree bpdufilter enable
Второй порт, куда включен cat3560e:
interface Port-channel1
description 3560e
switchport trunk encapsulation dot1q
switchport trunk native vlan 11
switchport trunk allowed vlan 2-4094
switchport mode trunk
switchport nonegotiate
spanning-tree bpdufilter enable
Как вариант - вместо Po1 использовался физический интерфейс Gi. Проблема оставалась.
Конфигурации второго свича - cat3560e (c3560e-universalk9-mz.122-55.SE.bin)
С предыдущего свича трафик приходит на порт Po1:
interface Port-channel1
description 3560g
switchport trunk encapsulation dot1q
switchport trunk native vlan 11
switchport trunk allowed vlan 2-4094
switchport mode trunk
switchport nonegotiate
spanning-tree bpdufilter enable
И уходит в два порта. Первый в сторону backbone (<прочее L2 оборудование>):
interface TenGigabitEthernet0/1
description backbone
switchport trunk encapsulation dot1q
switchport trunk native vlan 11
switchport trunk allowed vlan 2-4094
switchport mode trunk
и второй порт, куда включен еще один тазик для мониторинга:
interface GigabitEthernet0/13
description eth4@linux
switchport trunk encapsulation dot1q
switchport trunk native vlan 11
switchport trunk allowed vlan 2-4094
switchport mode trunk
switchport nonegotiate
spanning-tree bpdufilter enable
Теперь суть проблемы.
На <L3 router> (порт Gi0/22@3560g) терминируем vlan 3003. Второй конец этого vlan терминирован на <второй L3 router>
Пускаем пинг со стороны <L3 router> - видим arp запрос на портах:
Gi0/17@3560g
Gi0/13@3560e
а также запрос приходит на <второй L3 router>, т.е. broadcast вышел через Te0/1@3560e
А теперь интересное. Укладываем порт Gi0/13@3560e.
Чистим arp на <L3 router> и пускаем повторный пинг. Все снова работает. Снова чистим arp, и через 10 секунд после укладывания порта - arp перестает попадать в backbone, хотя на Gi0/17@3560g видны запросы:
19:15:01.969634 00:21:59:24:cd:01 > ff:ff:ff:ff:ff:ff, ethertype 802.1Q (0x8100), length 64: vlan 47, p 0, ethertype 802.1Q, vlan 3003, p 0, ethertype ARP, Ethernet (len 6), IPv4 (len 4), Request who-has 192.168.123.9 tell 192.168.123.11, length 42
Настройка monitor session на 3560g показала, что broadcast'ы вообще перестали уходить в сторону 3560e по всем vlan:
Session 1
---------
Type : Local Session
Source Ports :
TX Only : Po1
Destination Ports : Gi0/17
Encapsulation : Native
Ingress : Disabled
Filter VLANs : 47
хотя при этом unicast продолжает бегать как ни в чем не бывало (если арп'ы на <L3 router> не чистим - пинги ходят аж пока арпы сами не проэкспарятся).
Вопросов два. Почему не ходят броадкасты, и почему укладывание порта на втором свиче как-то влияет на первый?
В дополнение, STP на 3560g отключено:
#show spanning-tree
No spanning tree instance exists.
На 3560e включено mst. Между свичам (как видно из конфигурации портов) блокированы bpdu.