Тут всё аналогично. Можно сразу приступать к настройке. Отличие будет только в том, что для каждого VLAN'а мы будем отдельно указывать Bridge-Priority.
Все настройки интерфейсов остаются такие же, как и в RSTP. Что тут нового? Ну первое, что мы видим, это настройка Bridge-Priority для каждого VLAN, для которого нужно. Также видно, что для всех вланов мы включили все интерфейсы, а xe-0/0/2 указали как Edge (Аналог PortFast в Cisco) и включили bpdu-block-on-edge (BPDU-Guard в Cisco). Также стоит заметить, что более точный конфиг переписывает менее точный. Например, для VLAN 100 и 200 Bridge-Priority меняется, а для остальных вланов остаётся стандартным.
Проверим как там обстоят дела с корневыми коммутаторами:
root@Earth# run show spanning-tree bridge detail vlan-id 100
STP bridge parameters
Routing instance name : GLOBAL
Enabled protocol : RSTP
STP bridge parameters for VLAN 100
Root ID : 100.02:05:86:71:d7:02
Hello time : 2 seconds
Maximum age : 20 seconds
Forward delay : 15 seconds
Message age : 0
Number of topology changes : 2
Time since last topology change : 692 seconds
Local parameters
Bridge ID : 100.02:05:86:71:d7:02
Extended system ID : 100
Hello time : 2 seconds
Maximum age : 20 seconds
Forward delay : 15 seconds
Path cost method : 32 bit
{master:0}[edit]
root@Earth# run show spanning-tree bridge detail vlan-id 200
STP bridge parameters
Routing instance name : GLOBAL
Enabled protocol : RSTP
STP bridge parameters for VLAN 200
Root ID : 200.02:05:86:71:d7:02
Hello time : 2 seconds
Maximum age : 20 seconds
Forward delay : 15 seconds
Message age : 0
Number of topology changes : 3
Time since last topology change : 692 seconds
Local parameters
Bridge ID : 200.02:05:86:71:d7:02
Extended system ID : 200
Hello time : 2 seconds
Maximum age : 20 seconds
Forward delay : 15 seconds
Path cost method : 32 bit
Сравниваем Bridge ID и Root-ID, видим, что для 100 и 200 VLAN он одинаковый, значит настройки верны. Может остаться вопрос: "Почему мы настраивали Bridge-Priority 0, а видим, что он равен 100 и 200 для соответствующих вланов?" Тут всё верно, VSTP добавляет к приоритету номер VLANа.
Теперь посмотрим порты:
root@Earth# run show spanning-tree interface xe-0/0/2 detail
Spanning tree interface parameters for VLAN 100
Interface name : xe-0/0/2
Port identifier : 128.490
Designated port ID : 128.490
Port cost : 2000
Port state : Forwarding
Designated bridge ID : 100.02:05:86:71:d7:02
Port role : Designated
Link type : Pt-Pt/EDGE
Boundary port : NA
Тут тоже всё в порядке. Не смотря на то, что интерфейс включен для всех вланов. Так происходит из-за того, что на самом интерфейсе накинут только 100 VLAN.
Пинги:
root@Moon:~# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: ens3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 00:50:00:00:09:00 brd ff:ff:ff:ff:ff:ff
inet 7.7.7.7/24 brd 7.7.7.255 scope global ens3
valid_lft forever preferred_lft forever
inet6 fe80::250:ff:fe00:900/64 scope link
valid_lft forever preferred_lft forever
root@Moon:~# ping 7.7.7.8 -c 5
PING 7.7.7.8 (7.7.7.8) 56(84) bytes of data.
64 bytes from 7.7.7.8: icmp_seq=1 ttl=64 time=608 ms
64 bytes from 7.7.7.8: icmp_seq=2 ttl=64 time=117 ms
64 bytes from 7.7.7.8: icmp_seq=3 ttl=64 time=225 ms
64 bytes from 7.7.7.8: icmp_seq=4 ttl=64 time=104 ms
64 bytes from 7.7.7.8: icmp_seq=5 ttl=64 time=211 ms
--- 7.7.7.8 ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4002ms
rtt min/avg/max/mdev = 104.146/253.347/608.262/184.011 ms
Основаная проблема VSTP состоит в том, что мы указываем каждый VLAN отдельно и под каждый VLAN нужно запускать отдельный RSTP-процесс. Если VLANов много, то начинаются проблемы. Всё это может помочь решить MSTP.