Принцип работы и пример настройки VLAN в Ethernet-коммутаторах ZyXEL

Статья: 
1439
Ответ: 

Ethernet-коммутатор ZyXEL может работать либо с VLAN на базе порта (Port-based), либо с VLAN на базе тега (802.1Q).

Виртуальная локальная сеть на базе порта (Port-based VLAN)

Для выбора типа VLAN зайдите в меню веб-конфигуратора Basic Settings > Switch Setup и установите VLAN Type = Port Based. Для дальнейшей настройки VLAN перейдите к меню Advanced Application > VLAN.

VLAN на базе порта настраивается следующим образом: требуется указать для каждого порта N коммутатора список портов, в которые разрешена передача данных из порта N.

C помощью VLAN на базе порта можно настраивать довольно сложные схемы "перекрывающихся" виртуальных сетей, однако у этого метода есть существенный недостаток: он не позволяет распространить VLAN на несколько коммутаторов. Для передачи информации о VLAN между коммутаторами используется тегирование кадров по стандарту 802.1Q.

Виртуальная локальная сеть на базе тега (Tag-based VLAN 802.1Q)

Стандарт IEEE 802.1Q определяет изменения в структуре кадра Ethernet, позволяющие передавать информацию о VLAN по сети. В кадр Ethernet вставляется тег (tag), в котором указывается идентификатор VLAN (VID). Поле VID занимает 12 бит, номер VLAN может принимать любое значение от 1 до 4094; номера 0 и 4095 зарезервированы для специальных целей. Кадр с тегом называется маркированным (тегированным, tagged).

Кроме VID в теге указывается 3-битный приоритет. Стандарт IEEE 802.1p предусматривает наличие этого поля.

Тег занимает 4 байта. Он состоит из TPID (Tag Protocol Identifier, 2 байта) и TCI (Tag Control Information, 2 байта). Исходное поле типа кадра сдвигается вправо, на его место становится TPID, указывающий на новый тип кадра (802.1Q). В TCI содержится 12 бит VID и 3 бита Priority.

Добавление четырех байтов к максимальному размеру кадра Ethernet ведет к возникновению проблем в работе многих коммутаторов. Это связано с тем, что максимальный размер маркированного кадра составляет не 1518 байт, а 1522. Если невозможно заменить устаревшее оборудование, не поддерживающее увеличенные кадры, то можно на 4 байта уменьшить MTU в настройках сетевых устройств: с 1500 до 1496.

Типы кадров

Untagged frame - Кадр, в котором не установлен признак 802.1Q.
Priority-tagged frame - Кадр, содержащий установленный признак VLAN, однако поле VID равно 0. Такой кадр не принадлежит никакому VLAN, в нем имеет значение только поле приоритета.
VLAN-tagged frame - Кадр с установленным полем 802.1Q и VID больше 0.

Поддержка VLAN в сети

Каждая группа VLAN имеет уникальную в сети идентификацию (уникальный VID). Хосты внутри одного VLAN могут передавать данные между собой.
Все сетевые устройства можно разделить на две группы:

  • VLAN Aware – устройства поддерживающие признак VLAN в соответствии с 802.1Q и могут принимать пакеты с учетом этого поля.
  • VLAN Unaware – устройства которые не могут обрабатывать пакеты с учетом VID и Priority. Иногда эти устройства даже не могут обрабатывать эти кадры (не пропускает через себя кадры с MTU - 1522 байт). При передаче кадра на VLAN-Unaware-устройство тег снимается, а после приема кадра с него – устанавливается тег по-умолчанию.

 

Процессы 802.1Q

Входной процесс:
Ставит маркер. Если кадр с маркером, то он без изменений направляется в процесс пересылки, если без маркера, то на него ставится маркер согласно входному правилу.

Процесс пересылки (перенаправления):
Принимает решения о фильтрации или пересылке пакета в порт назначения согласно таблицам VLAN и MAC.

Выходной процесс:
Определяет, оставлять ли признак VLAN в кадре. Если известно, что к порту подключено устройство VLAN-Unaware, то тег снимается.

Входное правило (VLAN на базе протокола)

VLAN-aware устройства могут принимать как тегированные, так и нетегированные кадры.

Если кадр тегированный

  • он без изменений передаётся дальше

 

Если кадр без тега или кадр с VID=0

  • кадру назначается Protocol VID
    кадр передаётся дальше

 

Protocol VID:

  • VLAN ID, который зависит от поля Type входного кадра.
    Поддерживается с микропрограммы версии 3.70

  

Входное правило (PVID)

VLAN-aware устройства могут принимать как тегированные, так и нетегированные кадры.

Если кадр тегированный

  • он без изменений передаётся дальше

 

Если кадр нетегированный или это кадр приоритета

  • он маркируется PVID по умолчанию
  • после этого кадр передаётся дальше

 

PVID:

  • VLAN ID по умолчанию, который назначается на каждый порт.

 

Настройка VLAN на базе протокола

Port: номер порта на котором будет применяться данное правило
Ethernet-type: значение поля type кадра Ethernet
VID: VLAN ID, которым будет маркироваться кадр
Priority: значение поля приоритета, которым будет маркироваться кадр

Таблица VLAN

В меню VLAN отображается информация о текущих VLAN (статических и динамических). Динамические VLAN регистрируются по протоколу GVRP, а статические вводятся вручную администратором.

Статические VLAN настраиваются в меню Static VLAN. При настройке указывается имя, VID и состояния портов по отношению к данному VLAN:

  • Fixed – порт является выходным для данного VLAN;
  • Forbidden – в порт запрещено передавать кадры, принадлежащие VLAN;
  • Normal – в порт запрещено передавать кадры, принадлежащие VLAN, до тех пор, пока на этот порт не придет информация о данном VLAN по протоколу GVRP. Состояние normal при отключенном GVRP эквивалентно состоянию forbidden.

 

Флаг Tx Tagging указывает, нужно ли оставлять маркер при отправке кадра из порта.

С помощью статических таблиц VLAN регулируется только выдача маркированных кадров из коммутатора. Например, если порт находится в состоянии forbidden по отношению к некоторому VLAN ID=200, то в порт запрещена выдача кадров с меткой 200. При этом получение на этот порт кадра с меткой 200 не запрещено. Проверку входящих кадров можно включить в меню Port Security.

Параметры VLAN 802.1q на портах

У каждого порта имеется набор полей:

  • PVID (см. выше).
  • Acceptable Frame Type – типы принимаемых кадров: или любые, или только с тегами.
  • VLAN Trunking – если включено, то все VLAN выходят в этот порт с тегами, если явно не указано обратное. В коммутаторе, особенно если он работает где-то в центре сети, могут регистрироваться динамические VLAN, которые нужно «проводить» прозрачно в другие участки сети. В этом случае пригодится VLAN Trunking, иначе пришлось бы в явном виде вводить все возможные VLAN в таблицу.
  • Ingress check – если включено, то на порт принимаются только кадры с идентификаторами VLAN ID, для которых данный порт является выходным.
  • GVRP – протокол передачи информации о VLAN по сети с одного коммутатора на другой. Если требуется, его нужно включить как на всем коммутаторе, так и на отдельных портах.
  • Port Isolation (в настройках VLAN 802.1Q) – если включено, то данные не могут передаваться между клиентскими портами. Клиентским портам разрешен только обмен данными с Uplink-портами.
    Port Isolation (в настройках Port-based VLAN) – если включено, то данные не могут передаваться с одного порта на другой. Разрешен только обмен данными между портами и коммутатором (CPU) для настройки.

 

VLAN Stacking

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

Делается это с помощью «двойного тегирования» – добавления еще одного (внешнего) маркера VLAN.

У каждого порта коммутатора может быть две роли (Port Role):

  • Access Port – входящий кадр считается «не маркированным» вторым тегом, поэтому на него при входе ставится второй (туннельный) тег. Такие порты обычно используются на границе сети провайдера.
  • Tunnel Port – функция доступна только на гигабитных портах. Входящий кадр обрабатывается так же, как и при настройке Access Port, только при условии, что поле типа (TPID) кадра не совпадает с SP TPID (Service Provider’s TPID), настроенным на коммутаторе (меню VLAN Stacking, вверху).

 

Помимо роли на порт устанавливается SP VID – «внешний» идентификатор VLAN – и внешний приоритет SP Priority.

 


Приведем пример создания и настройки VLAN на базе 802.1Q с помощью команд Ethernet-коммутатора. Создадим VLAN с номером 100 в который будут включены порты 5-8 и с которых будут отправляться кадры с признаком 802.1Q (тегированные кадры).

 

ES-4124# config     – для создания и настройки VLAN необходимо войти в режим config
ES-4124(config)# vlan 100     – создаем VLAN с номером 100
ES-4124(config-vlan)# name vlan100     – имя статической таблицы VLAN
ES-4124(config-vlan)# fixed 5-8     – порты 5-8 включаем в VLAN 100
ES-4124(config-vlan)# no untagged 5-8     – указываем, что на портах 5-8 исходящие кадры коммутатор будет отправлять с установленным тегом 802.1Q
ES-4124(config-vlan)# exit     – выход из режима config-vlan
ES-4124(config)# interface port-channel 5-8     – входим в режим config-interface для определения PVID на портах 5-8
ES-4124(config-interface)# pvid 100     – устанавливаем PVID = 100 на портах 5-8
ES-4124(config-interface)# exit     – выход из режима config-interface
ES-4124(config)# exit     – выход из режима config
ES-4124# wr mem     – запись выполненных настроек в память коммутатора
ES-4124#

Для настройки статической таблицы VLAN в режиме config-vlan используются следующие команды:

vlan <vlan-id> команда для создания VLAN с номером <vlan-id>
name <name-str> команда устанавливающая название статической таблицы VLAN
fixed <port-list> команда определяет порты <port-list>, которые будут являться выходными для данного VLAN
forbidden <port-list> команда указывает, что в порты <port-list> запрещено передавать кадры принадлежащие данному VLAN
normal <port-list> команда указывает порты <port-list> которые не включены в определенный VLAN, но могут быть включены по протоколу GVRP
untagged <port-list> команда указывает отправлять исходящие кадры с портов <port-list> без тега 801.1Q
no untagged <port-list> команда указывает отправлять исходящие кадры с портов <port-list> с тегом 802.1Q

no fixed <port-list> или
no forbidden <port-list>

команда устанавливает настройки портов <port-list> в статус Normal


где <vlan-id> = VLAN ID [1-4094], <name-str> = имя записи SVLAN и <port-list> = список портов коммутатора.

 


При создании VLAN по умолчанию все порты находятся в режиме NORMAL.


 

Информация по всем командам Ethernet-коммутатора находится в руководстве пользователя.

Ключевые слова

802.1q, vlan

Была ли вам полезна эта статья?
Спасибо за ваш отзыв