Виртуальные сети (Virtual LAN). Vpn подключение: что это такое, и для чего нужен vpn канал

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

VLAN"ы могут быть настроены на коммутаторах, маршрутизаторах, других сетевых устройствах.

Преимущества:

1 - Облегчается перемещение, добавление устройств и изменение их соединений друг с другом.

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

3 - Уменьшается потребление полосы пропускания по сравнению с ситуацией одного широковещательного домена.

4 - Сокращается непроизводственное использование CPU за счет сокращения пересылки широковещательных сообщений.

5 - Предотвращение широковещательных штормов и предотвращение петель.

Лабораторная работа № 10. Настройка VLAN на одном коммутаторе Cisco.

В данной работе рассматривается настройка VLAN на коммутаторе фирмы Сisco на его портах доступа. Создайте сеть, логическая топология которой представлена на рис.9.1. Компьютеры соединены коммутатором Cisco 2960-24ТТ. В таблице 9.1 приведены адреса компьютеров.

Задача данной работы – сделать две независимые группы компьютеров: ПК0, ПК1 и ПК2 должны быть доступны только друг для друга, вторая независимая группа - компьютеры ПК3 и ПК4. Для этого создадим два отдельных VLAN (рис.8.1)

Рис. 8.1. Схема сети с одним коммутатором.

Таблица 8.1.

Компьютер

Порт коммутатора

Для проверки конфигурации хоста ПК0 выполним команду ipconfig. Результат выполнения команды на рисунке 8.2. При желании можно выполнить аналогичную проверку на остальных хостах.

Рис.8.2. Проверка конфигурации хоста

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

Теперь займемся настройкой VLAN 2 и VLAN3, чтобы структурировать сети на коммутаторе и навести в них порядок.

В открывшемся окне перейдите на вкладку CLI. Вы увидите окно консоли. Нажмите Enter, чтобы приступить к вводу команд. Информация, которая в данный момент отражена на консоли, свидетельствует о том что интерфейсы FasteEthernet0/1 – FasteEthernet0/5 находятся в рабочем состоянии.

Перейдем в привилегированный режим выполнив команду enable :

Switch>en

Просмотрим информацию о существующих на коммутаторе VLAN-ах (рис.8.3). Для этого выполним следующую команду:

Switch#sh vl br

Рис.8.3. Просмотр информации о VLAN на коммутаторе.

В результате выполнения команды на экране появится: номера VLAN – первый столбец, название VLAN - второй столбец, состояние VLAN (работает он в данный момент или нет) – третий столбец, порты принадлежащие к данному VLAN – четвертый столбец. Как мы видим по умолчанию на коммутаторе существует пятьVLAN-ов. Все порты коммутатора по умолчанию принадлежат VLAN 1. Остальные четыре VLAN являются служебными и используются не очень часто.

Для реализации сети, которую мы запланировали сделать, создадим на коммутаторе еще два VLAN. Для этого в привилегированном режиме выполните следующую команду:

Switch#conf t

Enter configuration commands, one per line. End with CNTL/Z.

для перехода в режим конфигурации. Вводим команду VLAN 2. Данной командой вы создадите на коммутаторе VLAN с номером 2. Указатель ввода Switch(config)# изменится на Switch(config-vlan)# это свидетельствует о том, что вы конфигурируете уже не весь коммутатор в целом, а только отдельный VLAN, в данном случае VLAN номер 2. Если вы используете команду «vlan x», где x номер VLAN, когда VLAN x еще не создан на коммутаторе, то он будет автоматически создан и вы перейдете к его конфигурированию. Когда вы находитесь в режиме конфигурирования VLAN, возможно изменение параметров выбранной виртуальной сети, например можно изменить ее имя с помощью команды name.

Для достижения поставленной в данном посте задачи, сконфигурируем VLAN 2 следующим образом:

Switch(config)#vlan 2

Switch(config-vlan)#name subnet_10

Switch(config)#

Switch(config-if-range)#switchport mode access

Switch(config-if-range)#switchport access vlan 2

Разберем данную конфигурацию. Как уже говорилось ранее командой VLAN 2, мы создаем на коммутаторе новый VLAN с номером 2. Команда name subnet_10 присваивает имя subnet_10 виртуальной сети номер 2. Выполняя команду interface range fastEthernet 0/1-3 мы переходим к конфигурированию интерфейсов fastEthernet0/1, fastEthernet0/2 и fastEthernet0/3 коммутатора. Ключевое слово range в данной команде, указывает на то, что мы будем конфигурировать не один единственный порт, а целый диапазон портов, в принципе ее можно не использовать, но тогда последние три строки придется заменить на:

Switch(config)#interface fastEthernet 0/1

Switch(config-if)#switchport mode access

Switch(config-if)#switchport access vlan 2

Switch(config)#interface fastEthernet 0/2

Switch(config-if)#switchport mode access

Switch(config-if)#switchport access vlan 2

Switch(config)#interface fastEthernet 0/3

Switch(config-if)#switchport mode access

Switch(config-if)#switchport access vlan 2

Команда switchport mode access конфигурирует выбранный порт коммутатора, как порт доступа (аксесс порт).

Команда switchport access vlan 2 указывает, что данный порт является портом доступа для VLAN номер 2.

Выйдите из режима конфигурирования, дважды набрав команду exit и просмотрите результат конфигурирования (рис.8.4), выполнив уже знакомую нам команду sh vl br еще раз:

Рис.8.4. Распределение портов на VLAN.

На коммутаторе появился еще один VLAN с номером 2 и именем subnet_10, портами доступа которого являются fastEthernet0/1, fastEthernet0/2 и fastEthernet0/3.

Рис.8.5. Распределение портов на VLAN.

В принципе уже все готово и наша сеть настроена. Осталось лишь ее немного протестировать. Перейдите в консоль компьютера ПК0. Пропингуйте с него остальные компьютеры сети. Компьютеры ПК1 и ПК2 доступны, а компьютеры ПК3 и ПК4 не доступны. Все пять компьютеров теоретически должны находится в одной подсети 10.0.0.0/8 и видеть друг друга, на практике они находятся в разных виртуальных локальных сетях и поэтому не могут взаимодействовать между собой.

Лабораторная работа № 11. Настройка VLAN на двух коммутаторах Cisco.

Создайте сеть, логическая топология которой представлена на рис.8.6. Компьютеры соединены коммутатором Cisco 2950-24. В таблице 8.2 приведены адреса компьютеров.

Рис.8.6. Схема сети.

Таблица 8.2.

Компьютер

Коммутатор

Порт коммутатора

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

Теперь займемся настройкой VLAN 20 и VLAN30, чтобы структурировать сети на коммутаторах.

Перейдите к настройке коммутатора Switch1. Откройте его консоль. В открывшемся окне перейдите на вкладку CLI, войдите в привилегированный режим и настройте VLAN 20 и VLAN30 согласно таблице 2.

Создайте на коммутаторе VLAN 20. Для этого в привилегированном режиме выполните следующую команду:

Switch1#conf t

Enter configuration commands, one per line. End with CNTL/Z.

для перехода в режим конфигурации и настройте VLAN 20 и VLAN 30 следующим образом:

Switch1(config)#vlan 20

Switch1(config)#interface fastEthernet 0/1

Switch1(config-if-range)#switchport mode access

Switch1(config-if-range)#switchport access vlan 20

Switch1(config-if-range)#exit

Switch1(config)#vlan 30

Switch1(config)#interface fastEthernet 0/2

Switch1(config-if-range)#switchport mode access

Switch1(config-if-range)#switchport access vlan 30

Просмотрите информацию о существующих на коммутаторе VLAN-ах командой:

Switch1#sh vl br

У вас должен получится результат, показанный на рис.8.7.

Рис. 8.7. Конфигурация Switch1.

Аналогичным образом сконфигурируйте Switch2 (рис. 8.8).

Рис. 8.7. Конфигурация Switch2.

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

Теперь организуем магистраль обмена между коммутаторами. Для этого настроим третий порт на каждом коммутаторе как транковый.

Войдите в консоль коммутатора Switch1 и задайте транковый порт:

Switch1>en

Switch1#conf t

Switch1(config)#interface fastEthernet 0/3

Switch1(config)#switchport mode trunk

Switch1(config)#no shutdown

Switch1(config)#exit

Откройте конфигурацию коммутатора на интерфейсе FastEthernet0/3 и убедитесь, что порт транковый (рис.8.8).

Рис.8.8. Конфигурация интерфейса FastEthernet0/3.

На коммутаторе Switch2 интерфейс FastEthernet0/3 автоматически настроится как транковый.

Теперь компьютеры, входящие в один виллан должны пинговаться. У вас должна появиться связь между компьютерами 2_1 и 2_2, а так же между 3_1 и 3_2. Но компьютеры в другом виллане будут недоступны.

Сохраните схему сети.

Теперь объединим две виртуальные сети с помощью маршрутизатора.

Добавьте в схему сети маршрутизатор, как показано на рис.8.9. Маршрутизатор соединен с интерфейсами fastEthernet 0/4 коммутаторов.

Разобьем нашу сеть 10.0.0.0 на две подсети: 10.2.0.0 и 10.3.0.0. Для этого поменяйте IP адреса и маску подсети на 255.255.0.0, как указано в таблице 8.3.

Таблица 8.3.

Компьютер

Коммутатор

Порт коммутатора

Компьютеры должны пинговаться в пределах одного виллана и одной подсети.

Рис. 8.9. Схема сети.

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

Войдите в конфигурацию первого коммутатора Switch1 и задайте параметры четвертого порта:

Switch1(config)#interface fastEthernet 0/4

Switch1(config-if)#switchport access vlan 20

Проверьте настройки первого коммутатора Switch1 (рис.8.10):

Рис.8.10. Настройки коммутатора Switch1.

Войдите в конфигурацию второго коммутатора Switch2 и задайте параметры четвертого порта:

Switch2(config)#interface fastEthernet 0/4

Switch2(config-if)#switchport access vlan 30

Проверьте настройки второго коммутатора Switch2 (рис.8.11):

Рис.8.11. Настройки коммутатора Switch2.

Войдите в конфигурацию маршрутизатора и настройте IP адреса на маршрутизаторе:

Router1(config-if)#interface fa0/0

Router1(config-if)#ip address 10.2.0.254 255.255.0.0

Router1(config-if)#no shutdown

Router1(config-if)#interface fa0/1

Router1(config-if)#ip address 10.3.0.254 255.255.0.0

Router1(config-if)#no shutdown

С этого момента мы установили маршрутизацию между двумя подсетями. Осталось установить шлюзы на компьютерах (таблица 8.4).

Таблица 8.4.

Компьютер

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

Лабораторная работа № 12. Настройка VLAN в корпоративной сети.

Создайте следующую схему сети (рис.8.12):

Рис.8.12. Схема корпоративной сети.

Состав сети:

Три коммутатора второго уровня распределения 2950-24 (Switch1, Switch2, Switch4);

Центральный коммутатор третьего уровня 3560-24PS (Switch3), выполняющий роль роутера;

Сервер (Server1);

Три подсети по два узла в каждой

Для любого вилана могут быть доступны только узлы этого же вилана и сервер Server1.

В таблице 8.5 и 8.6 приведены данные для установки параметров компьютеров и коммутаторов.

Таблица 8.5. Конфигурация компьютеров.

Компьютер

Коммутатор

Порт коммутатора

Таблица 8.6. Связь коммутаторов по портам.

После настройки всех коммутаторов установите самостоятельно шлюзы на всех компьютерах и сервере.

Сконфигурируйте центральный коммутатор:

Перейдите к конфигурации центрального коммутатора Switch3 и создайте на нем базу VLAN.

1. Создайте VLAN 10:

Switch3>en

Switch3#conf t

Switch3(config)#vlan 10

Switch3(config-vlan)#exit

2. Создайте VLAN 11, VLAN 12 и VLAN 13.

3. Настройте протокол VTP в режиме сервера:

Switch3(config)#vtp domain HOME

Switch3(config)#vtp password HOME

Switch3(config)#vtp mode server

4. Просмотрите информацию о конфигурации VTP:

Switch#sh vtp status

5. Настройте все интерфейсы на транк:

Switch3(config)#int fa0/1

Switch3(config-if)#switchport mode trunk

Switch3(config-if)#exit

и повторите эти настройки для второго и третьего интерфейсов.

Перейдите к конфигурации коммутатора Switch4 и переведите его в режим client:

1. Создайте на коммутаторе VLAN 10 и задайте в нем порт 1 как access порт:

Switch4>en

Switch4#conf t

Switch4(config)#vlan 10

Switch4(config-vlan)#exit

Switch4(config)#int fa0/1

Switch4(config-if)#switchport access vlan 10

Switch4(config-if)#switchport mode access

Switch4(config-if)#no shut

2. Создайте на коммутаторе VLAN 11 и задайте в нем порт 4 как access порт.

3. Создайте на коммутаторе VLAN 12 и задайте в нем порт 2 как access порт.

4. Переведите коммутатор в режим clint:

Switch4(config)#vtp domain HOME

Switch4(config)#vtp password HOME

Switch4(config)#vtp mode client

ВАЖНО ! При вводе имени домена и пароля соблюдайте нужный регистр.

Перейдите к конфигурации коммутатора Switch1 и выподните следующие настройки:

1. Создайте на коммутаторе VLAN 11 и задайте в нем порт 1 как access порт.

2. Создайте на коммутаторе VLAN 13 и задайте в нем порт 2 как access порт.

Перейдите к конфигурации коммутатора Switch2.

1. Создайте на коммутаторе VLAN 12 и задайте в нем порт 2 как access порт.

2. Создайте на коммутаторе VLAN 13 и задайте в нем порт 1 как access порт.

3. Переведите коммутатор в режим client.

Проверьте работоспособность сети на канальном уровне модели OSI.

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

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

ПК1 – ПК2;

ПК3 – ПК4;

ПК5 – ПК6.

Если Вы все сделали правильно, то ping между парами пройдет, если нет – проверьте следующие установки:

Транковыми портами являются: на Switch3 все порты, на Switch1, Switch2 и Switch4 – третий порт;

Соединения интерфейсов на коммутаторах;

Названия и пароли доменов на каждом коммутаторе (команда sh vtp status);

Привязку интерфейсов к вилланам на коммутаторах (команда sh vl br).

Настройка маршрутизации на центральном коммутаторе.

Создадим интерфейсы для каждого VLAN.

Настройка интерфейса для vlan 10 (шлюз по умолчанию):

Switch3(config)#int vlan 10

Switch3(config-if)#ip address 10.10.0.1 255.255.0.0

Switch3(config-if)#no shut

Switch3(config-if)#exit

Повторите эти настройки для каждого VLAN, задавая адрес IP: 10..0.1 и маску /16.

После этого зайдите в настройки каждого компьютера и установите нужный шлюз по умолчанию. Например для ПК1 – 10.11.0.1.

Включите маршрутизацию командой:

Switch3(config)#ip routing

Проверьте работоспособность сети на сетевом уровне модели OSI.

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

Выполним основную задачу работы: для любого вилана могут быть доступны только узлы этого же вилана и сервер Server1.

Для этого введем следующие ограничения на трафик сети:

1 - Разрешить пакеты от любого хоста к серверу.

2 - Разрешить пакеты от сервера до любого хоста.

3 – Трафик от одной подсети к этой же подсети разрешить.

4 – Правило по умолчанию: запретить всё остальное.

Ограничения на трафик сети задаются с помощью команды фильтрации access - list . Данная команда задает критерии фильтрации в списке опций разрешения и запрета, называемом списком доступа. Списки доступа имеют два правила: permit – разрешить и deny – запретить. Данные правила либо пропускают пакет дальше по сети, либо блокируют его доступ.

Более подробно списки доступа будут рассмотрены в лабораторной работе №14.

Открываем центральный коммутатор (Switch3) и меняем его конфигурацию с помощью команды фильтрации access - list :

Switch3(config)#ip access-list extended 100

(создается расширенный список доступа под номером 100)

Switch3(config-ext-nacl)#permit ip any 10.10.0.0 0.0.0.255

Switch3(config-ext-nacl)#permit ip 10.10.0.0 0.0.0.255 any

(разрешается доступ к сети 10.10.0.0/24)

Switch3(config-ext-nacl)#permit ip 10.11.0.0 0.0.0.255 10.11.0.0 0.0.0.255

Switch3(config-ext-nacl)#permit ip 10.12.0.0 0.0.0.255 10.12.0.0 0.0.0.255

Switch3(config-ext-nacl)#permit ip 10.13.0.0 0.0.0.255 10.13.0.0 0.0.0.255

(разрешается: доступ из сети 10.11.0.0/24 в эту же сеть;

доступ из сети 10.12.0.0/24 в эту же сеть;

доступ из сети 10.13.0.0/24 в эту же сеть).

Switch3(config-ext-nacl)#exit

Теперь этот access-list наложим на конкретный интерфейс и применим ко всем VLAN-ам на входящий трафик (опция in на входящий трафик, out на исходящий трафик):

Switch3(config)#int vlan 10

Switch3(config-if)#ip access-group 100 in

Этот шаг повторяем для каждого из VLAN-ов.

В результате получим:

для любого вилана могут быть доступны только узлы этого же вилана и сервер Server1.

Самостоятельная работа №3.

На предприятии имеется два отдела, схема сетей которых представлена на рис.8.13.

Рис.8.13. Схема сетей отделов предприятия.

Отдел 1 – Switch1, отдел 2 – Switch2.

В каждой сети имеется сервер со службами DHCP, DNS и HTTP (на серверах Server1 и Server2 расположены интернет-сайты отделов).

Компьютеры ПК0 и ПК3 с DHCP серверов своих сетей получают параметры IP адреса и шлюз.

Компьютеры ПК1 и ПК2 находятся в отдельной сети в одном VLAN.

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

1 - компьютеры ПК0 и ПК3 должны открывать сайты каждого отдела;

2 – компьютеры ПК1 и ПК2 должны быть доступны только друг для друга.

Контрольные вопросы.

    Для чего создаются виртуальные локальные сети? Каковы их достоинства?

    Как связываются между собой VLAN и порты коммутатора?

    Как обеспечивается общение между узлами разных виртуальных сетей?

    Как обеспечивается управление виртуальными локальными сетями?

    Можно ли построить VLAN на нескольких коммутаторах? Как это сделать?

    Для чего служит идентификатор кадра (tag)? Где он размещается?

    Что такое транк? Как он создается на коммутаторе и маршрутизаторе?

    Какие команды используются для назначения VLAN на интерфейсы?

    Какие команды используются для создания транковых соединений?

    Какие команды используются для верификации VLAN?

6.1 Введение. Технология виртуальных локальных сетей

Виртуальной сетью называется группа узлов сети, трафик которой, в том числе и широковещательный, на канальном уровне полностью изолирован от других узлов сети (рис. 4.39). Это означает, что передача кадров между разными виртуальными сетями на основании адреса канального уровня невозможна, независимо от типа адреса - уникального, группового или широковещательного. В то же время внутри виртуальной сети кадры передаются по технологии коммутации, то есть только на тот порт, который связан с адресом назначения кадра. Виртуальные сети могут пересекаться, если один или несколько компьютеров входят в состав более чем одной виртуальной сети. На рис. 4.39 сервер электронной почты входит в состав 3 и 4 виртуальных сетей. Это значит, что его кадры передаются коммутаторами всем компьютерам, входящим в эти сети. Если же какой-то компьютер входит в состав только виртуальной сети 3, то его кадры до сети 4 доходить не будут, но он может взаимодействовать с компьютерами сети 4 через общий почтовый сервер. Такая схема не полностью защищает виртуальные сети друг от друга -так, широковещательный шторм, возникший на сервере электронной почты, захлестнет сеть 3 и сеть 4.

Рис. 4.39. Виртуальные сети

Говорят, что виртуальная сеть образует домен широковещательного трафика (broadcast domain), по аналогии с доменом коллизий, который образуется повторителями сетей Ethernet.

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

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

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

Рис. Интерсеть, состоящая из сетей, построенных на основе повторителей


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

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

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

При использовании технологии виртуальных сетей в коммутаторах одновременно решаются две задачи:

· повышение производительности в каждой из виртуальных сетей, так как коммутатор передает кадры в такой сети только узлу назначения;

· изоляция сетей друг от друга для управления правами доступа пользователей и создания защитных барьеров на пути широковещательных штормов.

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

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

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

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

Рис. 4.41. Виртуальные сети, построенные на одном коммутаторе

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

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

6.2 Организация виртуальных локальных сетей

Виртуальные сети созданы, чтобы реализовать сегментацию сети на коммутаторах. Таким образом, создание виртуальных локальных сетей (Virtual Local Area Networks – VLAN ), которые представляют собой логическое объединение групп станций сети (рис. 16.1), является одним из основных методов защиты информации в сетях на коммутаторах.

Рис. 16.1. Виртуальные локальные сети VLAN

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

Рабочая станция в виртуальной сети, например Host-1 в сети VLAN1 (рис. 16.1), ограничена общением с сервером в той же самой VLAN1. Виртуальные сети логически сегментируют всю сеть на широковещательные домены так, чтобы пакеты переключались только между портами, которые назначены на ту же самую VLAN (приписаны к одной VLAN). Каждая сеть VLAN состоит из узлов, объединенных единственным широковещательным доменом, образованным приписанными к виртуальной сети портами коммутатора.

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

Для нормального функционирования виртуальных сетей необходимо на коммутаторе сконфигурировать все виртуальные локальные сети и приписать порты коммутатора к соответствующей сети VLAN. Если кадр должен пройти через коммутатор и МАС-адрес назначения известен, то коммутатор только продвигает кадр к соответствующему выходному порту. Если МАС-адрес неизвестен, то происходит широковещательная передача во все порты широковещательного домена, т. е. внутри виртуальной сети VLAN, кроме исходного порта, откуда кадр был получен. Широковещательные передачи снижают безопасность информации .

Управление виртуальными сетями VLAN реализуется через первую сеть VLAN1 и сводится к управлению портами коммутатора. Сеть VLAN1 получила название сеть по умолчанию (default VLAN ). По крайней мере, один порт должен быть в VLAN 1, чтобы управлять коммутатором. Все другие порты на коммутаторе могут быть назначены другим сетям VLAN. Поскольку данная информация известна всем, хакеры пытаются атаковать в первую очередь именно эту сеть. Поэтому на практике администраторы изменяют номер сети по умолчанию, например, на номер VLAN 101.

Каждой виртуальной сети при конфигурировании должен быть назначен IP-адрес сети или подсети с соответствующей маской, для того чтобы виртуальные сети могли общаться между собой. Например, VLAN1 (рис. 16.1) может иметь адрес 192.168.10.0/24, VLAN2 – адрес 192.168.20.0/24, VLAN3 – адрес 192.168.30.0/24. Каждому хосту необходимо задать IP-адрес из диапазона адресов соответствующей виртуальной сети, например, host-1 – адрес 192.168.10.1, host-2 – адрес 192.168.20.1, host-3 – адрес 192.168.20.2, host-7 – адрес 192.168.20.3, host-10 – адрес 192.168.30.4.

Идентификаторы виртуальных сетей (VLAN1, VLAN2, VLAN3 и т. д.) могут назначаться из нормального диапазона 1-1005, в котором номера 1002 – 1005 зарезервированы для виртуальных сетей технологий Token Ring и FDDI. Существует также расширенный диапазон идентификаторов 1006-4094. Однако для облегчения управления рекомендуется, чтобы сетей VLAN было не более 255 и сети не расширялись вне Уровня 2 коммутатора.

Таким образом, сеть VLAN является широковещательным доменом, созданным одним или более коммутаторами. На рис. 16.2 три виртуальных сети VLAN созданы одним маршрутизатором и тремя коммутаторами. При этом существуют три отдельных широковещательных домена (сеть VLAN 1, сеть VLAN 2, сеть VLAN 3). Маршрутизатор управляет трафиком между сетями VLAN, используя маршрутизацию Уровня 3.

Рис. 16.2. Три виртуальных сети VLAN

Если рабочая станция сети VLAN 1 захочет послать кадр рабочей станции в той же самой VLAN 1, адресом назначения кадра будет МАС- адрес рабочей станции назначения. Если же рабочая станция сети VLAN 1 захочет переслать кадр рабочей станции сети VLAN 2, кадры будут переданы на МАС-адрес интерфейса F0/0 маршрутизатора. То есть маршрутизация производится через IP-адрес интерфейса F0/0 маршрутизатора виртуальной сети VLAN 1.

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

При построении сети на нескольких коммутаторах необходимо выделить дополнительные порты для объединения портов разных коммутаторов, приписанных к одноименным виртуальным сетям (рис. 16.3). Дополнительных пар портов двух коммутаторов должно быть выделено столько, сколько создано сетей VLAN.

Рис. 16.3. Объединение виртуальных сетей двух коммутаторов

Поскольку кадры данных могут быть получены коммутатором от любого устройства, присоединенного к любой виртуальной сети, при обмене данными между коммутаторами в заголовок кадра добавляется уникальный идентификатор кадра тег (tag) виртуальной сети, который определяет VLAN каждого пакета. Стандарт IEEE 802.1Q предусматривает введение поля меток в заголовок кадра, содержащего два байта (табл. 16.1).

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

Рис. 14.10. Виртуальные локальные сети.

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

Виртуальные локальные сети могут перекрываться, если один или несколько компьютеров входят в состав более чем одной виртуальной сети. На рис. 14.10 сервер электронной почты входит в состав виртуальных сетей 3 и 4. Это означает, что его кадры передаются коммутаторами всем компьютерам, входящим в эти сети. Если же какой-то компьютер входит в состав только виртуальной сети 3, то его кадры до сети 4 доходить не будут, но он может взаимодействовать с компьютерами сети 4 через общий почтовый сервер. Такая схема защищает виртуальные сети друг от друга не полностью, например, широковещательный шторм, возникший на сервере электронной почты, затопит и сеть 3, и сеть 4.

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

      Назначение виртуальных сетей

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

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

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

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

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

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

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

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

Рис. 14.11. Составная сеть, состоящая из сетей, построенных на основе повторителей

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

Технология виртуальных сетей долгое время не стандартизировалась, хотя и была реализована в очень широком спектре моделей коммутаторов разных производителей. Положение изменилось после принятия в 1998 году стандарта IEEE 802.1Q, который определяет базовые правила построения виртуальных локальных сетей, не зависящие от протокола канального уровня, поддерживаемого коммутатором.

      Создание виртуальных сетей на базе одного коммутатора

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

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

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

Рис. 14.12. Виртуальные сети, построенные на одном коммутаторе

      Создание виртуальных сетей на базе нескольких коммутаторов

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

Рис. 14.13. Построение виртуальных сетей на нескольких коммутаторах с группированием портов

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

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

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

Дополнительное поле с пометкой о номере виртуальной сети используется только тогда, когда кадр передается от коммутатора к коммутатору, а при передаче кадра конечному узлу оно обычно удаляется. При этом модифицируется протокол взаимодействия «коммутатор-коммутатор», а программное и аппаратное обеспечение конечных узлов остается неизменным.

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

Тег VLAN не является обязательным для кадров Ethernet. Кадр, у которого имеется такой заголовок, называют помеченным (tagged frame). Коммутаторы могут одновременно работать как с помеченными, так и с непомеченными кадрами. Из-за добавления тега VLAN максимальная длина поля данных уменьшилась на 4 байта.

Для того чтобы оборудование локальных сетей могло отличать и понимать помеченные кадры, для них введено специальное значение поля EtherType, равное 0x8100. Это значение говорит о том, что за ним следует поле TCI, а не стандартное поле данных. Обратите внимание, что в помеченном кадре за полями тега VLAN следует другое поле EtherType, указывающее тип протокола, данные которого переносятся полем данных кадра.

В поле TCI находится 12-битпое поле номера (идентификатора) VLAN, называемого VID. Разрядность поля VID позволяет коммутаторам создавать до 4096 виртуальных сетей.

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

Для упрощения конфигурирования сети в стандарте 802.1Q появляются понятия линии доступа и транка.

Линия доступа связывает порт коммутатора (называемый в этом случае портом доступа) с компьютером, принадлежащим некоторой виртуальной локальной сети.

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

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

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

Для более наглядного описания вернемся к рассмотренному ранее примеру сети. Нарис. 14.15 показано, как решается задача избирательного доступа к серверам на основе техники VLAN.

Рис. 14.15. Разбиение сети на две виртуальные локальные сети

Чтобы решить эту задачу, можно организовать в сети две виртуальные локальные сети, VLAN2 и VLAN3 (напомним, что сеть VLAN1 уже существует по умолчанию - это наша исходная сеть), приписан один набор компьютеров и серверов к VLAN2, а другой -KVLAN3.

Для приписывания конечных узлов к определенной виртуальной локальной сети соответствующие порты объявляются портами доступа этой сети путем назначения им соответствующего идентификатора VID. Например, порт 1 коммутатора SW1 должен быть объявлен портом доступа VLAN2 путем назначения ему идентификатора VID2, то же самое должно быть проделано с портом 5 коммутатора SW1, портом 1 коммутатора SW2 1 портом 1 коммутатора SW3. Порты доступа сети VLAN3 должны получить идентификатор VID3.

В пашей сети нужно также организовать транки - те линии связи, которые соединяют между собой порты коммутаторов. Порты, подключенные к транкам, не добавляют и не удаляют теги, они просто передают кадры в неизменном виде. В нашем примере такими портами должны быть порты 6 коммутаторов SW1 и SW2, а также порты 3 и 4 коммутатора ЩЗ. Порты в нашем примере должны поддерживать сети VLAN2 и VLAN3 (и VLAN1, если в сети есть узлы, явно не приписанные ни к одной виртуальной локальной сети).

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

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

Функциональные возможности современных коммутаторов позволяют организовывать виртуальные сети (VLAN-сетей) для создания гибкой сетевой инфраструктуры. В настоящее время VLAN-сети еще не получили широкого распространения, особенно в небольших корпоративных сетях. Во многом это связано с тем, что конфигурирование коммутаторов для организации VLAN-сетей весьма непростое дело, особенно если инфраструктура сети включает несколько коммутаторов. Кроме того, конфигурирование коммутаторов при создании VLAN-сетей, равно как и настройка других функциональных возможностей, может значительно отличаться у коммутаторов от различных фирм, вследствие чего известные производители сетевого оборудования, такие как Cisco, HP, 3Com, Allied Telesyn, Avaya, устраивают специальные курсы по работе с их оборудованием. Понятно, что упрощать конфигурирование своего оборудования, делать этот процесс интуитивно понятным и простым и уж тем более вырабатывать общие соглашения и единый интерфейс по настройке оборудования от разных производителей — явно не в интересах самих производителей, однако пользователи вполне способны самостоятельно разобраться во многих возможностях коммутаторов. Поэтому в данной статье мы рассмотрим возможности современных коммутаторов по организации виртуальных сетей и расскажем о базовых принципах их конфигурирования.

Назначение виртуальных сетей

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

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

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

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

Типы виртуальных сетей

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

Существует несколько способов построения виртуальных сетей, но сегодня в коммутаторах главным образом реализуется технология группировки портов или используется спецификация IEEE 802.1Q.

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

иртуальные сети на основе группировки портов (Port-based) обычно реализуются в так называемых Smart-коммутаторах или в управляемых коммутаторах — как дополнение к возможности организации VLAN на базе стандарта IEEE 802.1Q.

Данный способ создания виртуальных сетей достаточно прост и, как правило, не вызывает проблем. Каждый порт коммутатора приписывается к той или иной виртуальной сети, то есть порты группируются в виртуальные сети. Решение о продвижении сетевого пакета в этой сети основывается на MAC-адресе получателя и ассоциированного с ним порта. Если к порту, которому назначена принадлежность к определенной виртуальной сети, например к VLAN#1, подключить ПК пользователя, то этот ПК автоматически будет принадлежать сети VLAN#1. Если же к данному порту подключается коммутатор, то все порты этого коммутатора также будут принадлежать VLAN#1 (рис. 1).

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

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

Рис. 2. Создание разделяемого ресурса между несколькими виртуальными сетями с использованием технологии группировки портов

Описываемая технология обладает рядом преимуществ в сравнении с использованием стандарта IEEE 802.1Q, но имеет и свои недостатки.

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

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

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

Рис. 3. Реализация виртуальных сетей на основе группировки портов при использовании двух коммутаторов

Пусть необходимо, чтобы часть портов первого и второго коммутаторов относилась к VLAN#1, а другая часть — к VLAN#2. Для этого нужно, во-первых, чтобы оба коммутатора позволяли не только организовывать виртуальные сети на основе группировки портов, но и распространять такие сети на несколько коммутаторов (подобная функция реализована далеко не у всех коммутаторов), во-вторых, чтобы между коммутаторами было установлено столько физических соединений, сколько создано виртуальных сетей. Рассмотрим два шестипортовых коммутатора. Пусть в первом коммутаторе порты 1 и 2 относятся к VLAN#1, а порты 3 и 4 — к VLAN#2; во втором коммутаторе порты 1, 2 и 3 относятся к VLAN#1, а порт 4 — к VLAN#2. Чтобы пользователи VLAN#1 первого коммутатора могли общаться с пользователями VLAN#1 второго коммутатора, эти коммутаторы должны быть связаны между собой портами, относящимися к VLAN#1 (например, порт 5 первого и второго коммутаторов необходимо приписать к VLAN#1). Аналогично, для общения пользователей VLAN#2 первого коммутатора с пользователями VLAN#2 второго коммутатора следует связать эти коммутаторы через порты, приписанные к VLAN#2 (это могут быть порты 6 на обоих коммутаторах). Таким образом, проблема масштабируемости виртуальных сетей на основе технологии группировки портов решается (правда, не во всех случаях) за счет установления избыточных связей между коммутаторами.

Виртуальные сети на основе стандарта IEEE 802.1Q

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

К кадру Ethernet добавляется метка (Tag) длиной 4 байта — такие кадры называют кадрами с метками (Tagged frame). Дополнительные биты содержат информацию по принадлежности кадра Ethernet к виртуальной сети и о его приоритете (рис. 4).

Добавляемая метка кадра включает в себя двухбайтовое поле TPID (Tag Protocol Identifier) и двухбайтовое поле TCI (Tag Control Information). Поле TCI, в свою очередь, состоит из полей Priority, CFI и VID. Поле Priotity длиной 3 бита задает восемь возможных уровней приоритета кадра. Поле VID (VLAN ID) длиной 12 бит является идентификатором виртуальной сети. Эти 12 бит позволяют определить 4096 различных виртуальных сетей, однако идентификаторы 0 и 4095 зарезервированы для специального использования, поэтому всего в стандарте 802.1Q возможно определить 4094 виртуальные сети. Поле CFI (Canonical Format Indicator) длиной 1 бит зарезервировано для обозначения кадров сетей других типов (Token Ring, FDDI), передаваемых по магистрали Ethernet, и для кадров Ethernet всегда равно 0.

Изменение формата кадра Ethernet приводит к тому, что сетевые устройства, не поддерживающие стандарт IEEE 802.1Q (такие устройства называют Tag-unaware), не могут работать с кадрами, в которые вставлены метки, а сегодня подавляющее большинство сетевых устройств (в частности, сетевые Ethernet-контроллеры конечных узлов сети) не поддерживают этот стандарт. Поэтому для обеспечения совместимости c устройствами, поддерживающими стандарт IEEE 802.1Q (Tag-aware-устройства), коммутаторы стандарта IEEE 802.1Q должны поддерживать как традиционные Ethernet-кадры, то есть кадры без меток (Untagged), так и кадры с метками (Tagged).

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

Правила входящего порта (Ingress rules)

Рассмотрим более подробно процесс передачи кадра через коммутатор (рис. 5). По отношению к трафику каждый порт коммутатора может быть как входным, так и выходным. После того как кадр принят входным портом коммутатора, решение о его дальнейшей обработке принимается на основании предопределенных правил входного порта (Ingress rules). Поскольку принимаемый кадр может относиться как к типу Tagged, так и к типу Untagged, то правилами входного порта определяется, какие типы кадров должны приниматься портом, а какие отфильтровываться. Возможны следующие варианты: прием только кадров типа Tagged, прием только кадров типа Untagged, прием кадров обоих типов. По умолчанию для всех коммутаторов правилами входного порта устанавливается возможность приема кадров обоих типов.

Рис. 5. Процесс продвижения кадров в коммутаторе, совместимом со стандартом IEEE 802.1Q

Если правилами входного порта определено, что он может принимать кадр Tagged, в котором имеется информация о принадлежности к конкретной виртуальной сети (VID), то этот кадр передается без изменения. А если определена возможность работы с кадрами типа Untagged, в которых не содержится информации о принадлежности к виртуальной сети, то прежде всего такой кадр преобразуется входным портом коммутатора к типу Tagged (напомним, что внутри коммутатора все кадры должны иметь метки о принадлежности к виртуальной сети).

Чтобы такое преобразование стало возможным, каждому порту коммутатора присваивается уникальный PVID (Port VLAN Identifier), определяющий принадлежность порта к конкретной виртуальной сети внутри коммутатора (по умолчанию все порты коммутатора имеют одинаковый идентификатор PVID=1). Кадр типа Untagged преобразуется к типу Tagged, для чего дополняется меткой VID (рис. 6). Значение поля VID входящего Untagged-кадра устанавливается равным значению PVID входящего порта, то есть все входящие Untagged-кадры автоматически приписываются к той виртуальной сети внутри коммутатора, к которой принадлежит входящий порт.

Правила продвижения пакетов (Forwarding Process)

После того как все входящие кадры отфильтрованы, преобразованы или оставлены без изменения в соответствии в правилами входящего порта, решение об их передаче к выходному порту основывается на предопределенных правилах продвижения пакетов. Правило продвижения пакетов внутри коммутатора заключается в том, что пакеты могут передаваться только между портами, ассоциированными с одной виртуальной сетью. Как уже отмечалось, каждому порту присваивается идентификатор PVID, который используется для преобразования принимаемых Untagged-кадров, а также для определения принадлежности порта к виртуальной сети внутри коммутатора с идентификатором VID=PVID. Таким образом, порты с одинаковыми идентификаторами внутри одного коммутатора ассоциируются с одной виртуальной сетью. Если виртуальная сеть строится на базе одного коммутатора, то идентификатора порта PVID, определяющего его принадлежность к виртуальной сети, вполне достаточно. Правда, создаваемые таким образом сети не могут перекрываться, поскольку каждому порту коммутатора соответствует только один идентификатор. В этом смысле создаваемые виртуальные сети не обладали бы такой гибкостью, как виртуальные сети на основе портов. Однако стандарт IEEE 802.1Q с самого начала задумывался для построения масштабируемой инфраструктуры виртуальных сетей, включающей множество коммутаторов, и в этом состоит его главное преимущество по сравнению с технологией образования VLAN на основе портов. Но для того, чтобы расширить сеть за пределы одного коммутатора, одних идентификаторов портов недостаточно, поэтому каждый порт может быть ассоциирован с несколькими виртуальными сетями, имеющими различные идентификаторы VID.

Если адрес назначения пакета соответствует порту коммутатора, который принадлежит к той же виртуальной сети, что и сам пакет (могут совпадать VID пакета и VID порта или VID пакета и PVID порта), то такой пакет может быть передан. Если же передаваемый кадр принадлежит к виртуальной сети, с которой выходной порт никак не связан (VID пакета не соответствует PVID/VID порта), то кадр не может быть передан и отбрасывается.

Правила выходного порта (Egress rules)

После того как кадры внутри коммутатора переданы на выходной порт, их дальнейшее преобразование зависит от правил выходного порта. Как уже говорилось, трафик внутри коммутатора создается только пакетами типа Tagged, а входящий и исходящий трафики могут быть образованы пакетами обоих типов. Соответственно правилами выходного порта (правило контроля метки — Tag Control) определяется, следует ли преобразовывать кадры Tagged к формату Untagged.

Каждый порт коммутатора может быть сконфигурирован как Tagged или Untagged Port. Если выходной порт определен как Tagged Port, то исходящий трафик будет создаваться кадрами типа Tagged с информацией о принадлежности к виртуальной сети. Следовательно, выходной порт не меняет тип кадров, оставляя их такими же, какими они были внутри коммутатора. К указанному порту может быть подсоединено только устройство, совместимое со стандартом IEEE 802.1Q, например коммутатор или сервер с сетевой картой, поддерживающей работу с виртуальными сетями данного стандарта.

Если же выходной порт коммутатора определен как Untagged Port, то все исходящие кадры преобразуются к типу Untagged, то есть из них удаляется дополнительная информация о принадлежности к виртуальной сети. К такому порту можно подключать любое сетевое устройство, в том числе коммутатор, не совместимый со стандартом IEEE 802.1Q, или ПК конечных клиентов, сетевые карты которых не поддерживают работу с виртуальными сетями этого стандарта.

Конфигурирование виртуальных сетей стандарта IEEE 802.1Q

Рассмотрим конкретные примеры конфигурирования виртуальных сетей стандарта IEEE 802.1Q.

Чтобы сформировать VLAN-сеть в соответствии со стандартом IEEE 802.1Q, необходимо проделать следующие действия:

  • задать имя виртуальной сети (например, VLAN#1) и определить ее идентификатор (VID);
  • выбрать порты, которые будут относиться к данной виртуальной сети;
  • задать правила входных портов виртуальной сети (возможность работы с кадрами всех типов, только с кадрами Untagged или только с кадрами Tagged);
  • установить одинаковые идентификаторы PVID портов, входящих в виртуальную сеть;
  • задать для каждого порта виртуальной сети правила выходного порта, сконфигурировав их как Tagged Port или Untagged Port.

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

Таблица 1. Задание характеристик портов при создании виртуальных сетей на базе одного коммутатора

Примеры построения VLAN-сетей на основе коммутаторов, совместимых со стандартом IEEE 802.1Q

А теперь рассмотрим типичные примеры построения виртуальных сетей на основе коммутаторов, поддерживающих стандарт IEEE 802.1Q.

Если имеется всего один коммутатор, к портам которого подключаются компьютеры конечных пользователей, то для создания полностью изолированных друг от друга виртуальных сетей все порты должны быть объявлены как Untagget Ports для обеспечения совместимости с сетевыми Ethernet-контроллерами клиентов. Принадлежность узлов сети к той или иной VLAN определяется заданием идентификатора порта PVID.

Возьмем восьмипортовый коммутатор, на базе которого создаются три изолированные виртуальные сети VLAN#1, VLAN#2 и VLAN#3 (рис. 7). Первому и второму портам коммутатора присваивается идентификатор PVID=1. Поскольку идентификаторы этих портов совпадают с идентификатором первой виртуальной сети (PVID=VID), то данные порты образуют виртуальную сеть VLAN#1 (табл. 1). Если портам 3, 5 и 6 присвоить PVID=2 (совпадает с идентификатором VID VLAN#2), то вторая виртуальная сеть будет образована портами 3, 4 и 8. Аналогично формируется и VLAN#3 на базе портов 5, 6 и 7. Для обеспечения совместимости с конечным оборудованием (предполагается, что к портам коммутатора подключаются ПК клиентов сети, сетевые карты которых не совместимы со стандартом IEEE 802.1Q) все порты необходимо сконфигурировать как Untagged.

Рис. 7. Организация трех сетей VLAN по стандарту IEEE 802.1Q на основе одного коммутатора

Если инфраструктура сети включает несколько коммутаторов, поддерживающих стандарт IEEE 802.1Q, то для связи коммутаторов друг с другом необходимо использовать несколько иной принцип конфигурирования. Рассмотрим два шестипортовых коммутатора, которые поддерживают стандарт IEEE 802.1Q и на основе которых необходимо сконфигурировать три изолированные друг от друга виртуальные сети VLAN#1, VLAN#2 и VLAN#3.

Пусть к первой виртуальной сети относятся клиенты, подключенные к портам 1 и 2 первого коммутатора и к портам 5 и 6 второго коммутатора. К сети VLAN#2 относятся клиенты, подключенные к порту 3 первого коммутатора и порту 1 второго коммутатора, а к сети VLAN#3 относятся клиенты, подключенные к портам 4 и 5 первого коммутатора и портам 2 и 3 второго коммутатора. Порт 6 первого коммутатора и порт 4 второго коммутатора используются для связи коммутаторов друг с другом (рис. 8).

Рис. 8. Организация трех VLAN-сетей по стандарту IEEE 802.1Q на основе двух коммутаторов

Чтобы сконфигурировать указанные виртуальные сети, необходимо прежде всего определить на каждом из коммутаторов по три виртуальные сети VLAN#1, VLAN#2 и VLAN#3, задав их идентификаторы (VID=1 для VLAN#1, VID=2 для VLAN#2 и VID=3 для VLAN#3).

На первом коммутаторе порты 1 и 2 должны входить в состав VLAN#1, для чего этим портам присваивается PVID=1. Порт 2 первого коммутатора необходимо приписать к VLAN#2, для чего идентификатору порта присваивается значение PVID=2. Аналогично, для портов 5 и 6 первого коммутатора устанавливаются идентификаторы PVID=3, так как эти порты относятся к VLAN#3. Все указанные порты первого коммутатора должны быть сконфигурированы как Untagged Port для обеспечения совместимости с сетевыми картами клиентов.

Порт 4 первого коммутатора используется для связи со вторым коммутатором и должен передавать кадры всех трех виртуальных сетей без изменения второму коммутатору. Поэтому его необходимо сконфигурировать как Tagged Port и включить в состав всех трех виртуальных сетей (ассоциировать с VID=1, VID=2 и VID=3). При этом идентификатор порта не имеет значения и может быть любым (в нашем случае PVID=4).

Аналогичная процедура конфигурации виртуальных сетей осуществляется и на втором коммутаторе. Конфигурации портов двух коммутаторов представлены в табл. 2.

Таблица 2. Задание характеристик портов при создании виртуальных сетей на основе двух коммутаторов

Автоматическая регистрация в виртуальных сетях стандарта IEEE 802.1Q

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

Существует и альтернативный способ конфигурирования виртуальных сетей, а создаваемые при этом сети называются динамическими виртуальными сетями (Dynamic VLAN). В таких сетях пользователи могут автоматически регистрироваться в сети VLAN, для чего служит специальный протокол регистрации GVRP (GARP VLAN Registration Protocol). Этот протокол определяет способ, посредством которого коммутаторы обмениваются информацией о сети VLAN, чтобы автоматически зарегистрировать членов VLAN на портах во всей сети.

Все коммутаторы, поддерживающие функцию GVRP, могут динамически получать от других коммутаторов (и, следовательно, передавать другим коммутаторам) информацию VLAN о регистрации, включающую данные об элементах текущей VLAN, о порте, через который можно осуществлять доступ к элементам VLAN и т.д. Для связи одного коммутатора с другим в протоколе GVRP используется сообщения GVRP BPDU (GVRP Bridge Protocol Data Units). Любое устройство с поддержкой протокола GVPR, получающее такое сообщение, может динамически подсоединяться к той сети VLAN, о которой оно оповещено.

Ethernet является устройством канального уровня, то в соответствии с логикой работы он будет рассылать широковещательные кадры через все порты. Хотя трафик с конкретными адресами (соединения "точка - точка") изолирован парой портов, широковещательные кадры передаются во всю сеть (на каждый порт ). Широковещательные кадры - это кадры, передаваемые на все узлы сети. Они необходимы для работы многих сетевых протоколов, таких как ARP , BOOTP или DHCP . С их помощью рабочая станция оповещает другие компьютеры о своем появлении в сети. Так же рассылка широковещательных кадров может возникать из-за некорректно работающего сетевого адаптера. Широковещательные кадры могут привести к нерациональному использованию полосы пропускания, особенно в крупных сетях. Для того чтобы этого не происходило, важно ограничить область распространения широковещательного трафика (эта область называется широковещательным доменом ) - организовать небольшие широковещательные домены , или виртуальные локальные сети (Virtual LAN, VLAN ).

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

VLAN обладают следующими преимуществами:

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

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

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

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