Vlan что это в роутере d link

Обновлено: 03.07.2024

Виртуализацией сегодня уже никого не удивить. Эта технология прочно вошла в нашу жизнь и помогает более эффективно использовать имеющиеся ресурсы, а также обеспечивает достаточную гибкость в изменении существующей конфигурации, позволяя перераспределять ресурсы буквально налету. Не обошла виртуализация и локальные сети. Технология VLAN (Virtual Local Area Network) позволяет создавать и гибко конфигурировать виртуальные сети поверх физической. Это позволяет реализовывать достаточно сложные сетевые конфигурации без покупки дополнительного оборудования и прокладки дополнительных кабелей.

Прежде чем продолжить сделаем краткое отступление о работе локальных сетей. В данном контексте мы будем говорить об Ethernet-сетях описанных стандартом IEEE 802.3, куда входят всем привычные проводные сети на основе витой пары. Основой такой сети является коммутатор (свич, switch), который работает на втором уровне сетевой модели OSI (L2).

Второй уровень, он же канальный, работает в пределах одного сегмента сети и использует для адресации уникальные физические адреса оборудования - MAC-адреса. Передаваемая между узлами информация разделяется на специальные фрагменты - Ethernet-кадры (фреймы, frame), которые не следует путать с IP-пакетами, которые находятся на более высоком уровне модели OSI и передаются внутри Ethernet-кадров. Таким образом коммутатор ничего не знает об IP-адресах и никак эту информацию в работе не учитывает.

Коммутатор анализирует заголовки каждого входящего кадра и заносит соответствие MAC-адреса источника в специальную MAC-таблицу, после чего кадр, адресованный этому узлу, будет направляться сразу на определенный порт, если МАС-адрес получателя неизвестен, то кадр отправляется на все порты устройства. После получения ответа коммутатор привяжет MAC-адрес к порту и будет отправлять кадры только через него.

Этим достигается возможность одновременной передачи данных по нескольким портам одновременно и увеличивается безопасность сети, так как данные будут передаваться только на требуемый порт. Одновременно передавать данные через порт коммутатора может только один узел сети. Попытка одновременно передавать несколько кадров в одном сегменте сети называется коллизией, а такой сегмент - доменом коллизий. Чем больше устройств в домене коллизий, тем медленнее работает сеть.

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

Совокупность доменов коллизии, соединенных на втором уровне, является широковещательным доменом, если говорить проще, то широковещательный домен - это совокупность всех портов коммутаторов соединенных в один сегмент.

Как мы уже говорили выше, к широковещанию прибегает сам коммутатор, когда получает кадр MAC-адрес которого отсутствует в MAC-таблице, а также узлы сети, отправляя кадры на адрес FF:FF:FF:FF:FF:FF, такие кадры будут доставлены всем узлам сети в широковещательном сегменте.

А теперь вернемся немного назад, к доменам коллизий и вспомним о том, что в нем может передаваться только один кадр одновременно. Появление широковещательных кадров снижает производительность сети, так как они доставляются и тем, кому надо и тем, кому не надо. Делая невозможным в это время передачу целевой информации. Кроме того, записи в MAC-таблице имеют определенное время жизни, по окончании которого они удаляются, что снова приводит к необходимости рассылки кадра на все порты устройства.

Чем больше в сети узлов, тем острее стоит проблема широковещания, поэтому широковещательные домены крупных сетей принято разделять. Это уменьшает количество паразитного трафика и увеличивает производительность, а также повышает безопасность, так как ограничивает передачу кадров только своим широковещательным доменом.

Как это можно сделать наиболее простым образом? Установить вместо одно коммутатора два и подключить каждый сегмент к своему коммутатору. Но это требует покупки нового оборудования и, возможно, прокладки новых кабельных сетей, поэтому нам на помощь приходит технология VLAN.

Данная технология описана стандартом 802.1Q и предусматривает добавление к заголовкам кадра дополнительного поля, которое содержит в том числе определенную метку (тег) с номером виртуальной сети - VLAN ID, всего можно создать 4094 сети, для большинства применений этого достаточно.

vlan-beginners-001.jpg

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

Как мы уже говорили выше, каждый кадр 802.1Q содержит дополнительное поле, в котором содержится тег - номер виртуальной сети. При входе Ethernet-кадра в коммутатор с поддержкой VLAN (такой трафик называется входящим - ingres) в его состав добавляется поле с тегом. При выходе из коммутатора (исходящий трафик - egress), данное поле из кадра удаляется, т.е. тег снимается. Все кадры внутри маршрутизатора являются тегированными. Если трафик пришел на порт, не принадлежащий ни одному VLAN, он получает тег с номером Native VLAN.

vlan-beginners-002.jpg

В порт, принадлежащий определенному VLAN, могут быть отправлены только пакеты с тегом, принадлежащим этому VLAN, остальные будут отброшены. Фактически мы только что разделили единый широковещательный домен на несколько меньших и трафик из одного VLAN никогда не попадет в другой, даже если эти подсети будут использовать один диапазон IP. Для конечных узлов сети такой коммутатор нечем ни отличается от обычного. Вся обработка виртуальных сетей происходит внутри.

Такие порты коммутатора называются портами доступа или нетегированными портами (access port, untagged). Обычно они используются для подключения конечных узлов сети, которые не должны ничего знать об иных VLAN и работать в собственном сегменте.

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

vlan-beginners-003.jpg

Магистральные порты используются для соединения сетевого оборудования между собой, к конечным узлам сети тегированный трафик обычно не доставляется. Но это не является догмой, в ряде случаев тегированный трафик удобнее доставить именно конечному узлу, скажем, гипервизору, если он содержит виртуальные машины, принадлежащие разным узлам сети.

Так как кадр 802.1Q отличается от обычного Ehternet-кадра, то работать с ним могут только устройства с поддержкой данного протокола. Если на пути тегированного трафика попадется обычный коммутатор, то такие кадры будут им отброшены. В случае доставки 802.1Q кадров конечному узлу сети такая поддержка потребуется от сетевой карты устройства. Если на магистральный порт приходит нетегированный трафик, то ему обычно назначается Native VLAN.

Кроме указанных двух портов доступа существует еще одна разновидность - гибридный порт (hybrid port), его реализация и наименование у разных производителей сетевого оборудования может быть разным, но суть от этого не меняется. Такой порт передает как тегированный, так и нетегированный трафик. Для этого в его настройках указывается Default VLAN ID и для всех кадров этого VLAN данный порт работает как порт доступа, т.е для исходящего трафика указанного VLAN тег снимается, а входящему кадру без тега, наоборот, присваивается. Трафик остальных VLAN передается с тегами.

Для чего это нужно? Наиболее частое применение - это IP-телефоны со встроенным коммутатором, которые умеют работать с тегированным трафиком, но не умеют передавать его дальше. В этом случае в качестве VLAN ID по умолчанию устанавливается номер VLAN в котором расположены пользовательские ПК, а для телефона на этот же порт добавляется тегированный трафик VLAN для телефонии.

vlan-beginners-004.jpg

Все это время мы говорили только о VLAN, не поднимая вопроса: как попасть из одного VLAN в другой. Если продолжать рассматривать канальный уровень - то никак. Каждый VLAN мы можем рассматривать как отдельный физический коммутатор, а магистральный канал - как жгут кабелей между ними. Только все это сделано виртуально, на более высоком уровне абстракции, чем L1 - физический уровень, который как раз представлен кабелями и физическим оборудованием.

Если мы соединим два физических коммутатора кабелем - то получим расширение широковещательного домена на все порты этих устройств, а это совсем не то, что нам нужно. В тоже время сетевые устройства работают на более высоких уровнях модели ОSI, начиная с сетевого - L3. Здесь уже появляется понятие IP-адреса и IP-сетей. Если смотреть на VLAN с этого уровня, то они ничем не отличаются от физических сегментов сетей. А что мы делаем, когда нам нужно попасть из одной сети в другую? Ставим маршрутизатор.

Маршрутизатор или роутер - устройство, работающее на третьем уровне модели OSI и умеющее выполнять маршрутизацию трафика, т.е. поиск оптимального пути для доставки его получателю. И здесь мы говорим уже не о Ethernet-кадрах, а об IP-пакетах. Маршрутизация между VLAN называется межвлановой (межвланной) маршрутизацией (InterVLAN Routing), но, по сути, она ничем не отличается от обычной маршрутизации между IP-подсетями.

Для обеспечения связи между сетями в нашей схеме появляется новая сущность - маршрутизатор, как правило к нему от одного из коммутаторов идет магистральный канал (транк), содержащий все необходимые VLAN, эта схема называется роутер на палочке (леденец, Router-on-a-Stick).

Все кадры, попадающие с порта доступа в коммутатор, получают тег с VLAN ID 40 и могут покинуть коммутатор только через порты, принадлежащие этому VLAN или транк. Таким образом любые широковещательные запросы не уйдут дальше своего VLAN. Получив ответ узел сети формирует кадр и отправляет его адресату. Далее в дело снова вступают коммутаторы, сверившись с MAC-таблицей они отправляют кадр в один из портов, который будет либо принадлежать своему VLAN, либо будет являться магистральным. В любом случае кадр будет доставлен по назначению без использования маршрутизатора, только через коммутаторы.

Совсем иное дело, если узел одного из VLAN хочет получить доступ к узлу другого VLAN. В нашем случае узел из красной сети (VLAN ID 30) хочет получить доступ к узлу синей сети (VLAN ID 40). Узел источник знает IP-адрес адресата и также знает, что этот адрес не принадлежит его сети. Поэтому он формирует IP-пакет на адрес основного шлюза сети (роутера), помещает его в Ethernet-кадр и отправляет на порт коммутатора. Коммутатор добавляет к кадру тег с VLAN ID 30 и доставляет его роутеру.

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

Говоря о межвлановой маршрутизации нельзя обойти вниманием такие устройства как L3 коммутаторы. Это устройства уровня L2 c некоторыми функциями L3, но, в отличие от маршрутизаторов, данные функции существенно ограничены и реализованы аппаратно. Этим достигается более высокое быстродействие, но пропадает гибкость применения. Как правило L3 коммутаторы предлагают только функции маршрутизации и не поддерживают технологии для выхода во внешнюю сеть (NAT) и не имеют брандмауэра. Но они позволяют быстро и эффективно осуществлять маршрутизацию между внутренними сегментами сети, в том числе и между VLAN.

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

При этом нельзя сказать, что какое-то из устройств хуже, каждое из них хорошо на своем месте. Если мы говорим о маршрутизации между внутренними сетями, в том числе и о межвлановой маршрутизации, то здесь предпочтительно использовать L3 коммутаторы с их высокой производительностью, а когда требуется выход во внешнюю сеть, то здесь нам потребуется именно маршрутизатор, с широкими сетевыми возможностями.

Начало

Проблема локальных сетей и нескольких подсетей в том, что появляется угроза утечки информации. Давайте посмотрим на пример трех сетей: дирекция, бухгалтерия и отдел кадров. Конечно, в крупных компаниях сети куда больше, но мы рассмотрим более ужатый пример.

Что такое VLAN – для абсолютных чайников на примере настройки коммутатора Cisco

  1. Пакет дойдет до Switch2, и он отправит его на PC2 и на центральный Switch
  2. Далее пакет дойдет до центрального Switch-а. Но Switch1 отправит пакеты на два других коммутатора: 3 и 4.
  3. Те в свою очередь отправят пакеты на все остальные PC: 3, 4, 5 и 6.

А почему же так происходит? А происходит все из-за того, что PC1 пока не знает MAC-адрес второго компа и отправляем специальный пакет по протоколу ARP, для так называемого «прозвона». Также отправляющий комп не знает адрес канального уровня – вспоминаем сетевую модель OSI.

И тут возникает две проблемы:

  • Безопасность – трафик могут просто перехватить злоумышленники. В целом это можно сделать стандартными программами перехватчиками.
  • Ненужный трафик – когда сеть небольшая, это не так заметно. Но представьте, что у вас сеть состоит из тысячи компьютеров. Все может привести к забитости канала и потери пакетов.

Как ни странно, но пример, который я привел был работоспособным почти в самом начале создания сетей, когда ещё интернет был слабым и юным. О проблеме знали все, и её постаралась решить компания Cisco, которая в своих лабораториях изобрела совершенно новый протокол ISL. После этого протокол Inter-Switch Link был прикручен к IEEE под кодовым названием 802.1q – именно это название вы и можете встречать в интернете или на коробке от коммутаторов.

Для начала взглянем на обычный «Ethernet-кадр», находящийся в своей привычной среде обитания:

Что такое VLAN – для абсолютных чайников на примере настройки коммутатора Cisco

А теперь взглянем на новый кадр 802.1q:

Что такое VLAN – для абсолютных чайников на примере настройки коммутатора Cisco

Что у нас в итоге получается – добавляется ещё один тег с нужной для нас информацией:

Теперь мы подошли к одному очень интересному понятию. Как вы уже поняли, данный кадр 802.1q помогает правильно отправлять пакеты данных. Но вопрос в том, зачем добавлять кадр к пакету, который уже идёт на конечное устройство пользователя? Правильно – незачем.

Именно поэтому в маршрутизаторах и коммутаторах есть два понятия:

  • Trunk port (магистральный порт) – порт, который идет на другое сетевое устройство: коммутатор, маршрутизатор и т.д. Из этого порта обычно отправляются тегированные пакеты, то есть пакеты с этим самым тегом.
  • Access port (порт доступа) – открытый или последний порт, из которого информация льется прямиком на компьютер пользователя. Сюда бессмысленно добавлять тег, забивая размер пакета.

Нетегированный трафик – это пакеты данных, которые идут без кадра 802.1q. Тегирование VLAN как раз и происходит по двум портам: Trunk и Access. Если вам пока ничего не понятно, то не переживайте, дальше я все покажу на примере.

Настройка VLAN на коммутаторе

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

Для начала давайте посмотрим всю таблицу коммутации VLAN стандартной консольной командной:

Что такое VLAN – для абсолютных чайников на примере настройки коммутатора Cisco

Смотрим по столбцам:

Что такое VLAN – для абсолютных чайников на примере настройки коммутатора Cisco

Для примера я буду использовать модель Cisco 2960 24tt, но принцип настройки, который буду показывать далее – одинаковый для всех их аппаратов. Плюс вы поймете принцип VLAN сразу и на примере.

Далее назовём как-то нашего зверя:

Покажу настройку на примере нашей любимой картинки, которую я показывал в самом начале. Тут у нас есть:

  • Коммутаторы: SenterSW, SW1, SW2, SW3.
  • Компы: PC1, PC2, PC3, PC4, PC5, PC

Запомните примерно данные названия, чтобы было проще ориентироваться при вводе команд. Можете также иногда посматривать на эту картинку.

Что такое VLAN – для абсолютных чайников на примере настройки коммутатора Cisco

ПРИМЕЧАНИЕ! Просто запомните, что команда с надписью «interface» вводит вас в настройку данного объекта.

Так как наш порт будет направлен именно на комп, то тегирование не нужно, и мы переводим его в нужное состояние:

2-ой ВЛАН мы создали, осталось теперь привязать 1-ое устройство к нему:

Теперь тоже самое проделайте и для второго порта. В самом конце надо будет привязать второй порт к тому же самому VLAN2 – мы же хотим, чтобы они находились в одной сети.

На будущее – чтобы не прописывать каждый порт таким образом, вы можете прописать диапазон портов вот так:

Итак, два компьютера теперь у вас настроены правильно и находятся в одной VLAN. Теперь нам надо подключить наш 1-ый коммутатор к центральному. Для этого мы будем использовать 24-ый порт. И конечно же нам надо перевести его в режим с тегированием:

Как бы вроде мы все сделали, но есть одна проблема: в коммутаторе нет правила, которое бы ограничивало поступление пакетов с других ВЛАН – то есть проблема с безопасностью остается. Нам нужно теперь прописать такое правило, которое бы разрешало поступление на наш 24 порт только пакеты для VLAN2:

На всякий случай проверяем таблицу маршрутизации:

Что такое VLAN – для абсолютных чайников на примере настройки коммутатора Cisco

Как видите наш второй VLAN теперь имеет только два доступных порта. Единственный минус данного вывода информации в том, что вы не можете посмотреть статус тегирования портов. Для этого есть отдельная команда:

show interfaces trunk

Вот тут мы видим наш 24 порт, который нам нужен для связи с центральным коммутатором. Ещё раз повторюсь, что статус тегирования (Trunk или Access) – обязательно нужно настраивать для внешних портов. В противном случае не будет смысла вообще в настройке VLAN.

Первый коммутатор мы настроили, теперь давайте настроим третий. В первую очередь нужно создать три ВЛАН для каждой из структур: дирекция, бухгалтерия и отдел кадров. VLAN 2 уже закрепился за дирекцией. Создаем VLAN для бухгалтерии:

Теперь создаем внутреннюю сеть для отдела кадров:

Ну так как данный коммутатор будет иметь связь только с сетевыми устройствами, то мы будем использовать тегирования в статусе trunk. А использовать мы будем первые 3 порта.

Вам не кажется, что мы что-то упустили? Наш центральный коммутатор по идее будет связующим звеном – ведь так?! Но мы забыли создать VLAN 2 для первого сегмента:

ПРИМЕЧАНИЕ! Дабы не запутаться обязательно называем ВЛАН как на первом коммутаторе.

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

  1. 192.168.1.2
  2. 192.168.1.3
  3. 192.168.1.4
  4. 192.168.1.5
  5. 192.168.1.6
  6. 192.168.1.7

ПРИМЕЧАНИЕ! Если вы ещё путаетесь в этих понятиях, то советую прочесть статью про OSI – ссылку я оставил в самом начале статьи.

Все я это сделал в учебных целях и вообще нужно разделять сети и на канальном, и на сетевом уровне. Это можно сделать вручную на компьютерах. Но статья немного не об этом.

Теперь что будет происходить с отправлением данных? Если мы отправим пакет на PC2, то он дойдет до первого коммутатора. Далее коммутатор отправит его одновременно на PC2 и на центральный Switch. После этого центральный коммутатор отправит пакеты на другие SW (2 и 3). Там коммутаторы, у которых прописаны правила только для VLAN: 3 и 4 – просто отправят пакет в утиль. То есть данный пакет не дойдет до компов: 3, 4, 5 и 6.

Что такое VLAN – для абсолютных чайников на примере настройки коммутатора Cisco

Ситуация с переездом сотрудника

Давайте рассмотрим ситуацию, что в отдел бухгалтерии нужно будет посадить сотрудника из совершенно другого отдела (на время). Допустим Елена Павловна не может сидеть в отделе Дирекции летом, так как у нее сильно повышается давление, а там не кондиционера. Начальство решает переселить её на летнее время в бухгалтерию.

Что такое VLAN – для абсолютных чайников на примере настройки коммутатора Cisco

Итак, что мы будем делать?! В первую очередь мы подключим её компьютер к следующему третьему порту второго свича. Теперь возникла проблема в том, что на втором коммутаторе и слухом не слыхивали про 2-ой ВЛАН и его надо создать:

Теперь нужно 3-порт настроить и добавить его в VLAN2. И также не забываем прописать ему модель тегирования:

Теперь нам нужно разрешить пропускать VLAN2 пакеты именно на внешнем порту. У второго свича (как и у всех) – это 24-ый порт. Внимательно пропишите команду:

Теперь переходим к центральному коммутатору:

Общение между собой

Теперь мы подошли к вопросу использования VLAN – как видите это полезная вещь, которая строго разделяет трафик на канальном уровне и позволяет отправлять пакеты только в нужную сторону. Таким образом организовывается работа больших организаций, где есть большое количество отделов, которые не должны видеть друг друга. Но одна из проблем у нас все же остается, а именно – проблема одной сети. Все наши компьютеры находятся в первой подсети, что неправильно, и нам надо их разбить.

Но для этих целей нам также понадобится маршрутизатор, чтобы объединить сеть также и на сетевом уровне. Для этого мы подключим маршрутизатор Cisco 2811.

Что такое VLAN – для абсолютных чайников на примере настройки коммутатора Cisco

В настройках нам также надо будет указать шлюзы, но они будут стандартные:

  1. 192.168.1.1 – для дирекции
  2. 192.168.2.1 – для бухгалтерии
  3. 192.168.3.1 – для отдела кадров

Маска будет везде одинаковая: 255.255.255.0 (/24).

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

Настройка маршрутизатора

Заходим в настройки и обзываем его исходя из картинки:

Теперь создаем виртуальный шлюз для второй подсети. Обратите внимание, что для порта мы прописываем команду: «0/0.3». Хотя в прошлых коммутаторах мы явно указывали порт. Все это из-за того, что за шлюз будет отвечать, как раз вот этот маршрутизатор, который не подключен напрямую к устройствам.

Осталось создать шлюз для последней подсети:

Чуть не забыл сказать – маршрутизатор мы подключим к 24 порту центрального коммутатора. Теперь нам нужно разрешить отправлять пакеты всех вланов на маршрутизатор через 24 порт, к которому мы и подключились:

Не забываем указать «транковое» тегирование, ведь пакеты будут идти на сетевое устройство, а не на компьютер:

Все VLAN можно прописать просто через запятую:

Именно так заполняется таблица маршрутизации. Такой долгий путь обычно начинается в самом начале. Впоследствии маршрутизатор помогает общаться всем компьютерам именно через канальный уровень.

Видео

Более детально про VLAN рассказывается в данном видео, оно достаточно долгое, но максимально информативное.

Вланы могут создавать только пользователи с правами администратора и оператора.

Cоздание Vlan

Обязательно должен быть указан vlan id.
Формат: create vlan <vlan_name 32> tag <vlanid 2-4094>

Параметры:
<vlan_name 32> — имя создаваемого влана. Может содержать до 32х символов.
<vlanid 2-4094> — vlan id или таг влана. Может быть в диапазоне от 2 до 4094.
type 1q_vlan advertisement — параметр разрешающий анонсировать влан основанный на стандарте 802.1Q по протоколу GVRP. Использовать не рекомендуется, т.к. на разных моделях коммутаторов может вести себя непредсказуемо.

Массовое создание Vlan по ID

Метод используется для создания нескольких VLAN одновременно. Уникальное имя VLAN будет назначаться автоматически (например VLAN10). Назначение имени VLAN основано на следующем правиле: «VLAN»+ID. Например, для VLAN ID 100 имя VLAN будет VLAN100. Если это имя VLAN конфликтует с именем существующего VLAN, то оно будет переименовано. Происходит это на следующим образом: “VLAN”+идентификатор+”ALT”+счетчик совпадений. Например, если конфликт является вторым, то имя будет VLAN100ALT2.

Формат: create vlan vlanid <vidlist>

Параметры:
<vidlist> — количество вланов (VID) для создания.

Удаление Vlan

Формат: delete vlan <vlan_name 32>
Пример:

Массовое удаление Vlan по ID

Формат: delete vlan vlanid <vidlist>
Пример:

Конфигурирование Vlan

Формат: config vlan [<vlan_name 32>| vlanid] |

Параметры:
add [tagged | untagged | forbidden] | delete] — Назначит порт Тегированным |Не тегированным | Запрещенным. forbidden (Запрещенный) указывает на то, что порт не сможет присоединиться к влану ни при каких условиях, кроме ручного добавления. Примером автоматического присоединения портов является протокол GVRP.
delete — удаление портов из влана
advertisement [enable | disable] — включение/отключение анонсирования влана в сеть. Используется протоколом GVRP

GVRP и Ingress Checking

Ingress Checking — «проверка попадания» фрейма в набор VID, ассоцирированных с портом. Если Ingress Checking включен, то при поступлении в порт коммутатора фрейма, производится сравнение VID фрейма с набором идентификаторов VID, ассоциированных с портом (включая PVID порта). Если нет совпадения, то фрейм отбрасывается. Т.е. на порт принимаются только фреймы с идентификаторами VLAN ID, для которых данный порт является выходным. Если же Ingress Checking выключен, то никакой проверки не производится.

Формат: config port_vlan [<portlist> | all]

Параметр:
gvrp_state [enable | disable] — Включает или отключает GVRP для портов, указанных в списке
ingress_checking [enable | disable] — включение/отключение функции Ingress Checking
acceptable_frame [tagged_only | admit_all] — Разрешить только тегированный трафик на порту или весь.

Команды просмотра Show

show vlan — Отображение информации о всех vlan, включая параметры и настройки.
show vlan ports 6 — отображает информацию о vlan на требуемом порту.
show vlan vlanid 1 — отображает информацию о требуемом vlan по его ID
show port_vlan — отображения атрибутов VLAN yна портах на коммутатора

PVID auto assign


PVID — указывать на то, каким тегом будет помечен трафик поступивший от хоста на порт коммутатора.
Пример:
Порт 16 — транковый порт. На него приходит несколько вланов. В том числе vlan2
Порт 1 — порт доступа (Access/Untagged). За ним располагается хост. Например абонент.

1. На коммутатор в порт 16, приходит тегированный фрейм. Коммутатор проверяет ARP таблицу и видит, что абонент доступен через порт 1.
2. Порт 1 работает в режиме Untagged, поэтому с фрейма снимается метка влана (его принадлежность к данному влану). После этого фрейм становится нетегированным.
3. Так как порт настроен как Untagged, то когда фрейм от абонента приходит на порт 1 коммутатора, в нём проставляется тег соответствующий PVIDу, который указывает какому VLAN’у принадлежит этот фрейм. В данном случае проставляется тег с VLAN’ом 2.

Для абонента фреймы остаются нетегированными. Операция тегирования, которую выполняют коммутаторы абсолютно прозрачна. Хосты ничего не знают о тегах и получают обычные фреймы.

PVID auto assign используется для включения автоматического назначения PVID. Когда назначается VLAN X untagged, PVID этого порта будет назначен VLAN X. PVID будет автоматически обновляться на последний добавленный untagged vlan. Когда untagged порт удаляется, PVID порта будет назначается на «default VLAN» или предыдущий.
Значение по умолчанию включено.
Пример:

Проверка автоматического сопоставления PVID
show pvid auto_assign

Асимметричные VLAN

Суть данной технологии в том, что бы предоставить доступ с одного влана в другой, не используя маршрутизацию. Например абоненты разных сегментов сети не имея доступ друг к другу могли подключаться к требуемому серверу или интернет шлюзу.


  1. IGMP Snooping не поддерживается при использовании
    асимметричных VLAN.
    Решение: Использование коммутатора 3 уровня + ACL(листы
    доступа) + многоадресная (multicasting) маршрутизация + IGMP
    snooping
  2. При использовании Assymetric VLAN не происходит изучение, а
    также добавление в таблицы коммутации, MAC-адресов с
    тегированных портов. Тем самым применение Assymetric VLAN
    ограничивается одним коммутатором.

Настройка GVRP

GVRP (GARP VLAN Registration Protocol) служит для передачи между устройствами информации о vlan, используемых на данном отрезке сети. При использовании в сети большого количества устройств, добавление в сеть нового vlan часто влечет за собой перенастройку всех устройств, через которые должен проходить новый vlan. В сети провайдера, особенно при применении схемы vlan-per-customer, это может создавать огромную головную боль. Использование протокола GVRP позволяет избежать перенастройки оборудования каждый раз при изменении vlan в сети.

config gvrp timer устанавливает значение таймера GVRP. Значение по умолчанию для времени присоединения составляет 200 миллисекунд; для времени отсоединения-600 миллисекунд; Для LeaveAll -10000 миллисекунд.
Формат: config gvrp [timer | nni_bpdu_addr [dot1d | dot1ad]]

nni_bpdu_addr [dot1d | dot1ad] — Используется для определения адреса протокола BPDU для GVRP в узле предоставления услуг. Он может использовать адрес GVRP 802.1d, адрес GVRP поставщика услуг 802.1ad или пользовательский multicast адрес. Диапазон определенного пользователем адреса: 0180C2000000 — 0180C2FFFFFF.
Пример:

show gvrp -Статус GVRP
enable/disable gvrp — включение/отключение GVRP.

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


Схема подключения

На коммутаторах №2 и №3:

На коммутаторе №4

Напоминаю, что ключ advertisement при создании vlan говорит коммутатору о том, что этот vlan необходимо анонсировать соседним устройствам.

Доброго времени суток, уважаемый посетитель. Сегодня я, как обычно, по нашей доброй традиции, буду рассказывать кое-что интересное. А рассказ сегодня пойдет про замечательную штуку в локальных сетях под названием VLAN. В природе не мало разновидностей данной технологии, про все рассказывать не будем, а только про те, которые решили бы стоящую перед нашей компанией задачу. Данная технология уже не раз применялась нашими специлистами в нашей практике ИТ аутсорсинга в регионе, Но в этот раз, всё было несколько интереснее, т.к. оборудование с которым пришлось работать - несколько "урезанное" (прошлая похожая задача релизовывалась на коммутаторе D-link DES-1210-28). Но, обо всем по порядку.

Что же такое VLAN?

VLAN – логическая («виртуальная») локальная сеть, представляет собой группу хостов с общим набором требований, которые взаимодействуют так, как если бы они были подключены к широковещательному домену, независимо от их физического местонахождения. VLAN имеет те же свойства, что и физическая локальная сеть, но позволяет конечным станциям группироваться вместе, даже если они не находятся в одной физической сети. Такая реорганизация может быть сделана на основе программного обеспечения вместо физического перемещения устройств.

Данная технология позволяет выполнять две задачи:

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

2) разграничивать устройства (находящиеся в разных VLAN’ах), подключенные к одному коммутатору.

Иначе говоря, VLAN ‘ы позволяют создавать отдельные широковещательные домены, снижая, тем самым, процент широковещательного трафика в сети.

Port-BaseVLAN

Port-Base VLAN – представляет собой группу портов или порт в коммутаторе, входящий в один VLAN. Порты в таком VLAN называются не помеченными (не тегированными), это связанно с тем, что кадры приходящие и уходящие с порта не имеют метки или идентификатора. Данную технологию можно описать кратко – VLAN ’ы только в коммутаторе. Эту технологию мы будем рассматривать на управляемом коммутаторе D-link DGS-1100-24.

IEEE 802.1Q

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

Кадр 802.1Q

Немного наркомании, а именно - процедура помещения тега в кадр называется – инъекция.

Размер тега — 4 байта. Он состоит из таких полей:

  • Tag Protocol Identifier (TPID, идентификатор протокола тегирования). Размер поля — 16 бит. Указывает какой протокол используется для тегирования. Для 802.1Q используется значение 0x8100.
  • Priority (приоритет). Размер поля — 3 бита. Используется стандартом IEEE 802.1p для задания приоритета передаваемого трафика.
  • Canonical Format Indicator (CFI, индикатор канонического формата). Размер поля — 1 бит. Указывает на формат MAC-адреса. 0 — канонический, 1 — не канонический. CFI используется для совместимости между сетями Ethernet и Token Ring.
  • VLAN Identifier (VID, идентификатор VLAN). Размер поля — 12 бит. Указывает какому VLAN принадлежит фрейм. Диапазон возможных значений от 0 до 4095.

Порты могут быть в одном из следующих режимов:

  • Tagged port (в терминологии CISCO - trunk-port) - порт пропускает пакеты маркированные указанными номерами VLAN, но при этом сам никак не маркирует пакеты
  • Untagged port (в терминологии CISCO - access-port) - порт прозрачно пропускает немаркированный трафик для указанных VLAN, если трафик уходит в другие порты коммутатора за пределы указанного VLAN, то там он уже виден как маркированный номером этой VLAN.
  • Порт не принадлежит никаким VLAN и не учувствует в работе коммутатора

Пример. Имеется офисное помещение, в котором отдел кадров разделен на два этажа, нужно, чтобы сотрудники были отделены от общей сети. Имеется два коммутатора. Создадим VLAN 3 на одном и втором, порты, которые будут в одном из VLAN укажем как Untagget Port. Для того, чтобы коммутаторы понимали в какой VLAN адресуется кадр, нужен порт, через который будет пересылаться трафик в этот же VLAN другого коммутатора. Выделим, к примеру, один порт и укажем его как Tagget. Если у нас, помимо VLAN 3, есть еще и другие, и ПК-1 расположенный в VLAN 3 будет искать ПК-2, то широковещательный трафик не будет «ходить» по всей сети, а только в VLAN 3. Прибежавший кадр будет пропускаться через MAC-таблицу, если же адрес получателя не будет найдет, такой кадр будет отправлен через все порты такого VLAN откуда он прибежал и порт Tagget с меткой VLAN, чтобы другой коммутатор воспроизвел широковещание на ту группу портов, которые указаны в поле VID. Данный пример описывает VLAN – один порт может быть только в одном VLAN.

IEEE 802.1ad

802.1ad — это открытый стандарт (аналогично 802.1q), описывающий двойной тег. Также известен как Q-in-Q, или Stacked VLANs. Основное отличие от предыдущего стандарта — это наличие двух VLAN’ов — внешнего и внутреннего, что позволяет разбивать сеть не на 4095 VLAN’ов, а на 4095х4095.

Кадр 802.1ad

Сценарии могут быть различны – провайдеру надо “пробросить” транк клиента, не затрагивая схему нумерации VLAN’ов, надо балансировать нагрузку между субинтерфейсами внутри сети провайдера, либо просто – маловато номеров. Самое простое – сделать ещё одну такую же метку (tag).

Асимметричный VLAN

В терминологиях D-Link, а также в настройках VLAN, есть понятие асимметричный VLAN – это такой VLAN, в котором один порт может быть в нескольких VLAN.

Состояние портов меняется

  • Tagged порты работают прежним образом
  • Появляется возможность назначать как Untagged несколько портов на несколько VLAN. Т.е. один порт сразу работает в нескольких VLAN как Untagged
  • У каждого порта появляется еще один параметр PVID - это VLAN ID, которым маркируется трафик с этого порта, если он уходит на Tagged порты и за пределы коммутатора. У каждого порта может быть только один PVID

Таким образом, мы получаем то, что внутри устройства один порт может принадлежать сразу нескольким VLAN, но при этом, уходящий в tagged (TRUNK) порт, трафик будет маркироваться номером, который мы задаем в PVID.

Настройка асимметричного VLAN

Ограничение: Функция IGMP Snooping не работает при использовании асимметричных VLAN.

Создание VLAN на D-link DGS-1100-24.

Что имеется. Два коммутатора, один из них D-link DGS-1100-24, к нему подключен коммутатор №2. В коммутатор №2 подключены машины пользователей – абсолютно всех, а также сервера, шлюз по умолчанию и сетевое хранилище.

Задача. Ограничить отдел кадров от общей среды, так, чтобы при этом были доступны сервера, шлюз и сетевое хранилище.

Ко всему прочему, коммутатор D-link DGS-1100-24 только что вынули из коробки. По умолчанию большинство управляемых коммутаторов компании D-Link имеют адрес 10.90.90.90/8. Нас не интересует физическое нахождение у коммутатора или смена адреса. Существует специальная утилита D-Link SmartConsole Utility, которая помогает найти наше устройство по сети. После установки запускаем утилиту.

Прежде чем переходить к настройке, переключим порты должным образом:

1) Переключим порт отдела кадров с коммутатора №2 в коммутатор №1

2) Переключим сервера, шлюз и сетевое хранилище с коммутатора №2 в коммутатор №1

3) Подключим коммутатор №2 в коммутатор №1

После такого переключения видим следующую картину: сервера, шлюз, сетевое хранилище и отдел кадров подключены в коммутатор №1, а все остальные пользователи в коммутатор №2.

Запуск утилиты D-Link SmartConsole Utility

Жмем кнопку «Discovery»

Поиск устройств с помощью утилиты D-Link SmartConsole Utility

Ставим галочку и жмем значок шестеренки, открывается окно настройки коммутатора. После задания адреса, маски и шлюза, пишем пароль, который по умолчанию admin.

Назначение IP адреса, шлюза по умолчанию с помощью D-Link SmartConsole Utility

Далее логинимся на Web-интерфейсе устройства и переходим в ветку VLAN – Port-Based VLAN. На картинки виден уже созданный VLAN, но в качестве демонстрации создадим еще один.

Web-интерфейс коммутатора D-link DGS-1100-24

Жмем «Add VLAN» и указываем имя VLAN и порты

Создание Port-Based VLAN на коммутаторе D-link DGS-1100-24

Port-Based VLAN на коммутаторе D-link DGS-1100-24

После создания нужных VLAN, сохраним настройку, для этого нажмем «Save», «Save configuration»

Сохранение конфигурации на коммутаторе D-link DGS-1100-24

Итак, мы видим, что VLAN 3 не имеет доступа к портам 01-08, 15-24 – следовательно, не имеет доступ к серверам, шлюзу, сетевому хранилищу, к VLAN2 и остальным клиентам – которые подключены к коммутатору №2. Тем не менее VLAN 2 имеет доступ к серверам, шлюзу, сетевому хранилищу, но не имеет к остальным машинам. И наконец, все остальные машины видят сервера, шлюз, сетевое хранилище, но не видят порты 05,06.]

Таким образом, при наличии определенных знананий об особенностях оборудования и навыков ИТ-аутсорсинга, можно удовлетворить потребности клиента даже на таком бюджетном оборудовании как коммутатор D-Link DGS1100-24.

Читайте также: