Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

...

  1. Конфигурирование R1
    Включим LLDP глобально на маршрутизаторе:

    Блок кода
    esr(config)# lldp enable

    Scroll Pagebreak

    Включим прием и отправку LLDPDU на интерфейсе gi 1/0/1:

    Блок кода
    esr(config)# interface gigabitethernet 1/0/1
    esr(config-if-gi)# lldp receive
    esr(config-if-gi)# lldp transmit


  2. Конфигурирование R2

    Включим LLDP глобально на маршрутизаторе:

    Блок кода
    esr(config)# lldp enable

    Включим прием и отправку LLDPDU на интерфейсе gi 1/0/1:

    Блок кода
    esr(config)# interface gigabitethernet 1/0/1
    esr(config-if-gi)# lldp receive
    esr(config-if-gi)# lldp transmit

    Общую информацию по LLDP соседям можно посмотреть командой:

    Блок кода
    esr# show lldp neighbors

    Подробную информацию по соседу конкретного интерфейса можно посмотреть командой:

    Блок кода
    esr# show lldp neighbors gigabitethernet 1/0/1

    Общую статистику по LLDP можно посмотреть командой:

    Блок кода
    esr# show lldp statistics

Настройка

...

LLDP MED — расширение стандарта LLDP, которое позволяет передавать сетевые политики: VLAN ID, DSCP, priority.

Алгоритм настройки

...

Шаг

...

Описание

...

Команда

...

Ключи

...

1

...

Активировать LLDP на маршрутизаторе.

...

esr(config)# lldp enable

...

2

...

Включить отправку LLDPDU на физическом интерфейсе.

...

esr(config-if-gi)# lldp transmit

...

3

...

Активировать расширение MED LLDP на маршрутизаторе.

...

esr(config)# lldp med fast-start enable

...

4

...

Создать сетевую политику.

...

esr(config)# network-policy <NAME>

...

<NAME> – имя network-policy, задается строкой до 31 символа.

...

5

...

Указать тип приложения.

...

esr(config-net-policy)# application <APP_TYPE>

...

<APP-TYPE> – тип приложения, для которого будет срабатывать network-policy.

Принимает значения:

  • voice;
  • voice-signaling;
  • guest-voice;
  • guest-voice-signaling;
  • softphone-voice;
  • video-conferencing;
  • streaming-video;
  • video-signaling.

...

6

...

Установить значение DSCP (необязательно).

...

esr(config-net-policy)# dscp <DSCP>

...

<DSCP> – значение кода DSCP, принимает значения в диапазоне [0..63].

...

7

...

Установить значение COS (необязательно).

...

esr(config-net-policy)# priority <PRIORITY>

...

<COS> – значение приоритета, принимает значения:

  • best-effort – COS0;
  • background – COS1;
  • excellent-effort – COS2;
  • critical-applications – COS3;
  • video – COS4;
  • voice – COS5;
  • internetwork-control – COS6;
  • network-control – COS7.

...

8

...

Установить значение VLAN ID.

...

esr(config-net-policy)# vlan <VID> [tagged]

...

<VID> – идентификационный номер VLAN, принимает значения [1…4094];

  • tagged – ключ, при установке которого абонентское устройство будет отправлять Ethernet-фреймы указанного приложения в тегированном виде.

...

9

...

Установить сетевую политику на интерфейс.

...

esr(config-if-gi)# lldp network-policy <NAME>

...

<NAME> – имя network-policy, задается строкой до 31 символа.

Пример настройки Voice VLAN

Voice VLAN — VLAN ID, при получении которого IP-телефон переходит в режим trunk с заданным VLAN ID для приема и отправки VoIP-трафика. Передача VLAN ID осуществляется посредством расширения MED протокола LLDP.

Задача:

Необходимо разделить трафик телефонии и данных по разным VLAN, vid 10 для данных и vid 20 для телефонии и настроить отправку Voice VLAN с порта gi 1/0/1 ESR. При этом на IP-телефоне должен поддерживаться и быть включен Voice VLAN.

Image Removed

Решение:

Предварительно необходимо создать VLAN 10 и 20 и настроить интерфейс gi 1/0/1 в режиме trunk:

Блок кода
esr(config)# vlan 10,20
esr(config-vlan)# exit
esr(config)# interface gigabitethernet 1/0/1
esr(config-if-gi)# mode switchport
esr(config-if-gi)# switchport mode trunk
esr(config-if-gi)# switchport trunk allowed vlan add 10,20
esr(config-if-gi)# exit

Включим LLDP и поддержку MED в LLDP глобально на маршрутизаторе:

Блок кода
esr(config)# lldp enable
esr(config)# lldp med fast-start enable

Создадим и настроим сетевую политику таким образом, чтобы для приложения voice указывался VLAN ID 20:

Блок кода
esr(config)# network-policy VOICE_VLAN 
esr(config-net-policy)# application voice
esr(config-net-policy)# vlan 20 tagged 
esr(config-net-policy)# exit

Настроим LLDP на интерфейсе и установим на него сетевую политику:

Блок кода
esr(config)# interface gigabitethernet 1/0/1
esr(config-if-gi)# lldp transmit 
esr(config-if-gi)# lldp receive 
esr(config-if-gi)# lldp network-policy VOICE_VLAN
esr(config-if-gi)# exit

Настройка протоколов семейства STP

Spanning Tree Protocol – сетевой протокол, основной задачей которого является приведение сети Ethernet с избыточными соединениями к древовидной топологии, исключающей петли. Сетевые устройства обмениваются служебными сообщениями, используя кадры специального формата (BPDU), и выборочно включают/отключают интерфейсы во избежание кольцевых топологий.

Rapid (быстрый) STP (RSTP) – является усовершенствованием протокола STP, характеризуется меньшим временем сходимости за счет использования механизма предложений и соглашений (propolsal/agreement proccess) и улучшенной логикой отправки служебных BPDU-сообщений.

Ниже представлена сводная таблица по поддержке протоколов семейства xSTP.

...

Устройство

...

Настройка протоколов STP и RSTP

Для активации протокола  необходимо перевести работу интерфейса в L2-режим (mode switchport). По умолчанию используется протокол RSTP со следующими временными параметрами: Hello Time – 2 c, Forward Delay – 15 с, Max Age – 20 с.

Алгоритм настройки

...

Шаг

...

Описание

...

Команда

...

Ключи

...

1

...

Включить STP в глобальном режиме конфигурации.

...

esr(config)# spanning-tree

...

2

...

Установить интервал времени, затрачиваемый на прослушивание и изучение
состояний перед переключением в состояние передачи (необязательно).

...

esr(config)# spanning-tree forward-time <TIME>

...

<TIME> – время в секундах, принимает значения [4..30].

Значение по умолчанию: 15 секунд.

...

3

...

Установить интервал времени между отправкой BPDU-пакетов (необязательно).

...

esr(config)# spanning-tree hello-time <TIME>

...

<TIME> – время в секундах, принимает значения [1..10].

Значение по умолчанию: 2 секунды.

...

4

...

Установить время, в течение которого будет ожидаться получение BPDU  от ROOT-коммутатора (необязательно).

...

esr(config)# spanning-tree max-age <TIME>

...

<TIME> – время в секундах, принимает значения [6..40].

Значение по умолчанию: 20 секунд.

...

5

...

Выбрать тип протокола: STP или RSTP.

...

esr(config)# spanning-tree mode <MODE>

...

<MODE> – протокол семейства STP:

  • STP – IEEE 802.1D Spanning Tree Protocol;
  • RSTP – IEEE 802.1W Rapid Spanning Tree Protocol;

Значение по умолчанию: RSTP.

...

6

...

Установить метод расчет стоимости пути (необязательно).

...

esr(config)# spanning-tree pathcost method <short | long>

...

long – значение ценности в диапазоне [1..200000000];

short – значение ценности в диапазоне [1..65535].

Значение по умолчанию: short.

...

7

...

Настроить приоритет связующего дерева STP (необязательно).

...

esr(config)# spanning-tree priority <PRIORITY>

...

<PRIORITY> – приоритет, указывается в диапазоне c шагом 4096 [0..61440].

Значение по умолчанию: 32768.

...

9

...

Установить стоимость на определенном интерфейсе (необязательно).

...

esr(config-if-gi)# spanning-tree cost

...

<COST> – стоимость пути, устанавливается в диапазоне [1..20000000].

Значение по умолчанию: 4.

...

10

...

Установить тип интерфейса (необязательно).

...

esr(config-if-gi)# spanning-tree link-type {point-to-point|shared}

...

point-to-point – команда определяет интерфейс как «точка-точка»;

shared – команда определяет интерфейс как «разветвленный».

Значение по умолчанию: point-to-point.

...

11

...

Установить приоритет интерфейса в связующем дереве STP (необязательно).

...

esr(config-if-gi)# spanning-tree port-priority <PRIORITY>

...

<PRIORITY> – приоритет, указывается в диапазоне c шагом 16 [0..240].

Пример настройки

Задача:

Настроить на маршрутизаторе протокол STP для предотвращения петли с интервалом прослушивания и изучения сети 10 секунд и временем жизни связующего дерева 15 секунд.

Image Removed

Решение:

Для примера разберём схему с маршрутизатором и коммутатором, соединенных двумя линками.

По умолчанию на ESR включен протокол RSTP.

Перейдём в режим конфигурирования:

Блок кода
esr-20# configure

Зададим протокол по умолчанию STP:

Блок кода
esr-20(config)# spanning-tree mode stp

Установим время жизни связующего дерева – 15 секунд и интервал прослушивания и изучения сети – 10 секунд:

Блок кода
esr-20(config)# spanning-tree max-age 15
esr-20(config)# spanning-tree forward-time 10

Scroll Pagebreak

Вывод команды show spanning-tree bridge global active:

Блок кода
esr-20# show spanning-tree bridge global active 
Protocol version: STP
          Root ID: [32768] a8:f9:4b:ad:5a:00
                    Root port: [128] gi1/0/1
                    Pathcost 32768
                    Message Age 300
                    Hello time: 2 Max age time: 20 Forward delay: 15
        Bridge ID: [32768] a8:f9:4b:ad:8e:5d
                    Hello time: 2 Max age time: 15 Forward delay: 10
                    Transmit hold count: 6 Topology change: 0
                    Time since topology change: 16 Topology change count: 2
Name           State   Prio.Num   Cost        Status     Role       PortFast   Type                   
------------   -----   --------   ---------   --------   --------   --------   --------------------   
gi1/0/1        en      128.2      32768       FRW        Root       No         STP                    
gi1/0/2        en      128.3      32768       BLK        Altr       No         STP           

Настройка протокола STP и RSTP в рамках bridge

Работа протоколов STP/RSTP также  возможна в рамках выделенного bridge-домена, что дает возможность организовать кольцевую отказоустойчивую топологию в сетях с использование L2-туннелей (сервисы L2TPv3 и Ethernet over GRE),  или в сетях, устройства которых не поддерживают работу протоколов семейства xSTP.

Информация

Для корректной работы устройства должны поддерживать работу протоколов STP/RSTP в bridge-домене.

Алгоритм настройки

...

Шаг

...

Описание

...

Команда

...

Ключи

...

1

...

Перейти в режим конфигурации bridge-домена для настройки протокола STP/RSTP.

...

esr(config)# bridge <BR-NUM>

...

<BR-NUM> – номер bridge.

...

2

...

Установить интервал времени, затрачиваемый на прослушивание и изучение
состояний перед переключением в состояние передачи (необязательно).

...

esr(config-bridge)# spanning-tree forward-time <TIME>

...

<TIME> – время в секундах, принимает значения [4..30].

Значение по умолчанию: 15 секунд.

...

3

...

Установить интервал времени между отправкой BPDU-пакетов (необязательно).

...

esr(config-bridge)# spanning-tree hello-time <TIME>

...

<TIME> – время в секундах, принимает значения [1..10].

Значение по умолчанию: 2 секунды.

...

4

...

Установить время, в течение которого будет ожидаться получение BPDU от ROOT -коммутатора (необязательно).

...

esr(config-bridge)# spanning-tree max-age <TIME>

...

<TIME> – время в секундах, принимает значения [6..40].

Значение по умолчанию: 20 секунд.

...

5

...

Выбрать тип протокола: STP или RSTP.

...

esr(config-bridge)# spanning-tree mode <MODE>

...

<MODE> – протокол семейства STP:

  • STP – IEEE 802.1D Spanning Tree Protocol;
  • RSTP – IEEE 802.1W Rapid Spanning Tree Protocol.

Значение по умолчанию: RSTP.

...

6

...

Установить метод расчета стоимости пути (необязательно).

...

esr(config-bridge)# spanning-tree pathcost method <short | long>

...

long – значение ценности в диапазоне [1..200000000];

short – значение ценности в диапазоне [1..65535].

Значение по умолчанию: short.

...

7

...

Настроить приоритет бриджа – используется при выборе root бриджа в топологии (необязательно).

...

esr(config-bridge)# spanning-tree priority <PRIORITY>

...

<PRIORITY> – приоритет, указывается в диапазоне c шагом 4096 [0..61440].

Значение по умолчанию: 32768.

...

9

...

Установить стоимость на определенном интерфейсе (необязательно).

...

esr(config-if-gi)# spanning-tree cost

...

<COST> – стоимость пути, устанавливается в диапазоне [1..20000000].

Значение по умолчанию: 4.

...

10

...

Установить тип интерфейса (необязательно).

...

esr(config-if-gi)# spanning-tree link-type {point-to-point|shared}

...

point-to-point – команда определяет интерфейс как «точка-точка»;

shared – команда определяет интерфейс как «разветвленный».

Значение по умолчанию: point-to-point.

...

11

...

Установить приоритет интерфейса в связующем дереве STP (необязательно).

...

esr(config-if-gi)# spanning-tree port-priority <PRIORITY>

...

<PRIORITY> – приоритет, указывается в диапазоне c шагом 16 [0..240].

...

Для корректной работы STP/RSTP в рамках bridge-домена интерфейсы необходимо добавить в bridge-домен следующим образом:

Блок кода
interface gigabitethernet 1/0/3
mode switchport
bridge-group 10
exit

Scroll Pagebreak

Пример настройки

Задача:

С помощью протокола RSTP организовать резервирования сервиса L2VPN, построенного с помощью Ethernet over GRE.

Image Removed

Решение:

Настроим адресацию на ESR1 и ESR2:

Блок кода
ESR2(config)# interface gigabitethernet 1/0/1
ESR2(config-if-gi)#   ip firewall disable
ESR2(config-if-gi)#   ip address 198.51.100.2/30
ESR2(config-if-gi)# exit
ESR2(config)# interface gigabitethernet 1/0/2
ESR2(config-if-gi)#   ip firewall disable
ESR2(config-if-gi)#   ip address 198.51.100.6/30
ESR2(config-if-gi)# exit
ESR2(config)# do commit
ESR2(config)# do confirm

ESR1(config)# interface gigabitethernet 1/0/1
ESR1(config-if-gi)#   ip firewall disable
ESR1(config-if-gi)#   ip address 198.51.100.1/30
ESR1(config-if-gi)# exit
ESR1(config)# interface gigabitethernet 1/0/2
ESR1(config-if-gi)#   ip firewall disable
ESR1(config-if-gi)#   ip address 198.51.100.5/30
ESR1(config-if-gi)# exit
ESR1(config)# do commit
ESR1(config)# do confirm

Scroll Pagebreak

Настроим Ethernet over GRE. Определим GRE 1 как основной канал, GRE 2 – резервный:

Блок кода
ESR1(config)# bridge 10
ESR1(config-bridge)#   enable
ESR1(config-bridge)# exit
ESR1(config)# tunnel gre 1
ESR1(config-gre)#   mode ethernet
ESR1(config-gre)#   bridge-group 10
ESR1(config-gre)#   local address 198.51.100.1
ESR1(config-gre)#   remote address 198.51.100.2
ESR1(config-gre)#   spanning-tree cost 10
ESR1(config-gre)#   enable
ESR1(config-gre)# exit
ESR1(config)# tunnel gre 2
ESR1(config-gre)#   mode ethernet
ESR1(config-gre)#   bridge-group 10
ESR1(config-gre)#   local address 198.51.100.5
ESR1(config-gre)#   remote address 198.51.100.6
ESR1(config-gre)#   spanning-tree cost 20
ESR1(config-gre)#   enable
ESR1(config-gre)# exit
ESR1(config-if-gi)# do commit
ESR1(config-if-gi)# do confirm

ESR2(config)# bridge 10
ESR2(config-bridge)#   enable
ESR2(config-bridge)# exit
ESR2(config)# tunnel gre 1
ESR2(config-gre)#   mode ethernet
ESR2(config-gre)#   bridge-group 10
ESR2(config-gre)#   local address 198.51.100.2
ESR2(config-gre)#   remote address 198.51.100.1
ESR2(config-gre)#   spanning-tree cost 10
ESR2(config-gre)#   enable
ESR2(config-gre)# exit
ESR2(config)# tunnel gre 2
ESR2(config-gre)#   mode ethernet
ESR2(config-gre)#   bridge-group 10
ESR2(config-gre)#   local address 198.51.100.6
ESR2(config-gre)#   remote address 198.51.100.5
ESR2(config-gre)#   spanning-tree cost 20
ESR2(config-gre)#   enable
ESR2(config-gre)# exit
ESR2(config-if-gi)# do commit
ESR2(config-if-gi)# do confirm

Scroll Pagebreak

Добавим клиентские интерфейсы в соответствующий bridge-домен:

Блок кода
ESR1(config)# interface gigabitethernet 1/0/3
ESR1(config-if-gi)# mode switchport 
ESR1(config-if-gi)# spanning-tree portfast 
ESR1(config-if-gi)# bridge-group 10
ESR1(config-if-gi)# do commit
ESR1(config-if-gi)# do confirm

ESR2(config)# interface gigabitethernet 1/0/3
ESR2(config-if-gi)# mode switchport 
ESR2(config-if-gi)# spanning-tree portfast 
ESR2(config-if-gi)# bridge-group 10
ESR2(config-if-gi)# do commit
ESR2(config-if-gi)# do confirm

Проверим статус туннелей, чтобы убедиться в сходимости протокола RSTP:

Блок кода
ESR1# sh tu status 
Tunnel             Admin   Link    MTU      Local IP           Remote IP          Last change                 
                   state   state                                                                              
----------------   -----   -----   ------   ----------------   ----------------   -------------------------   
gre 1              Up      Up      1500     198.51.100.1       198.51.100.2       4 hours, 24 minutes and     
                                                                                  58 seconds                  

gre 2              Up      Up      1500     198.51.100.5       198.51.100.6       4 hours, 23 minutes and 6   
                                                                                  seconds                     

ESR1# sh spanning-tree bridge 10 active 
Instance name: bridge 10
    Protocol version: RSTP
    Root ID: [32768] a8:f9:4b:ad:fe:d1
                Root port: [128] gre 1
                Pathcost 10
                Message Age 300
                Hello time: 2 Max age time: 20 Forward delay: 15
    Bridge ID: [32768] e4:5a:d4:01:b7:ec
                Hello time: 2 Max age time: 20 Forward delay: 15
                Transmit hold count: 6 Topology change: 0
                Time since topology change: 1600 Topology change count: 7

Name           State   Prio.Num   Cost        Status     Role       PortFast   Type                   
------------   -----   --------   ---------   --------   --------   --------   --------------------   
gi1/0/3        en      128.5      32768       FRW        Desg       Yes        RSTP                   
gre 1          en      128.3      10          FRW        Root       No         RSTP                   
gre 2          en      128.4      20          BLK        Altr       No         RSTP   

Настройка сервиса завершена.

Scroll Pagebreak

Настройка протокола MSTP

Протокол Multiple STP является современной реализацией RSTP, ключевой особенностью которой является поддержка VLAN. В MSTP каждый порт может работать с разным количеством VLAN, принадлежащих разным экземплярам (STI). Изменение состояния в одном из инстансов не оказывает влияния на состояние других экземпляров, что позволяет продолжать обработку трафика в случае блокировки одного из STI.

Информация

Протокол MSTP поддержан только на ESR-1000.

Алгоритм настройки

...

Шаг

...

Описание

...

Команда

...

Ключи

...

1

...

Выбрать тип протокола MSTP.

...

esr(config)# spanning tree mode <MODE>

...

<MODE> – протокол семейства STP:

  • STP – IEEE 802.1D Spanning Tree Protocol;
  • RSTP – IEEE 802.1W Rapid Spanning Tree Protocol;
  • MST -IEEE 802.1S Multiple Spanning Tree Protocol.

Значение по умолчанию: RSTP.

...

2

...

Установить приоритет для соответствующего инстанса перед остальными, использующими общий экземпляр MST (необязательно).

...

esr(config)# spanning-tree  mst <INSTANCE> priority <PRIORITY>

...

<INSTANCE> – номер экземпляра MSTP [1..15].

<PRIORITY> – приоритет, указывается в диапазоне c шагом 4096 [0..61440].

Значение по умолчанию: 32768.

...

<NUM> – количество транзитных узлов, принимает значения [6..40].

Значение по умолчанию: 6.

...

4

...

Установить принадлежность экземпляра MST к соответствующей группе VLAN (необязательно).

...

esr(config-mst)# instance <INSTANCE> vlan <VLAN>

...

<INSTANCE> – номер экземпляра MSTP [1..15].

<VLAN> – номер VLAN.

...

5

...

Задать имя конфигурации MST (необязательно).

...

esr(config-mst)# name <NAME>

...

<NAME> – имя конфигурации МST [1..31].

...

6

...

Задать номер ревизии конфигурации MST (необязательно).

...

esr(config-bridge)# revision <REVISION>

...

<REVISION> – номер ревизии конфигурации МST [0..65535].

...

7

...

Установить стоимость интерфейса для соответствующего экземпляра MST.

...

esr(config-if-gi)# spanning-tree mst <INSTANCE> cost <COST>

...

<INSTANCE> – номер экземпляра MSTP [1..15].

<COST> – стоимость пути, устанавливается в диапазоне [1..20000000].

Значение по умолчанию: 4.

...

<INSTANCE> – номер экземпляра MSTP [1..15].

<PRIORITY> – приоритет, указывается в диапазоне c шагом 16 [0..240].

Пример настройки

Задача:

Настроить протокол MSTP между устройствами для VLAN 100 и VLAN 200, выделив для этого соответствующие инстансы. 
Image Removed

Решение:

Создадим на устройствах необходимые VLAN. Настроим порт в режиме General, трафик VLAN100, 200 будет отправляться тегированным:

Блок кода
esr(config)# vlan 100
esr(config-vlan)# exit
esr(config)# vlan 200
esr(config-vlan)# exit
esr(config)# interface gigabitethernet 1/0/1
esr(config-if-gi)# mo switchport 
esr(config-if-gi)# switchport general allowed vlan add 100,200


Switch(config)#vlan 100,200
Switch(config-vlan-range)#vlan active 
Switch(config-vlan-range)#exit
Switch(config)#interface gigabitethernet 0/1
Switch(config-if)#switchport general allowed vlan add 100,200

Scroll Pagebreak

Включим протокол MSTP. Настроим инстансы и соответствующие им VLAN.

Блок кода
esr(config)# spanning-tree mst configuration
esr(config-mst)# name mst
esr(config-mst)# revision 1
esr(config-mst)# instance 1 vlan 100
esr(config-mst)# instance 2 vlan 200
esr(config-mst)# exit


Switch(config)#spanning-tree  mode mst 
Switch(config)#spanning-tree  mst configuration 
Switch(config-mst)# name mst
Switch(config-mst)#  revision 1
Switch(config-mst)#  instance 1 vlan 100  
Switch(config-mst)#  instance 2 vlan 200  

Проверим работу протокола MSTP и состояние портов:

Блок кода
esr# sh spanning-tree bridge global 
###### MST instance 1. Vlans mapped: 100
        Regional Root ID: [32768] A8:F9:4B:AA:39:7B
        This switch is the Regional Root
                        Time since topology change: 0 Topology change: 0
                        Topology change count: 32 Max hops: 20
        Designated bridge ID: [32768] A8:F9:4B:AA:39:7B

###### MST instance 2. Vlans mapped: 200
        Regional Root ID: [8192] A8:F9:4B:AA:39:7B
        This switch is the Regional Root
                        Time since topology change: 0 Topology change: 1
                        Topology change count: 34 Max hops: 20
        Designated bridge ID: [8192] A8:F9:4B:AA:39:7B

esr#   sh spanning-tree gigabitethernet 1/0/1

###### MST 1. Mapped Vlans: 100
        Regional Root ID: [16384] A8:F9:4B:AA:39:7B
        This switch is the Regional Root
Name           State   Prio.Num   Cost        Status     Role       PortFast   Type                   
------------   -----   --------   ---------   --------   --------   --------   --------------------   
gi1/0/1        en      128.2305   4           FRW        Desg       No         P2P Inter              

###### MST 2. Mapped Vlans: 200
        Regional Root ID: [8192] A8:F9:4B:AA:39:7B
        This switch is the Regional Root
Name           State   Prio.Num   Cost        Status     Role       PortFast   Type                   
------------   -----   --------   ---------   --------   --------   --------   --------------------   
gi1/0/1        en      128.2305   4           FRW        Desg       No         P2P Inter                  

Настройка протокола MSTP завершена.

Scroll Pagebreak

Настройка BPDU Guard

BPDU Guard — функция, позволяющая блокировать порт при поступлении BPDU. Это предотвращает случайное или злонамеренное создание петель в сети. Рекомендуется включать BPDU Guard на портах, к которым подключены конечные устройства. Функция может быть использована на физических, sub, q-in-q интерфейсах, а также на port-channel.

Примечание

Функция недоступна на устройствах ESR-1000, ESR-1200, ESR-15xx, ESR-1700.

При обнаружении входящего BPDU порт переводится в статус errdisable. В логе появятся соответствующие сообщения:

Блок кода
2025-07-01T10:45:48+00:00 %MSTPD-W-BPDUGUARD: Received BPDU on port gigabitethernet 1/0/3 with BPDU Guard - disabling port
2025-07-01T10:45:48+00:00 %LINK-W-ERRDISABLE: gigabitethernet 1/0/3 changed state to ErrDisable, cause 'bpduguard'

По умолчанию порт не будет пытаться автоматически переходить в состояние "Up". Это можно сделать командой:

Блок кода
esr# set interface active gigabitethernet 1/0/3

Возможна настройка автоматического восстановления. По умолчанию временной интервал составляет 300 секунд (значение меняется от 30 до 86400 секунд):

Блок кода
esr-15r(config)# errdisable recovery cause bpduguard 
esr-15r(config)# errdisable recovery interval 
  30-86400  Specify the timeout interval in seconds

При попытке восстановления порта в логе появится сообщение:

Блок кода
esr# 2025-07-02T03:25:25+00:00 %LINK-W-ERRDISABLE_RECOVERY: Attempting to recover gigabitethernet 1/0/3 from ErrDisable state caused by 'bpduguard'

Алгоритм настройки

...

esr(config-if-gi)# spanning-tree bpduguard

...

esr(config)# errdisable recovery cause bpduguard

...

esr(config)# errdisable recovery interval  <TIME>

...

Пример настройки

Задача:

Включить BPDU Guard на физическом интерфейсе gigabitethernet 1/0/3, к которому подключено конечное устройство. При поступлении BPDU порт должен отключаться на 60 секунд и автоматически восстанавливаться. 

Image Removed

Решение:

Включаем на gigabitethernet 1/0/3 BPDU Guard:

Блок кода
esr(config)# interface gigabitethernet 1/0/3
esr(config-if-gi)# spanning-tree bpduguard 

Включаем автоматическое восстановление интерфейса и задаём временной интервал 60 секунд:

Блок кода
esr(config)# errdisable recovery cause bpduguard 
esr(config)# errdisable recovery interval 60

Проверим настройки восстановления интерфейса:

Блок кода
esr# show errdisable recovery 
Timer interval: 60 seconds
Reason Automatic Recovery 
---------- ------------------- 
bpduguard Enabled 

Scroll Pagebreak

После перехода интерфейса в состояние блокировки, его статус будет отображаться как ErrDisable:

Блок кода
esr# show interfaces status 
Interface              Admin        Link    MTU     MAC address         Last change     Mode           
                       State        State                               (d,h:m:s)                      
--------------------   ----------   -----   -----   -----------------   -------------   ------------   
gi1/0/1                Up           Up      1500    68:13:e2:7e:73:91   00,18:31:16     routerport     
gi1/0/2                Up           Down    1500    68:13:e2:7e:73:92   00,18:31:22     routerport     
gi1/0/3                ErrDisable   Down    1500    68:13:e2:7e:73:93   00,00:00:08     switchport     

Подробную информацию о блокировке интерфейсов можно посмотреть командой:

Блок кода
esr-15r# show interfaces status errdisable 
Interface              Err-Disable Reason    Auto-Recovery Time Left    
                                             (sec)                      
--------------------   -------------------   ------------------------   
gi1/0/3                bpduguard             56      

Настройка Bridge

Bridge (мост) — это способ соединения двух и более сегментов Ethernet на канальном уровне без использования протоколов более высокого уровня, таких как IP. Пакеты передаются на основе Ethernet-адресов, а не IP-адресов. Поскольку передача выполняется на канальном уровне (уровень 2 модели OSI), трафик протоколов более высокого уровня прозрачно проходит через мост.

Алгоритм настройки

ШагОписаниеКомандаКлючи
1Добавить сетевой мост (bridge) в систему и перейти в режим настройки его параметров.

esr(config)# bridge <BRIDGE-ID>

<BRIDGE-ID> – идентификационный номер моста, принимает значения в диапазоне:

  • для ESR-10/12V(F)/
    15/15R/15VF – [1..50];
  • для ESR-20/21/30/31/
    100/200 – [1..250];
  • для ESR-1000/1200/
    1500/1511 (rev.B)/1700/3100/
    3200/3200L/3250/3250/3300/3350/
    3350 – [1..500].

2

Активировать сетевой мост.

esr(config-bridge)# enable


3

Указать экземпляр VRF, в котором будет работать данный интерфейс (необязательно).

esr(config-bridge)# ip vrf forwarding <VRF>

<VRF> – имя VRF, задается строкой до 31 символа.

4

Назначить описание конфигурируемому сетевому мосту (необязательно).

esr(config-bridge)# description <DESCRIPTION>

<DESCRIPTION> – описание сетевого моста, задаётся строкой до 255 символов.

5

Связать саб-интерфейс, qinq-интерфейс, L2GRE-туннель или L2TPv3-туннель с сетевым мостом. Связанные интерфейсы/туннели и сетевые мосты автоматически становятся участниками общего L2-домена (необязательно).

esr(config-if-gi)# bridge-group <BRIDGE-ID>

esr(config-if-l2tpv3)# bridge-group <BRIDGE-ID>

<BRIDGE-ID> – идентификационный номер моста, принимает значения в диапазоне:

  • для ESR-10/12V(F)/
    15/15R/15VF – [1..50];
  • для ESR-20/21/30/
    31/100/200 – [1..250];
  • для ESR-1000/1200/
    1500/1511 (rev.B)/1700/3100/
    3200/3200L/3250/3250/3300/3350/
    3350 – [1..500].

6

Связать текущий сетевой мост с VLAN. Все интерфейсы и L2-туннели, являющиеся членами назначаемого VLAN, автоматически включаются в сетевой мост и становятся участниками общего L2-домена (необязательно).

esr(config-bridge)# vlan <VID>

<VID> – идентификатор VLAN, задаётся в диапазоне [1..4094].

7

Указать размер MTU (Maximum Transmition Unit) пакетов, которые может пропускать данный bridge (необязательно; возможно, если в bridge включен только VLAN).
MTU более 1500 будет активно только в случае применения команды "system jumbo-frames".

esr(config-bridge)# mtu <MTU>

<MTU> – значение MTU, принимает значения в диапазоне:

  • для ESR-10/12V(F)/15/
    15R/15VF – [552..9600];
  • для ESR-20/21/30/
    31 – [552..9500];
  • для ESR-100/200/
    1000/1200/1500/
    1511 (rev.B)/1700/3100/
    3200/3200L/
    3250/3250/3300/3350/
    3350 – [552..10000].

Значение по умолчанию: 1500.

8Указать IPv4/IPv6-адрес и маску подсети для конфигурируемого интерфейса или включить получение IP-адреса динамически.

esr(config-bridge)# ip address <ADDR/LEN> [unit <ID>]

или

esr(config-bridge)# ip address <ADDR/LEN> secondary [unit <ID>]

<ADDR/LEN> – IP-адрес и длина маски подсети, задаётся в виде AAA.BBB.CCC.DDD/EE, где каждая часть AAA – DDD принимает значения [0..255] и EE принимает значения [1..32].

<ID> – номер юнита, принимает значения [1..4].

Ключ secondary указывает, что настроенный адрес является дополнительным IP-адресом. Если это ключевое слово отсутствует, настроенный адрес является основным IP-адресом. Возможно указать до 7 дополнительных IP-адресов.

Дополнительные функции IPv4-адресации см. в разделе Настройка IP-адресации.

esr(config-bridge)# ipv6 address <IPV6-ADDR/LEN> [unit <ID>]

<IPV6-ADDR/LEN> – IP-адрес и префикс подсети, задаётся в виде X:X:X:X::X/EE, где каждая часть X принимает значения в шестнадцатеричном формате [0..FFFF] и EE принимает значения [1..128].

<ID> – номер юнита, принимает значения [1..4].

Дополнительные функции IPv6-адресации см. в разделе Настройка IPv6-адресации.

Можно указать несколько IPv4/IPv6-адресов перечислением через запятую. Может быть назначено до 8 IPv4/IPv6-адресов на интерфейс.

esr(config-bridge)# ip address dhcp

Дополнительные функции при работе DHCP-клиента см. в разделе Управление DHCP-клиентом.

9

Отключить на интерфейсе функции Firewall или включить интерфейс в зону безопасности (см. раздел Конфигурирование Firewall).

esr(config-bridge)# ip firewall disable


esr(config-bridge)# security-zone <NAME>

<NAME> – имя зоны безопасности, задаётся строкой до 31 символа.

10Включить запись статистики использования текущего интерфейса (необязательно).

esr(config-bridge)# history statistics


11

Задать интервал времени, за который усредняется статистика о нагрузке на bridge (необязательно).

esr(config-bridge)# load-average <TIME>

<TIME> – интервал в секундах, принимает значения [5..150].

Значение по умолчанию: 5.

12

Задать MAC-адрес сетевого моста, отличный от системного (необязательно).

esr(config-bridge)# mac-address <ADDR>

<ADDR> – МАС-адрес сетевого моста, задаётся в виде XX:XX:XX:XX:XX:XX, где каждая часть принимает значения [00..FF].

13

Включить на bridge режим изоляции интерфейсов.
В данном режиме обмен трафиком между членами сетевого моста запрещен (необязательно).

Командой protected-ports exclude {<IF> | <TUN> | <VLAN>} исключаются из списка изолируемых сущности, включенные в сетевой мост.

esr(config-bridge)# protected-ports <MODE> 

  • none – изоляция интерфейсов отключена. В данном режиме коммутация кадров между членами сетевого моста разрешена;
  • local – изоляция интерфейсов включена. В данном режиме коммутация кадров между членами сетевого моста запрещена;
  • radius – изоляция интерфейсов включена. Для использования данного режима требуется настройка Wi-Fi контроллера туннелей в режиме "radius". В данном режиме коммутация кадров между членами сетевого моста запрещена, за исключением SoftGRE DATA туннелей. Для SoftGRE DATA-туннелей параметры изоляции запрашиваются у RADIUS-сервера.
esr(config-bridge)# protected-ports exclude {<IF> | <TUN> | <VLAN>}

<IF> – интерфейс, задается в виде, описанном в разделе Типы и порядок именования интерфейсов маршрутизатора.

<TUN> – имя туннеля, задается в виде, описанном в разделе Типы и порядок именования туннелей маршрутизатора.

<VLAN> – vlan, связанный с сетевым мостом.

14

Запретить коммутацию трафика unknown-unicast (когда MAC-адрес назначения не содержится в таблице коммутации) в данном bridge (необязательно; применимо только на ESR-1000/1200/1500/1511/1700/
3100/3200/3200L/3250/3250/3300/3350/3350).

esr(config-bridge)# unknown-unicast-forwarding disable


15

Установить время жизни IPv4/IPv6-записей в ARP-таблице, изученных на данном bridge (необязательно).

esr(config-bridge)# ip arp reachable-time <TIME>

или

esr(config-bridge)# ipv6 nd reachable-time <TIME>

<TIME> – время жизни динамических MAC-адресов, в миллисекундах. Допустимые значения от 5000 до 100000000 миллисекунд. Реальное время обновления записи варьируется от [0,5;1,5]*<TIME>.

Также для bridge-интерфейса возможно настроить:

...

LACP — протокол для агрегирования каналов, позволяет объединить несколько физических каналов в один логический. Такое объединение позволяет увеличивать пропускную способность и надежность канала.

Алгоритм настройки

ШагОписаниеКомандаКлючи
1Установить приоритет системы для протокола LACP.

esr(config)# lacp system-priority <PRIORITY>

<PRIORITY> – приоритет, указывается в диапазоне [1..65535].

Значение по умолчанию: 1.

2

Установить механизм балансировки нагрузки для групп агрегации каналов.

esr(config)# port-channel load-balance { src-dst-mac-ip |
src-dst-mac | src-dst-ip | src-dst-mac-ip-port }

  • src - dst - mac - ip – механизм балансировки основывается на MAC-адресе и IP-адресе отправителя и получателя;
  • src - dst - mac – механизм балансировки основывается на MAC-адресе отправителя и получателя;
  • src - dst - ip – механизм балансировки основывается на IP-адресе отправителя и получателя;
  • src - dst - mac - ip - port – механизм балансировки основывается на MAC-адресе, IP-адресе и порте отправителя и получателя.

3

Установить административный таймаут протокола LACP.

esr(config)# lacp timeout {short | long }

  • long – длительное время таймаута;
  • short – короткое время таймаута.

Значение по умолчанию: long.

4



Создать и перейти в режим конфигурирования агрегированного интерфейса.



esr(config)# interface port-channel { <ID> | <UNIT>/<ID> }

<UNIT> – номер устройства в группе устройств [1..4].

<CH> – порядковый номер группы агрегации каналов, принимает значения [1..12].

esr(config)# interface port-channel { <ID> | <UNIT>/<ID> }.<S-VLAN>

<UNIT> – номер устройства в группе устройств [1..4].

<CH> – порядковый номер группы агрегации каналов, принимает значения [1..12].

<S-VLAN> – идентификатор создаваемого S-VLAN.

esr(config)# interface port-channel { <ID> | <UNIT>/<ID> }.<S-VLAN>.<C-VLAN>
<C-VLAN> – идентификатор создаваемого C-VLAN.

5

Настроить необходимые параметры агрегированного канала.

esr(config-if-port-channel)# mode switchport

Установить интерфейс в режим L2

esr(config-if-port-channel)# mode routerport
Установить интерфейс в режим L3
6Задать скорость (необязательно).esr(config-if-port-channel)# speed <SPEED>

<SPEED> – значение скорости:

  • 10M – значение скорости 10 Мбит/с;
  • 100M – значение скорости 100 Мбит/с;
  • 1000M – значение скорости 1000 Мбит/с;
  • 10G – значение скорости 10 Гбит/с;
  • 25G – значение скорости 25 Гбит/с;
  • 40G – значение скорости 40 Гбит/с;
  • 100G – значение скорости 100 Гбит/с;

Параметр наследуют все физические интерфейсы, принадлежащие данной группе агрегации каналов.

Значение по умолчанию: 1000M

7Изменить размер MTU (MaximumTransmitionUnit). MTU более 1500 будет активно, только если применена команда system jumbo-frames (необязательно).esr(config-if-port-channel)# mtu <MTU>

<MTU> – значение MTU в байтах.

Параметр наследуют все физические интерфейсы, принадлежащие данной группе агрегации каналов.

Значение по умолчанию: 1500.

8

Перейти в режим конфигурирования физического интерфейса.

esr(config)# interface <IF-TYPE><IF-NUM>

<IF-TYPE> – тип интерфейса (gigabitethernet или tengigabitethernet).

<IF-NUM> – U/S/P – U-юнит (1), S – слот (0), P – порт.

9

Включить физический интерфейс в группу агрегации каналов с указанием режима формирования группы агрегации каналов.

esr(config-if-gi)# channel-group <ID> mode <MODE>

<ID> – порядковый номер группы агрегации каналов, принимает значения [1..12].

<MODE> – режим формирование группы агрегации каналов:

  • auto – добавить интерфейс в динамическую группу агрегации с поддержкой протокола LACP;
  • on – добавить интерфейс в статическую группу агрегации.
10

Установить LACP-приоритет интерфейса Ethernet.

esr(config-if-gi)# lacp port-priority <PRIORITY>

<PRIORITY> – приоритет, указывается в диапазоне [1..65535].

Значение по умолчанию: 1.

11

Установить интервал времени, в течение которого собирается статистика о нагрузке на интерфейс (необязательно).

esr(config-if-gi)# load-average <TIME>

<TIME> – интервал в секундах, принимает значения [5..150].

12Включить запись статистики использования текущего интерфейса (необязательно).

esr(config-if-gi)# history statistics


Также для агрегированного интерфейса возможно настроить:

Пример настройки

Задача:

Настроить агрегированный канал между маршрутизатором ESR и коммутатором с помощью tengigabitethernet-интерфейсов со значением MTU 9000 в режиме Trunk для передачи всех VLAN, созданных на маршрутизаторе.


Решение:

Предварительная конфигурация:

...