VLAN на пальцах

В работе системных администраторов довольно часто возникает задача разделения сети на отдельные логические блоки (на отделы, аудитории и т.д.). Хорошо, если время и ресурсы позволяют реализовать такое деление в железе. Но зачастую на объекте уже есть сеть и делать надо на ее базе и желательно с минимальными простоями.

И тут нам на помощь приходит такая технология, как VLAN (для реализации необходимы коммутаторы с ее поддержкой). VLANVirtual Local Area Network. Суть технологии заключается в том, что к сетевому кадру (2-й уровень) прибавляется дополнительный заголовок (tag), который содержит служебную информацию и VLAN ID. Отдельным портам коммутаторов также назначен VLAN ID. На основании данного поля пакеты передаются на определенные порты коммутатора. Таким образом мы создаем логические сети, в которые включаем компьютеры из разных концов имеющейся сети. Сети с разными VLAN ID недоступны друг другу, как если бы они были выполнены из отдельных кабелей и устройств. Значения VLAN ID могут быть от 1 — 4095. При этом 1 зарезервирована как VLAN по умолчанию или default.

Исходя из этого логично предположить что есть трафик тегированный и нетегированный. Тегированный трафик (с идентификатором влана) в основном идет между коммутаторами и серверами. Обычные же компьютеры (особенно под управлением ОС Windows) не понимают тегированный трафик. Поэтому на тех портах, которые смотрят непосредственно на рабочие станции или в сеть с неуправляемым коммутатором, выдается нетегированный трафик. Т.е. от сетевого кадра отрезается тег. Это также происходит, если на порту настроен VLAN ID = 1.

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

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

А теперь немножко практики

На коммутаторах D-Link вланы создаются примерно вот так:

create vlan my_vlan tag 777

Далее его надо отконфигурировать, т.е. добавить порты

config vlan my_vlan add tagged 2-14

Тут мы добавили в наш влан порты 2-14. С них будет идти тегированный трафик. Чтобы добавить в vlan компьютер, нужно создать для него нетегированный порт:

config vlan my_vlan add untagged 28,34

При это этом нужно следить, чтобы этот порт не был отмечен в другом влане как нетегированный.

Теперь можно попробовать настроить сеть между компьютерами на 28 и 34 портах коммутатора. Дабы убедиться что они изолированы от других компьютеров на коммутаторе, попробуйте установить связь с кем-нибудь из другого влана.

Т.к. Linux это сетевая ОС, то в ней также есть возможность как работать коммутатором и передавать тегированные пакеты, так и обрабатывать тегированный трафик. Для настройки работы с VLAN необходимо установить утилиту vconfig, а также включить поддержку в ядре.

Далее выполняем следующие действия:

vconfig set_name_type VLAN_PLUS_VID_NO_PAD

vconfig add eth0 777

ifconfig vlan4 172.16.3.1 netmask 255.255.240.0 up

Естественно, что мы не будем вводить эти команды при каждой загрузке. В Gentoo для автоматизации поднятия интерфейса влана, нужно записать /etc/conf.d/net следующее:

vlans_eth0=»777″

vconfig_eth0=( «set_name_type VLAN_PLUS_VID_NO_PAD» )

config_vlan777=( «172.16.3.1 netmask 255.255.254.0″ )

Здесь eth0 это интерфейс на который приходит трафик. А vlan777 интерфейс через который мы подключаемся к локальной сети ограниченной этим vlan.

Запись опубликована в рубрике Железо, Программное обеспечение, Работа, Увлечения с метками , , , . Добавьте в закладки постоянную ссылку.

Комментарии запрещены.