3.9. Настройка VLAN Mapping

Назначение

VLAN Mapping предназначен для преобразования идентификаторов VLAN (VID). Это может быть необходимо для предотвращения их совпадения с VID других сетей при прохождении трафика через общие узлы.

После преобразования идентификация трафика из разных VLAN с идентичными VID будет различаться.

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

Описание

Функция “VLAN Mapping” увеличивает возможное количество VLAN за счет использования иерархии “VLAN-in-VLAN” - повторного тегирования поверх тегов VLAN, записанных ранее. Таким образом, количество передаваемых через коммутатор VLAN может достигать 4096 × 4096. При использовании функции “VLAN Mapping” VLAN-тег первичной VLAN инкапсулируется в тег общедоступной VLAN, и пакеты с двумя тегами будут передаваться по магистральной сети. Инкапсулированный VLAN-тег будет скрыт, для передачи будет использоваться только тег общедоступной VLAN. Благодаря разделению потока данных, VLAN-тег первичной сети передается прозрачно, и различные теги VLAN могут быть использованы повторно.

В коммутаторе реализовано два вида VLAN Mapping:

  • Транслирование VLAN.

  • Туннелирование VLAN в соответствии с IEEE 802.1Q (QinQ).

При транслировании осуществляется передача трафика между VLAN с разными VID, как показано на рисунке ниже.

image

Рис. 3.12 Транслирование VLAN

При туннелировании осуществляется передача трафика между VLAN с идентичными VID, как показано на рисунке ниже.

image

Рис. 3.13 Туннелирование VLAN (QinQ), пример топологии

image

Рис. 3.14 Туннелирование VLAN (QinQ), дополнительные заголовки VLAN

Поддерживается два типа туннелирования: базовое и выборочное.

Базовое основано на тегировании портов, все данные будут инкапсулированы в общий VLAN-тег используемого порта, вследствие чего этот режим трансляции имеет большие ограничения в практическом применении.

При использовании выборочного туннелирования доступно разделение потоков данных и инкапсуляция различных VLAN-тегов.

Примеры выборочного туннелирования представлены ниже.

image

Рис. 3.15 Выборочное туннелирование VLAN с созданием одного тега для исходящих нетегированных пакетов

image

Рис. 3.16 Выборочное туннелирование VLAN с созданием двух тегов для исходящих нетегированных пакетов

Настройка

Настройка транслирования VLAN

Шаг 1: Вход в режим “Global config”

Switch# configure terminal

Шаг 2: Вход в режим конфигурации VLAN и создание VLAN

Switch(config)# vlan database
Switch(config-vlan)# vlan 2,3
Switch(config-vlan)# exit

Шаг 3: Создание EVC и установка сопоставляемой VLAN

Switch(config)# ethernet evc evc_c1
Switch(config-evc)# dot1q mapped-vlan 2
Switch(config)# ethernet evc evc_c2
Switch(config-evc)# dot1q mapped-vlan 3

Шаг 4: Создание таблицы сопоставления VLAN и привязка VLAN к нужным EVC

Switch(config)# vlan mapping table vm
Switch(config-vlan-mapping)# raw-vlan 10 evc evc_c1
Switch(config-vlan-mapping)# raw-vlan 20 evc evc_c2
Switch(config-vlan-mapping)# exit

Шаг 5: Включение преобразования VLAN на интерфейсе и применение таблицы сопоставления VLAN

Switch(config)# interface eth-0-1
Switch(config-if)# switchport mode trunk
Switch(config-if)# switchport trunk vlan-translation
Switch(config-if)# switchport trunk vlan-translation mapping table vm
Switch(config-if)# switchport trunk allowed vlan add 2,3
Switch(config-if)# interface eth-0-2
Switch(config-if)# switchport mode trunk
Switch(config-if)# switchport trunk allowed vlan add 2,3
Switch(config-if)# exit

Шаг 6: Выход из режима “Global config”

Switch(config)# end

Шаг 7: Проверка

Вывод информации о конфигурации порта:

Switch# show interface switchport interface eth-0-1
Interface name          : eth-0-1
 Switchport mode         : trunk
 VLAN traslation         : enable
 VLAN mapping table      : vm
 Ingress filter          : enable
 Acceptable frame types  : all
 Default Vlan            : 1
 Configured Vlans        : 1    2    3 

Вывод таблицы сопоставления VLAN:

Switch# show vlan mapping table
Table Name        EVC Name          Mapped VLAN Raw VLAN
 ================ ================  =========== =======================
vm                evc_c1            2           10
                  evc_c2            3           20

Настройка базового туннелирования

Шаг 1: Вход в режим “Global config”

Switch# configure terminal

Шаг 2: Вход в режим конфигурации порта и установка режима туннелирования

Switch(config)# interface eth-0-1
Switch(config-if)# no shutdown 
Switch(config-if)# switchport mode dot1q-tunnel

Шаг 3: Выход из режима “Global config”

``console Switch(config-if)# end


###### Шаг 4: Проверка

Вывод конфигурации порта:

```console
Switch# show interface switchport interface eth-0-1
Interface name           : eth-0-1
 Switchport mode         : dot1q-tunnel(basic)
 Ingress filter          : enable
 Acceptable frame types  : all
 Default Vlan            : 1
 Configured Vlans        : 1

Настройка выборочного туннелирования с созданием одного тега для исходящих нетегированных пакетов

Шаг 1: Вход в режим “Global config”

Switch# configure terminal

Шаг 2: Вход в режим конфигурации VLAN и создание VLAN

Switch(config)# vlan database
Switch(config-vlan)# vlan 2,3,20,30
Switch(config-vlan)# exit

Шаг 3: Создание EVC и установка сопоставляемой VLAN

Switch(config)# ethernet evc evc_c1
Switch(config-evc)# dot1q mapped-vlan 2
Switch(config)# ethernet evc evc_c2
Switch(config-evc)# dot1q mapped-vlan 3
Switch(config)# ethernet evc evc_c3
Switch(config-evc)# dot1q mapped-vlan 20
Switch(config)# ethernet evc evc_c4
Switch(config-evc)# dot1q mapped-vlan 30
Switch(config-evc)# exit

Шаг 4: Создание таблицы сопоставления VLAN и привязка VLAN к нужным EVC

Switch(config)# vlan mapping table vm
Switch(config-vlan-mapping)# raw-vlan 10 evc evc_c1
Switch(config-vlan-mapping)# raw-vlan 30-40 evc evc_c2
Switch(config-vlan-mapping)# raw-vlan untagged evc evc_c3
Switch(config-vlan-mapping)# raw-vlan out-of-range evc evc_c4
Switch(config-vlan-mapping)# exit

Шаг 5: Включение преобразования VLAN на интерфейсе и применение таблицы сопоставления VLAN

Порт “eth-0-1”:

Switch(config-if)# switchport mode dot1q-tunnel
Switch(config-if)# switchport dot1q-tunnel type selective
Switch(config-if)# switchport dot1q-tunnel vlan mapping table vm
Switch(config-if)# switchport dot1q-tunnel allowed vlan add 2,3,20,30

Порт “eth-0-2”:

Switch(config-if)# switchport mode trunk
Switch(config-if)# switchport trunk allowed vlan add 2,3,20,30

Шаг 6: Выход из режима “Global config”

Switch(config-if)# end

Шаг 7: Проверка

Вывод информации о конфигурации порта:

Switch# show interface switchport interface eth-0-1
 Interface name          : eth-0-1
 Switchport mode         : dot1q-tunnel(selective)
 VLAN mapping table      : vm
 Ingress filter          : enable
 Acceptable frame types  : all
 Default Vlan            : 1
 Configured Vlans        : 1    2    3    20   30

Вывод таблицы сопоставления VLAN:

Switch# show vlan mapping table
Table Name       EVC Name         Mapped VLAN Raw VLAN
 ================ ================ =========== ===========================
 vm               evc_c1           2           10
                  evc_c2           3           30-40
                  evc_c3           20          untagged
                  evc_c4           30          out-of-range

Настройка выборочного туннелирования с созданием двух тегов для исходящих нетегированных пакетов

Шаг 1: Вход в режим “Global config”

Switch# configure terminal

Шаг 2: Вход в режим конфигурации VLAN и создание VLAN

Switch(config)# vlan database
Switch(config-vlan)# vlan 2,3,10,20,30
Switch(config-vlan)# exit

Шаг 3: Создание EVC и установка сопоставляемой VLAN

Switch(config)# ethernet evc evc_c1
Switch(config-evc)# dot1q mapped-vlan 2
Switch(config-evc)# exit
Switch(config)# ethernet evc evc_c2
Switch(config-evc)# dot1q mapped-vlan 3
Switch(config-evc)# exit
Switch(config)# ethernet evc evc_c3
Switch(config-evc)# dot1q mapped-double-vlan 10 20
Switch(config-evc)# exit
Switch(config)# ethernet evc evc_c4
Switch(config-evc)# dot1q mapped-vlan 30
Switch(config-evc)# exit

Шаг 4: Создание таблицы сопоставления VLAN и привязка VLAN к нужным EVC

Switch(config)# vlan mapping table vm
Switch(config-vlan-mapping)# raw-vlan 10 evc evc_c1
Switch(config-vlan-mapping)# raw-vlan 30-40 evc evc_c2
Switch(config-vlan-mapping)# raw-vlan untagged evc evc_c3
Switch(config-vlan-mapping)# raw-vlan out-of-range evc evc_c4
Switch(config-vlan-mapping)# raw-vlan 10 20 egress-vlan untag
Switch(config-vlan-mapping)# exit

Шаг 5: Включение преобразования VLAN на интерфейсе и применение таблицы сопоставления VLAN

Порт “eth-0-1”:

Switch(config)# interface eth-0-1
Switch(config-if)# switchport mode dot1q-tunnel
Switch(config-if)# switchport dot1q-tunnel type selective
Switch(config-if)# switchport dot1q-tunnel vlan mapping table vm
Switch(config-if)# switchport dot1q-tunnel native inner-vlan 10
Switch(config-if)# switchport dot1q-tunnel allowed vlan add 2,3,20,30
Switch(config-if)# exit

Порт “eth-0-2”:

Switch(config)# interface eth-0-2
Switch(config-if)# switchport mode trunk
Switch(config-if)# switchport trunk allowed vlan add 2,3,20,30
Switch(config-if)# exit

Шаг 6: Выход из режима “Global config”

Switch(config)# end

Шаг 7: Проверка

Вывод информации о конфигурации порта:

Switch# show interface switchport interface eth-0-1
 Interface name          : eth-0-1
 Switchport mode         : dot1q-tunnel(selective)
 VLAN mapping table      : vm
 Ingress filter          : enable
 Acceptable frame types  : all
 Default Vlan            : 10
 Configured Vlans        : 1    2    3    20   30   

Вывод таблицы сопоставления VLAN:

 Table Name       EVC Name         Mapped VLAN Raw VLAN
 ================ ================ =========== =================================
 vm               evc_c1           2           10
                  evc_c2           3           30-40
                  evc_c3           20(10)      untagged
                  evc_c4           30          out-of-rang