Как сделать доступ между vlan

Проброс VLAN-ов через интернет

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

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

На помощь пришёл проект Open vSwitch — программный коммутатор с поддержкой VLAN (IEEE 802.1q).

Как сделать доступ между vlan. Смотреть фото Как сделать доступ между vlan. Смотреть картинку Как сделать доступ между vlan. Картинка про Как сделать доступ между vlan. Фото Как сделать доступ между vlan
Схема виртуальной сети.

Настройка туннеля OpenVPN

По настройке OpenVPN в сети и на Хабре достаточно много информации, поэтому сразу приведу конфигурацию с некоторыми комментариями.

local W.X.Y.Z
dev tap

ca /etc/openvpn/keys/ca.crt
cert /etc/openvpn/keys/server.crt
key /etc/openvpn/keys/server.key
dh /etc/openvpn/keys/dh1024.pem

tls-server
tls-auth /etc/openvpn/keys/ta.key 0

keepalive 10 60
ping-timer-rem
persist-tun
persist-key
daemon

user nobody
group nobody

client
dev tap
remote W.X.Y.Z

ca /etc/openvpn/keys/ca.crt
cert /etc/openvpn/keys/client.crt
key /etc/openvpn/keys/client.key
tls-auth /etc/openvpn/keys/ta.key 1

keepalive 10 60
ping-timer-rem
persist-tun
persist-key
daemon
resolv-retry infinite

user nobody
group nobody

Используется устройство tap для возможности передавать ethernet-кадры.

Скрипт bridge.sh используется для внесения сетевого tap-устройства в виртуальный свитч (ovs). При рестарте OpenVPN-демона необходимо вывести и повторно внести tap-устройство в свитч, без данного костыля трафик от виртуального свитча на него не поступает. Данную проблему пока-что не удалось решить красиво.
Как не сложно догадаться, параметр tunks описывает возможность виртуального порта передавать тегируемый трафик указанных вланов.

Настройка open vSwitch

В большинстве современных дистрибутивов open vSwitch уже присутствует целиком. В CentOS 6 присутствует только модуль ядра. Пакет с демоном виртуального свитча придётся искать в сторонних репозиториях, либо собирать самому. Информации по сборке пакета в сети достаточно, этот процесс не должен вызвать каких-либо затруднений. После установки и запуска демона необходимо создать виртуальное устройство свитча. Для этого создаётся конфигурационный файл интерфейса ifcfg-ovs0:

что соответствует команде

Настройка интерфейсов

Настройка портов виртуального свитча практически ничем не отличаются от настроек обычных системных сетевых интерфейсов. Для внесения интерфейса в свитч создаётся конфигурационный файл интерфейса ifcfg-eth0.197:

Что соответствует команде:

Замечу, что при добавлении интерфейса в виртуальный свитч — ip-адрес этого интерфейса перестаёт быть доступным. При необходимости на севере использования ip-адреса на данном интерфейсе VLAN-а нужно перенести его на виртуальный внутренний порт свитча. Конфигурационный файл ifcfg-vi197 в данном случае будет выглядеть так:

Что соответствует команде:

По аналогии создаются остальные интерфейсы VLAN-ов.

Просмотреть текущее состояние портов виртуального свитча можно командой:

В моём случае конфигурация получилась такая:

Заключение

В итоге получаем прохождение тегированного трафика по шифрованному каналу через интернет.

Решение получилось легко масштабируемым, в него легко добавлять как новые VLAN-ы, так и новые удаленные сети.

Источник

Командная строка управления устройствами CLI. Виртуальные локальные сети VLAN

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

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

Практическая работа 5-1-2. VLAN с одним коммутатором

Для рисования ПК выбираем в конечных устройства настольный компьютер и, удерживая Ctrl, (так быстрее) нажмите 1 раз на ПК а затем рисуйте нужное кол-во ПК, щелкая мышкой ( рис. 5.12). Этим приемом вы сможете за один раз нарисовать сразу 4 ПК.

Как сделать доступ между vlan. Смотреть фото Как сделать доступ между vlan. Смотреть картинку Как сделать доступ между vlan. Картинка про Как сделать доступ между vlan. Фото Как сделать доступ между vlan

Как сделать доступ между vlan. Смотреть фото Как сделать доступ между vlan. Смотреть картинку Как сделать доступ между vlan. Картинка про Как сделать доступ между vlan. Фото Как сделать доступ между vlan

Имя VLAN1 используется по умолчанию, его лучше в нашем примере не использовать.

Как сделать доступ между vlan. Смотреть фото Как сделать доступ между vlan. Смотреть картинку Как сделать доступ между vlan. Картинка про Как сделать доступ между vlan. Фото Как сделать доступ между vlan

В виртуальной сети VLAN2 настраиваем порты коммутатора Fa0/1 и Fa0/2 как access порты, т.е. порты для подключения пользователей ( рис. 5.15).

Как сделать доступ между vlan. Смотреть фото Как сделать доступ между vlan. Смотреть картинку Как сделать доступ между vlan. Картинка про Как сделать доступ между vlan. Фото Как сделать доступ между vlan

Теперь командой show vlan можно проверить результат ( рис. 5.16).

Как сделать доступ между vlan. Смотреть фото Как сделать доступ между vlan. Смотреть картинку Как сделать доступ между vlan. Картинка про Как сделать доступ между vlan. Фото Как сделать доступ между vlan

Далее работаем с VLAN3 ( рис. 5.17).

Как сделать доступ между vlan. Смотреть фото Как сделать доступ между vlan. Смотреть картинку Как сделать доступ между vlan. Картинка про Как сделать доступ между vlan. Фото Как сделать доступ между vlan

В виртуальной сети VLAN3 настраиваем порты коммутатора Fa0/3 и Fa0/4 как access порты, т.е. порты для подключения пользователей, затем командой show vlan можно проверить и убедиться, что мы создали в сети 2 сегмента на разные порты коммутатора ( рис. 5.18).

Как сделать доступ между vlan. Смотреть фото Как сделать доступ между vlan. Смотреть картинку Как сделать доступ между vlan. Картинка про Как сделать доступ между vlan. Фото Как сделать доступ между vlan

Настраиваем IP адреса компьютеров – для VLAN2 из сети 192.168.2.0, а для VLAN3 из сети 192.168.3.0 ( рис. 5.19).

Как сделать доступ между vlan. Смотреть фото Как сделать доступ между vlan. Смотреть картинку Как сделать доступ между vlan. Картинка про Как сделать доступ между vlan. Фото Как сделать доступ между vlan

Проверяем связь ПК в пределах VLAN и отсутствие связи между VLAN2 и VLAN3 ( рис. 5.20).

Как сделать доступ между vlan. Смотреть фото Как сделать доступ между vlan. Смотреть картинку Как сделать доступ между vlan. Картинка про Как сделать доступ между vlan. Фото Как сделать доступ между vlan

Итак, на компьютере ПК0 мы убедились, что компьютер в своем сегменте видит ПК, а в другом сегменте – нет.

Пример описанной выше и полностью настроенной VLAN ( файл task-5-2.pkt) прилагается.

Практическая работа 5-2-1. Настройка виртуальной сети на коммутаторе 2960

Как сделать доступ между vlan. Смотреть фото Как сделать доступ между vlan. Смотреть картинку Как сделать доступ между vlan. Картинка про Как сделать доступ между vlan. Фото Как сделать доступ между vlan

Настройка коммутатора

Первоначально сформируем VLAN2. Дважды щелкните левой кнопкой мыши по коммутатору. В открывшемся окне перейдите на вкладку CLI. Вы увидите окно консоли. Нажмите на клавишу Enter для того, чтобы приступить к вводу команд. Перейдем в привилегированный режим, выполнив команду enable:

По умолчанию все ПК объединены в VLAN1. Для реализации сети, которую мы запланировали, создадим на коммутаторе еще два VLAN (2 и 3). Для этого в привилегированном режиме выполните следующую команду для перехода в режим конфигурации:

Теперь вводим команду VLAN 2. Данной командой вы создадите на коммутатореVLANс номером 2. Указатель ввода Switch (config)# изменится на Switch (config-vlan)# это свидетельствует о том, что вы конфигурируете уже не весь коммутатор в целом, а только отдельныйVLAN, в данном случаеVLANномер 2 ( рис. 5.22).

Как сделать доступ между vlan. Смотреть фото Как сделать доступ между vlan. Смотреть картинку Как сделать доступ между vlan. Картинка про Как сделать доступ между vlan. Фото Как сделать доступ между vlan

Командой VLAN2, мы создаем на коммутаторе новый VLAN с номером 2. Команда name subnet_5 присваивает имя subnet_5 виртуальной сети номер 2. Выполняя команду interface range fast Ethernet 0/1-3 мы переходим к конфигурированию интерфейсов fastEthernet 0/1, fastEthernet 0/2 и fastEthernet 0/3 коммутатора. Слово range в данной команде, указывает на то, что мы будем конфигурировать не один порт, а диапазон портов. Команда switch port mode access конфигурирует выбранный порт коммутатора, как порт доступа (access порт). Команда switch port access vlan 2 указывает, что данный порт является портом доступа для VLAN номер 2.

Выйдите из режима конфигурирования, дважды набрав команду exit и просмотрите результат конфигурирования ( рис. 5.23), выполнив команду sh vl br. Как видим, на коммутаторе появился VLAN с номером 2 и именем subnet_5, портами доступа которого являются fastEthernet 0/1, fastEthernet 0/2 и fastEthernet 0/3.

Как сделать доступ между vlan. Смотреть фото Как сделать доступ между vlan. Смотреть картинку Как сделать доступ между vlan. Картинка про Как сделать доступ между vlan. Фото Как сделать доступ между vlan

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

Далее аналогичным образом создадим VLAN 3 с именем subnet_6 и сделаем его портами доступа интерфейсы fastEthernet 0/4 и fastEthernet 0/5. Результат показан на рис. 5.24.

Как сделать доступ между vlan. Смотреть фото Как сделать доступ между vlan. Смотреть картинку Как сделать доступ между vlan. Картинка про Как сделать доступ между vlan. Фото Как сделать доступ между vlan

Проверка результатов работы

Сеть настроена и нужно ее протестировать. Результат положителен, если в пределах своей VLAN компьютеры доступны, а компьютеры из разных VLAN не доступны ( рис. 5.25). У нас все пять компьютеров находя в одной сети 10.0.0.0/8, но они находятся в разных виртуальных локальных сетях.

Как сделать доступ между vlan. Смотреть фото Как сделать доступ между vlan. Смотреть картинку Как сделать доступ между vlan. Картинка про Как сделать доступ между vlan. Фото Как сделать доступ между vlan

Пример описанной выше и полностью настроенной VLAN ( файл task-5-1.pkt) прилагается.

Источник

Как сделать доступ между vlan

Прошу не судить строго. Я совсем новичок в коммутаторах и построения сетей.

Не понимаю, что я делаю не так.

Беру два коммутатора. Агрегация (QTech QSW-8300) и Доступ (QTech QSW-2800). Создаю и там и там два Влана. Один «Влан 7» для управления, другой «Влан 5» клиентский. Клиентский «Влан 5» имеет на Агрегации IP-адрес 192.168.11.1. Этот адрес является шлюзом для клиента и клиент к нему имеет полный доступ. Пингует его, и через него же имеет интернет и так далее.

Для влана управления создан «Влан 7». С подсетью 192.168.0.0. Это адреса 192.168.0.101 (Агрегация) и 192.168.0.102 (Доступ). Оба свича соединены между собой транковыми портами.

В тесте принимают участие только три железки. Два свича и клиентский хост. Сервер не подключаю.

Вот максимально мои укороченные рабочие конфиги:

АГРЕГАЦИЯ:
enable
config
!
vlan 7
name management
interface vlan 7
ip address 192.168.0.101 255.255.255.0
!
interface ethernet 1/0/13
switchport mode trunk
combo-forced-mode copper-forced
exit
!
vlan 5
interface vlan 5
ip address 192.168.11.1 255.255.255.0
exit

ДОСТУП:
enable
config
!
vlan 7
name management
interface vlan 7
ip address 192.168.0.102 255.255.255.0
!
interface ethernet 1/1
switchport mode trunk
exit
!
vlan 5
interface ethernet 1/5
switchport access vlan 5
exit

пингуете вы потому как прписан гетвей и на гетвее у вас есть и ИП другого влана который прекрасно роутиться 🙂

> пингуете вы потому как прписан гетвей и на гетвее у вас есть
> и ИП другого влана который прекрасно роутиться 🙂

> пингуете вы потому как прписан гетвей и на гетвее у вас есть
> и ИП другого влана который прекрасно роутиться 🙂

Да это я понимаю, что все упирается в шлюз 192.168.11.1, находящийся в Агрегации во «Влане 5». Я не понимаю ПОЧЕМУ это самый адрес из Vlan 5 имеет доступ в чужой Vlan 7. Это что, так и должно быть? Разве Вланы не должны быть изолированы друг от друга в коммутаторе?! Тем более Вланы с разными подсетями.

Сори еще раз. Совсем я чайник в этих делах. 🙁

> Сори еще раз. Совсем я чайник в этих делах. 🙁

В общем я кажись врубаюсь. Получается, что если залезть внутрь железки, то все адреса созданные в ней (из самых разных Вланов и подсетей) будут доступны друг другу. Поэтому выходит, что если корректно подключиться к этой железке хостом и назначить этому хосту ЛЮБОЙ IP-адрес из этой железки в качестве шлюза, то начиная с этого момента, хост будет пинговать через этот, назначенный ему шлюз, АБСОЛЮТНО ВСЕ адреса из этой железки. Естественно, если они находятся в состоянии «UP».

Ну, хоть сейчас-то я правильно понял? 🙂

1. Изучит на досуге модель OSI
2. Что такое L3 коммутаторы
3. Отличие протоколов ethernet, arp, ip
4. Маршрутизация между вланами.

И тогда вопросы сами отпадут.

> В общем я кажись врубаюсь. Получается, что если залезть внутрь железки, то
> все адреса созданные в ней (из самых разных Вланов и подсетей)
> будут доступны друг другу. Поэтому выходит, что если корректно подключиться к
> этой железке хостом и назначить этому хосту ЛЮБОЙ IP-адрес из этой
> железки в качестве шлюза, то начиная с этого момента, хост будет
> пинговать через этот, назначенный ему шлюз, АБСОЛЮТНО ВСЕ адреса из этой
> железки. Естественно, если они находятся в состоянии «UP».
> Ну, хоть сейчас-то я правильно понял? 🙂

В первом приближении 🙂
именно чтобы КОНТРОЛИРОВАТЬ подобное придуманы файрволы, брандмаузеры и фильтры IP-ов/портов/протоколов.

Ну, хоть в первом приближении. И то слава Богу! 🙂

Ведь это получается, как будто в обычный комп-сервер воткнуть пять сетевых карт, всем сетевушкам назначить IP-адреса из разных подсетей и подключиться к этому компу другим компом-клиентом. Стоит назначить клиенту шлюз из любого IP адреса сервера, как он начнет видеть все пять сетевых карт. Именно эта аналогия мне понятнее всего. Именно она и работает в коммутаторе. Именно в это я и не врубался. Думал, что в коммутаторе все гораздо сложнее. А он, зараза, тот же комп (ну, почти). 🙂

Можно вопрос не по теме?
Я вообще правильно делаю, что довожу клиентский Влан через все коммутаторы до Агрегации и потом даю клиенту шлюз от этой самой Агрегации? Ну, при условии, что у меня в сети только только Агрегация и Доступы. Ядра нет. То есть сам подход верный, если строить небольшую сеть IPoE? Типа, Влан на абонента, или Влан на дом. Так, в принципе, нужно делать?

> именно чтобы КОНТРОЛИРОВАТЬ подобное придуманы файрволы, брандмаузеры и фильтры IP-ов/портов/протоколов.

ACL (он же фаервол), конечно буду юзать! И контролировать и прочее. Просто думал, что я в принципе, что-то не так строю.

Ну, и конечно один Влан на всех юзать глупо. 🙂

Источник

Не получается получить доступ из одного VLAN в другой

Вложения

Как сделать доступ между vlan. Смотреть фото Как сделать доступ между vlan. Смотреть картинку Как сделать доступ между vlan. Картинка про Как сделать доступ между vlan. Фото Как сделать доступ между vlanvlang.rar (15.7 Кб, 24 просмотров)

Доступ из одного vlan к электронному ключу в другом vlan
Возникла ситуация. При переводе компьютера в отдельный vlan программа 1С он перестала видеть.

Переброс траффика из одного Vlan в другой Vlan
Подскажите добрые люди умеют ли коммутаторы 2960S, 3750 перекидывать трафик из одного vlan в другой.

Не проходит пинг из одного vlan в другой
Еще раз добрый вечер уважаемые форумчани. Получил задание на курсовой проект разработать.

Получение доступа из одного VLAN в другой
Не получается получить доступ из одного VLAN в другой. Транковку вродже настроил и адреса на.

в идеале бы вообще чтоб c сервера dhcp раздавал

Добавлено через 1 минуту
так не пойдёт?
переделывать?

Добавлено через 59 секунд

Вложения

Как сделать доступ между vlan. Смотреть фото Как сделать доступ между vlan. Смотреть картинку Как сделать доступ между vlan. Картинка про Как сделать доступ между vlan. Фото Как сделать доступ между vlanvlan.rar (17.0 Кб, 12 просмотров)

int range f0/2-4
switchport mode trunk

вот эта чудесная команда на switch4 поможет вам
p/s транковых портов маловато сделали

ок! спасибо! Заработало.

Добавлено через 2 минуты
Подскажите пожалусто, а как теперь сделать чтобы например 10 и 20 vlan друг друга не видели, а 30 видели оба?

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

ip access-list extended 10<>20
deny ip 10.192.225.0 0.0.0.255 10.192.226.0 0.0.0.255
permit ip any any
int f0/0.1
ip access-group 10<>20 in

я не прошу сделать за меня. я хочу в первую очередь разобраться что я делаю..
нашёл вот http://networkdoc.ru/entry/net. rakh-cisco теперь разбираюсь

Добавлено через 23 секунды
за помощь спасибо.

Добавлено через 2 часа 8 минут
прописываю на порт и всё Как сделать доступ между vlan. Смотреть фото Как сделать доступ между vlan. Смотреть картинку Как сделать доступ между vlan. Картинка про Как сделать доступ между vlan. Фото Как сделать доступ между vlanдаже раздача ip с порта прекращается на подсеть

Добавлено через 5 минут
ток я немноого по другому сделал

создал ещё один vlan 40. куда должны ходить все остальные vlan(10, 20, 30). но между собой 10-20-30 видется не должны.
прописываю:
Router(config)#access-list 100 permit ip 10.192.224.0 255.255.255.0 10.192.225.0 255.255.255.0
Router(config)#int fa0/0.1
Router(config-subif)#ip access-group 100 in

и на 10 vlane отваливается dhcp раздача адресов. я подозреваю вообще связь отваливается

Источник

Как сделать доступ между vlan

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

В современных сетях VLAN — главный механизм для создания логической топологии сети, не зависящей от её физической топологии. VLAN’ы используются для сокращения широковещательного трафика в сети. Имеют большое значение с точки зрения безопасности, в частности как средство борьбы с ARP-spoofing’ом.

Содержание

[править] Зачем нужен VLAN?

[править] Тегирование трафика VLAN

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

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

Наиболее распространённый сейчас способ ставить такую пометку описан в открытом стандарте IEEE 802.1Q. Существуют проприетарные протоколы, решающие похожие задачи, например, протокол ISL от Cisco Systems, но их популярность значительно ниже (и снижается).

[править] Коммутатор и VLAN’ы

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

Коммутатор — устройство 2го уровня и изначально все порты коммутатора находятся, как правило, в VLAN 1 и, следовательно, в одном широковещательном сегменте.

Это значит, что если одно из устройств, которое подключено к порту коммутатора, отправит широковещательный фрейм, то коммутатор перенаправит этот фрейм на все остальные порты, к которым подключены устройства, и они получат этот фрейм.

[править] Принципы работы коммутатора

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

Как сделать доступ между vlan. Смотреть фото Как сделать доступ между vlan. Смотреть картинку Как сделать доступ между vlan. Картинка про Как сделать доступ между vlan. Фото Как сделать доступ между vlan

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

Например, для изображенной схемы, итоговая таблица коммутации будет иметь такой вид (после того как все хосты передавали какой-то трафик):

Порт коммутатораMAC-адрес хоста
1A
2B
3C
4D

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

Unicast фрейм с MAC-адресом получателя для которого у коммутатора нет записи в таблице коммутации, называется unknown unicast.

[править] Механизмы передачи фреймов

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

[править] Пример сети для демонстрации использования механизмов передачи фреймов

Как сделать доступ между vlan. Смотреть фото Как сделать доступ между vlan. Смотреть картинку Как сделать доступ между vlan. Картинка про Как сделать доступ между vlan. Фото Как сделать доступ между vlan

На рисунке изображен коммутатор sw1 и повторитель (hub) к которому подключены два хоста.

Изначально к коммутатору были подключены три хоста A, B и C.

Соответственно у коммутатора такая таблица коммутации:

Порт коммутатораMAC-адрес хоста
1A
2B
3C

Когда хост A отправляет фрейм хосту B, коммутатор использует механизм forwarding, так как ему известно где находятся оба хоста и хосты находятся на разных портах коммутатора.

Далее к коммутатору подключили хост D. Если хост A отправляет фрейм хосту D, то для коммутатора это unknown unicast фрейм, так как в таблице коммутации нет записи о MAC-адресе D. В соответствии со своими правилами коммутатор выполняет flooding и передает фрейм на все порты, кроме 1 (с которого фрейм был получен).

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

К коммутатору подключили повторитель с двумя хостами и коммутатор выучил их адреса.

Соответствующая таблица коммутации:

Порт коммутатораMAC-адрес хоста
1A
2B
3C
4D
5E
5F

Если после этого хост E будет передавать фрейм хосту F, то коммутатор получит его, но не будет передавать далее. В этой ситуации коммутатор использует механизм filtering, так как MAC-адрес получателя доступен через тот же порт, что и отправитель.

[править] Хосты в одном VLAN на одном коммутаторе

Как сделать доступ между vlan. Смотреть фото Как сделать доступ между vlan. Смотреть картинку Как сделать доступ между vlan. Картинка про Как сделать доступ между vlan. Фото Как сделать доступ между vlan

К коммутатору подключены 4 хоста. Для упрощения будем считать, что A, B, C и D это соответствующие MAC-адреса хостов.

Соответствующая таблица коммутации:

Порт коммутатораMAC-адрес хоста
1A
2B
3C
4D

[править] Хосты в разных VLAN на одном коммутаторе

Как сделать доступ между vlan. Смотреть фото Как сделать доступ между vlan. Смотреть картинку Как сделать доступ между vlan. Картинка про Как сделать доступ между vlan. Фото Как сделать доступ между vlan

Обычно, по умолчанию все порты коммутатора считаются нетегированными членами VLAN 1. В процессе настройки или работы коммутатора они могут перемещаться в другие VLAN’ы.

На коммутаторе, который изображен на рисунке, настроены два VLAN’а, все порты в соответствующих VLAN настроены как нетегированные, т. е. не используют теги IEEE 802.1Q при передаче фреймов (access-порты в терминологии Cisco).

После этого на коммутаторе существуют две таблицы коммутации.

Порт коммутатораMAC-адрес хоста
1A
2B
Порт коммутатораMAC-адрес хоста
3C
4D

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

Например, если хост из VLAN 10 отправляет широковещательный фрейм, то он будет отправлен только на порты в этом VLAN.

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

Как правило, реально в таблице коммутации в коммутаторах указывается порт, MAC-адрес и VLAN. То есть, для указанного примера таблица коммутации будет такая:

Порт коммутатораVLANMAC-адрес хоста
12A
22B
310C
410D

Однако, далее для упрощения используется запись таблицы коммутации в виде соответствия между портами и MAC-адресами.

[править] Хосты в разных VLAN на разных коммутаторах (объяснение тегированных портов)

К используемому примеру добавляется ещё один коммутатор.

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

[править] Добавлен второй коммутатор и хосты в VLAN 2

Для начала добавлен коммутатор sw2 и два хоста E и F в VLAN 2. Если рассматривать два коммутатора отдельно, то получается, что на коммутаторе sw1 осталась прежняя таблица коммутации, а на коммутаторе sw2 таблица такая (пока что коммутаторы не соединены):

Порт коммутатораMAC-адрес хоста
7E
8F

Теперь необходимо чтобы хосты A, B, E, F «увидели» друг друга. Они должны находиться в одном VLAN. То есть, необходимо каким-то образом указать коммутатору, что ещё на одном порту есть хосты в соответствующем VLAN’е.

Для указанного примера достаточно добавить на коммутаторе sw1 порт 10 в VLAN 2, а на коммутаторе sw2 порт 9 в VLAN 2. Принадлежность к VLAN указывается настройкой порта нетегированным в VLAN 2 (пока что). После этого на коммутаторах в таблицах коммутации добавятся новые порты и соответствующие MAC-адреса хостов. Теперь четыре хоста на разных коммутаторах находятся в одном широковещательном сегменте.

Как сделать доступ между vlan. Смотреть фото Как сделать доступ между vlan. Смотреть картинку Как сделать доступ между vlan. Картинка про Как сделать доступ между vlan. Фото Как сделать доступ между vlan

Таблица коммутации sw1 для VLAN 2:

Порт коммутатораMAC-адрес хоста
1A
2B
10E
10F

Таблица коммутации sw2 для VLAN 2:

Порт коммутатораMAC-адрес хоста
7E
8F
9A
9B

[править] Ко второму коммутатору добавлены хосты в VLAN 10

Как сделать доступ между vlan. Смотреть фото Как сделать доступ между vlan. Смотреть картинку Как сделать доступ между vlan. Картинка про Как сделать доступ между vlan. Фото Как сделать доступ между vlan

К коммутатору sw2 добавлены два хоста G и H в VLAN 10.

Для того чтобы хосты C и D в VLAN 10 на коммутаторе sw1, могли обмениваться информацией с хостами VLAN 10 на коммутаторе sw2 добавлен линк между коммутаторами. Логика аналогична добавлению хостов в VLAN 2.

Таблица коммутации sw1 для VLAN 10:

Порт коммутатораMAC-адрес хоста
3C
4D
11G
11H

Таблица коммутации sw2 для VLAN 10:

Порт коммутатораMAC-адрес хоста
13G
14H
12C
12D

[править] Создание тегированного порта между коммутаторами

Как сделать доступ между vlan. Смотреть фото Как сделать доступ между vlan. Смотреть картинку Как сделать доступ между vlan. Картинка про Как сделать доступ между vlan. Фото Как сделать доступ между vlan

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

Для решения этой проблемы используются тегированные порты.

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

На коммутаторах sw1 и sw2 порты 21 и 22, соответственно, это тегированные порты.

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

Как сделать доступ между vlan. Смотреть фото Как сделать доступ между vlan. Смотреть картинку Как сделать доступ между vlan. Картинка про Как сделать доступ между vlan. Фото Как сделать доступ между vlan

Например, если хост E передает фрейм хосту A, то коммутатор sw2 проверяет свою таблицу и видит, что хост A доступен через порт 22. Так как порт настроен как тегированный, то когда фрейм выходит с порта 22 в нём проставляется тег, который указывает какому VLAN’у принадлежит этот фрейм. В данном случае проставляется тег с VLAN’ом 2.

Реальная структура фрейма с тегом описана на странице 802.1Q.

Коммутатор sw1 получает тегированный фрейм через тегированный порт 21. Для того чтобы определить на какой порт его передавать далее sw1 использует таблицу коммутации для VLAN 2 (так как этот VLAN был указан в теге). На коммутаторе sw1 порт 21 должен быть настроен как тегированный для того чтобы коммутатор не отбрасывал тегированные фреймы, а считывал информацию тега. И соответственно чтобы он также помечал фрейм тегом, когда будет передаваться трафик коммутатору sw2.

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

Аналогичные действия выполняются, например, при передаче фрейма от хоста C хосту G.

[править] Принадлежность VLAN

Порты коммутатора, поддерживающие VLAN’ы, (с некоторыми допущениями) можно разделить на два множества:

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

Если порт нетегированный и принадлежит к какому-либо VLAN, то трафик для этого VLAN передается без тега. На Cisco нетегированный порт (access-порт) может быть только в одном VLAN, на некоторых других свитчах (например, ZyXEL, D-Link и Planet) реализация иная.

Если порт тегирован для нескольких VLAN, то в этом случае весь нетегированный трафик будет приниматься специальным родным VLAN (native VLAN). С этим параметром (native, PVID, port VID) возникает много путаницы. Например, свитчи Planet для правильной работы нетегированного порта требуют поместить порт в VLAN, задать режим порта untagged (нетегированный), и прописать номер этого VLAN в PVID этого порта. На коммутаторах HP ProCurve тегированный порт начинает работать как тегированный только если поставить его PVID в «None».

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

Проще всего это понять, если «забыть» всю внутреннюю структуру коммутатора и отталкиваться только от портов. Допустим, есть VLAN с номером 111, есть два порта которые принадлежат к VLAN 111. Они общаются только между собой, с untagged/access-порта выходит нетегированный трафик, с tagged/trunk-порта выходит трафик тегированный в VLAN 111. Все необходимые преобразования прозрачно внутри себя делает коммутатор.

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

Существуют два подхода к назначению порта в определённый VLAN:

[править] Настройка VLAN на коммутаторах

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

[править] Настройка VLAN на коммутаторах Cisco под управлением IOS

На странице VLAN в Cisco/Lab находятся лабораторные, которые можно сделать для того чтобы на практике попробовать настройки, которые описываются в этом разделе. Лабораторные подготовлены в Packet Tracer, но аналогично могут быть выполнены и на реальном оборудовании.

Как сделать доступ между vlan. Смотреть фото Как сделать доступ между vlan. Смотреть картинку Как сделать доступ между vlan. Картинка про Как сделать доступ между vlan. Фото Как сделать доступ между vlan

Как сделать доступ между vlan. Смотреть фото Как сделать доступ между vlan. Смотреть картинку Как сделать доступ между vlan. Картинка про Как сделать доступ между vlan. Фото Как сделать доступ между vlan

Коммутаторы Cisco ранее поддерживали два протокола 802.1Q и ISL. ISL — проприетарный протокол использующийся в оборудовании Cisco. ISL полностью инкапсулирует фрейм для передачи информации о принадлежности к VLAN’у.

В современных моделях коммутаторов Cisco ISL не поддерживается.

Создание VLAN’а и задание имени:

[править] Настройка access портов

Назначение портов 1 и 2 коммутатора в VLAN:

Назначение диапазона портов с fa0/4 до fa0/5 в vlan 10:

Просмотр информации о VLAN’ах:

[править] Настройка транка (trunk)

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

Режимы интерфейса (режим по умолчанию зависит от модели коммутатора):

По умолчанию в транке разрешены все VLAN. Для того чтобы через соответствующий VLAN в транке передавались данные, как минимум, необходимо чтобы VLAN был активным. Активным VLAN становится тогда, когда он создан на коммутаторе и в нём есть хотя бы один порт в состоянии up/up.

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

В схеме, которая используется для демонстрации настроек, на коммутаторах sw1 и sw2, нужные VLAN будут созданы в момент добавления access-портов в соответствующие VLAN:

На коммутаторе sw3 access-портов нет. Поэтому необходимо явно создать все необходимые VLAN:

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

[править] Настройка статического транка

Создание статического транка:

На некоторых моделях коммутаторов (на которых поддерживается ISL), после попытки перевести интерфейс в режим статического транка, может появиться такая ошибка:

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

Для таких коммутаторов необходимо явно указать тип инкапсуляции для интерфейса:

И после этого снова повторить команду настройки статического транка (switchport mode trunk).

[править] Динамическое создание транков (DTP)

Dynamic Trunk Protocol (DTP) — проприетарный протокол Cisco, который позволяет коммутаторам динамически распознавать настроен ли соседний коммутатор для поднятия транка и какой протокол использовать (802.1Q или ISL). Включен по умолчанию.

Режимы DTP на интерфейсе:

Перевести интерфейс в режим auto:

Перевести интерфейс в режим desirable:

Перевести интерфейс в режим nonegotiate:

Проверить текущий режим DTP:

[править] Разрешенные VLAN’ы

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

Указать перечень разрешенных VLAN для транкового порта fa0/22:

Добавление ещё одного разрешенного VLAN:

Удаление VLAN из списка разрешенных:

[править] Native VLAN

В стандарте 802.1Q существует понятие native VLAN. Трафик этого VLAN передается нетегированным. По умолчанию это VLAN 1. Однако можно изменить это и указать другой VLAN как native.

Настройка VLAN 5 как native:

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

[править] Настройка маршрутизации между VLAN

Как сделать доступ между vlan. Смотреть фото Как сделать доступ между vlan. Смотреть картинку Как сделать доступ между vlan. Картинка про Как сделать доступ между vlan. Фото Как сделать доступ между vlan

Как сделать доступ между vlan. Смотреть фото Как сделать доступ между vlan. Смотреть картинку Как сделать доступ между vlan. Картинка про Как сделать доступ между vlan. Фото Как сделать доступ между vlan

Все настройки по назначению портов в VLAN, сделанные ранее для sw1, sw2 и sw3, сохраняются. Дальнейшие настройки подразумевают использование sw3 как коммутатора 3 уровня.

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

Настройки на коммутаторе sw3:

VLAN / интерфейс 3го уровняIP-адрес
VLAN 210.0.2.1 /24
VLAN 1010.0.10.1 /24
VLAN 1510.0.15.1 /24
Fa 0/10192.168.1.2 /24

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

Задание адреса в VLAN. Этот адрес будет маршрутом по умолчанию для компьютеров в VLAN 2:

Задание адреса в VLAN 10:

[править] Перевод интерфейса в режим 3го уровня

Интерфейс fa0/10 соединен с маршрутизатором. Этот интерфейс можно перевести в режим 3 уровня.

Перевод fa0/10 в режим интерфейса 3 уровня и задание IP-адреса:

Коммутатор sw3 использует R1 как шлюз по умолчанию для рассматриваемой сети. Трафик не предназначенный сетям VLAN’ов будет передаваться на R1.

Настройка маршрута по умолчанию:

[править] Просмотр информации

Просмотр информации о транке:

Просмотр информации о настройках интерфейса (о транке):

Просмотр информации о настройках интерфейса (об access-интерфейсе):

Просмотр информации о VLAN’ах:

[править] Диапазоны VLAN

VLANsДиапазонИспользованиеПередается VTP
0, 4095ReservedТолько для системного использования.
1NormalVLAN по умолчанию. Можно использовать, но нельзя удалить.Да
2-1001NormalДля VLANов Ethernet. Можно создавать, удалять и использовать.Да
1002-1005NormalДля FDDI и Token Ring. Нельзя удалить.Да
1006-4094ExtendedТолько для VLANов Ethernet.Версия 1 и 2 нет, версия 3 да

[править] Пример настройки

[править] Пример базовой настройки VLAN, без настройки маршрутизации

Как сделать доступ между vlan. Смотреть фото Как сделать доступ между vlan. Смотреть картинку Как сделать доступ между vlan. Картинка про Как сделать доступ между vlan. Фото Как сделать доступ между vlan

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

Например, хосты на коммутаторе sw1 в VLAN 2 могут взаимодействовать между собой и с хостами в VLAN 2 на коммутаторе sw2. Однако, они не могут взаимодействовать с хостами в других VLAN на коммутаторах sw1 и sw2.

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

Настройки транка на sw1 и sw2 немного отличаются от sw3. На sw3 не задается инкапсуляция для транка (команда switchport trunk encapsulation dot1q), так как в используемой модели коммутатора поддерживается только режим 802.1Q.

[править] Пример конфигураций с настройкой маршрутизации между VLAN

Как сделать доступ между vlan. Смотреть фото Как сделать доступ между vlan. Смотреть картинку Как сделать доступ между vlan. Картинка про Как сделать доступ между vlan. Фото Как сделать доступ между vlan

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

Например, хосты на коммутаторе sw1 в VLAN 2 могут взаимодействовать между собой и с хостами в VLAN 2 на коммутаторе sw2. Кроме того, они могут взаимодействовать с хостами в других VLAN на коммутаторах sw1 и sw2.

Настройки коммутаторов sw1 и sw2 остались точно такими же, как и в предыдущем разделе. Добавились дополнительные настройки только на коммутаторе sw3.

[править] Настройка VLAN на коммутаторах HP ProCurve

Как сделать доступ между vlan. Смотреть фото Как сделать доступ между vlan. Смотреть картинку Как сделать доступ между vlan. Картинка про Как сделать доступ между vlan. Фото Как сделать доступ между vlan

Как сделать доступ между vlan. Смотреть фото Как сделать доступ между vlan. Смотреть картинку Как сделать доступ между vlan. Картинка про Как сделать доступ между vlan. Фото Как сделать доступ между vlan

По умолчанию на коммутаторах HP ProCurve доступно не максимальное количество VLAN. Как правило, можно создать 8 VLAN. Это можно изменить с помощью команды max-vlans. Указание максимального количества VLAN (максимальное значение варьируется в зависимости от модели коммутатора):

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

Создание VLAN’а, задание имени и назначение портов:

Так как на коммутаторе sw2 нет VLAN’а 15, то мы не добавляем тегированный порт 22 в этот VLAN:

Просмотр информации о существующих VLAN’ах:

Посмотреть, какие порты принадлежат VLAN’у 2 и какой статус у порта:

Посмотреть, каким VLAN’ам принадлежит порт 22:

[править] Настройка маршрутизации между VLAN

Дальнейшие настройки подразумевают использование коммутатора 3 уровня.

Для того чтобы настроить маршрутизацию между сетями разных VLAN на коммутаторе необходимо:

Кроме того, необходимо чтобы IP-адреса соответствующих VLAN были указаны как маршруты по умолчанию на хостах.

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

Задание адреса в VLAN. Этот адрес должен быть прописан как маршрут по умолчанию для компьютеров в VLAN 2:

Или, другой формат задания IP-адреса в VLAN:

Просмотр информации о заданных IP-адресах и включен ли ip routing:

[править] Пример конфигурации

Как сделать доступ между vlan. Смотреть фото Как сделать доступ между vlan. Смотреть картинку Как сделать доступ между vlan. Картинка про Как сделать доступ между vlan. Фото Как сделать доступ между vlan

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

Коммутаторы sw1 и sw2 работают как коммутаторы 2 уровня. Коммутатор sw3 выполняет маршрутизацию между VLAN’ами хостов и VLAN’ом серверов. Кроме того, на коммутаторе sw3 настроен DHCP relay agent, для того чтобы хосты могли получить IP-адреса и маршрут по умолчанию от DHCP-сервера (IP-адрес DHCP-сервера указан на схеме).

[править] Настройка VLAN на коммутаторах D-LINK

Удаление и добавление портов в VLAN:

Просмотр информации о VLAN’ах:

Сохранение изменений в NVRAM:

[править] Настройка VLAN на маршрутизаторах

Как сделать доступ между vlan. Смотреть фото Как сделать доступ между vlan. Смотреть картинку Как сделать доступ между vlan. Картинка про Как сделать доступ между vlan. Фото Как сделать доступ между vlan

Как сделать доступ между vlan. Смотреть фото Как сделать доступ между vlan. Смотреть картинку Как сделать доступ между vlan. Картинка про Как сделать доступ между vlan. Фото Как сделать доступ между vlan

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

На коммутаторе порт, ведущий к маршрутизатору, должен быть настроен как тегированный порт (в терминах Cisco — транк).

Изображенная схема, в которой маршрутизация между VLAN выполняется на маршрутизаторе, часто называется router on a stick.

[править] Настройка VLAN на маршрутизаторах Cisco

На странице VLAN в Cisco/Lab находятся лабораторные, которые можно сделать для того чтобы на практике попробовать настройки, которые описываются в этом разделе. Лабораторные подготовлены в Packet Tracer, но аналогично могут быть выполнены и на реальном оборудовании.

IP-адреса шлюза по умолчанию для VLAN (эти адреса назначаются на подинтерфейсах маршрутизатора R1):

VLANIP-адрес
VLAN 210.0.2.1 /24
VLAN 1010.0.10.1 /24
VLAN 1510.0.15.1 /24

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

Создание логического подинтерфейса для VLAN 2:

Создание логического подинтерфейса для VLAN 10:

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

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

[править] Пример настройки

Конфигурационные файлы устройств для схемы изображенной в начале раздела.

[править] Настройка native VLAN

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

Задание адреса на физическом интерфейсе:

Если необходимо создать подинтерфейс для передачи не тегированного трафика, то в этом подинтерфейсе явно указывается, что он принадлежит native VLAN. Например, если native VLAN 99:

[править] Проверка настройки

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

Пример вывода команды sh ip route:

Пример вывода sh int fa0/0.2

[править] Настройка VLAN на маршрутизаторах ProCurve

Настройка физического интерфейса:

После задания на физическом интерфейсе инкапсуляции 802.1Q на нем нельзя задать IP-адрес (адреса задаются на подинтерфейсах [1] ).

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

Создание логического подинтерфейса для VLAN 1:

Создание логического подинтерфейса для VLAN 2:

Пример конфигурации R1:

[править] Настройка VLAN в операционных системах

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

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

В подавляющем большинстве современных UNIX/Linux-систем поддержка VLAN’ов есть. Поддержка VLAN’ов в Windows доступна при инсталляции дополнительного программного обеспечения.

Настройка VLAN в операционной системе состоит из нескольких шагов:

[править] Настройка VLAN в Linux

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

Необходима поддержка 802.1Q ядром Linux.

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

Модуль включается в Network options / 802.1Q VLAN Support.

Теперь поднимем его, но уже без адреса:

Затем говорим какие VID будем пропускать. Для этого используем программу vconfig (пакет vlan в Debian) В результате будут созданы виртуальные интерфейсы с именами, содержащими VLAN ID.

Имена интерфейсов могут отличаться (список возможных имён и от чего это зависит см. в man:vconfig).

Далее, назначаем каждому интерфейсу свой IP-адрес.

Если маршрут по умолчанию смотрит в один из VLAN’ов, нужно его задать:

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

Для управления прохождением трафика между VLAN’ами можно использовать стандартные механизмы ядра Linux, такие как маршрутизация, iptables и QoS.

Просматривать информацию о VLAN-подынтерфейсах [1] в Linux можно через /proc:

[править] Настройка VLAN при загрузке в Debian GNU/Linux

Для того чтобы информация о созданных VLAN’ах сохранилась после перезагрузки, необходимо добавить её в файл /etc/network/interfaces. Например:

[править] Настройка VLAN при загрузке в CentOS

Для того чтобы информация о созданных VLAN’ах сохранилась после перезагрузки, необходимо создать файлы с описанием подынтерфейсов [1] VLAN. Например, для создания подынтерфейса eth0.10 необходимо создать файл /etc/sysconfig/network-scripts/ifcfg-eth0.10, содержимое которого будет похожим на традиционное содержимое файлов network-scripts/ifcfg-*:

[править] QinQ-инкапсуляция в Linux

Q-in-Q инкапсуляция позволяет создавать дважды тегированный трафик. Для каждого уровня вложенности создаётся свой собственный интерфейс.

Подробнее о процедуре настройки:

[править] Настройка VLAN во FreeBSD

Для создания и управления VLAN во FreeBSD не используются какие-то специальные программы. Всё делается с помощью программы ifconfig.

Создать интерфейс vlan4:

Указать, что созданный интерфейс соответствует трафику, тегированному VLAN 4 и приходящему через физический интерфейс fxp0:

Теперь можно работать с vlan4 как с обычным интерфейсом. Этому интерфейсу нужно назначить адрес. Машина будет видна в VLAN 4 по этому адресу:

Предыдущие команды можно было бы совместить в одну.

Просмотреть информацию об интерфейсе:

[править] Настройка VLAN в (Open)Solaris

Для создания и управления VLAN в Solaris так же, как и во FreeBSD, не используются какие-то специальные программы. Всё делается с помощью программы ifconfig, но с некоторой спецификой

Создать интерфейс vlan4 на интерфейсе nge0 (именование сетевых интерфейсов таково же, как и во FreeBSD):

То есть новый интерфейс обзывается в виде <имя ethernet-девайса-без_цифр><(id вилана X 1000)+цифра_от_девайса>. Тем самым новый интерфейс уже привязывается к физическому интерфейсу.

Теперь можно работать с nge4000 как с обычным интерфейсом. Этому интерфейсу нужно назначить адрес. Машина будет видна в VLAN 4 по этому адресу:

Просмотреть информацию об интерфейсах:

[править] Настройка VLAN в Oracle Solaris 11 Express

В данной версии настройка VLAN может осуществляться с использованием утилит администрирования уровня соединения (Data Link) и транспортного уровня (IP).

Провести инвентаризацию физических интерфейсов

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

Создать интерфейс на базе адаптера

Назначить IPv4 статический адрес для интерфейса

Провести инвентаризацию интерфейсов

[править] Настройка VLAN в Windows

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

В случае использования простых сетевых карт, например, Realtek RTL8139, трафик передаётся в неизменном виде, с тегами, в операционную систему и приложениям. Например, если запустить wireshark и направить его на соответствующий интерфейс, он увидит трафик с тегами.

Более мощные сетевые карты обрабатывают теги 802.1Q. Они могут по-разному поступить с тегами: удалить теги, удалить тегированные фреймы или сделать что-нибудь ещё.

Как правило, в этом случае существуют механизм, позволяющий отключить обработку тегов сетевой картой, сделать её более «тупой» и доставлять трафик вместе с тегами. Обычно, это делается через registry, указанием соответствующего ключа.

Например, для карт Intel в ветке

нужно установить ключ

Здесь, xx — это номер сетевого адаптера в системе (подробнее [3]).

Ещё существуют специализированные драйверы от Intel, Broadcom, 3Com и SysKonnect, которые добавляют поддержку VLANов (виртуальные интерфейсы), аггрегированных каналов, failover’а и многие другие функции. Каким образом настраивать их, нужно смотреть в документации для этих драйверов.

Примеры таких драйверов:

[править] Дополнительные вопросы

[править] Автоматизированное создание VLAN

Статическое размещение портов коммутатора в отдельных VLAN’ах становится утомительным занятием уже со второго порта. Решение этой задачи можно автоматизировать одним из нескольких способов:

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

Специальное программное обеспечение выполняет размещение портов по VLAN’ам, фактически, отправляя соответствующие команды по SNMP. Это означает, что системный администратор может сделать это и сам с помощью таких инструментов, например, как snmp-utils. Однако, для этого он должен знать процедуру назначения настроек VLAN по SNMP. Для различного сетевого оборудования она варьируется.

Самый простой способ — использовать известные уже команды по настройке оборудования, только автоматизировать их ввод.

К сожалению, простейший удалённый вызов команды в стиле UNIX

невозможен. Аналогичные команды где используется перевод строки вместо символа ; тоже не дадут желаемого эффекта.

Единственный рабочий способ — сформировать поток команд, которые должны быть выполнены на коммутаторе, и каким-то образом передать их ему. Самый простой (но не единственный) способ — передать команды через SSH/Telnet или консольный интерфейс.

Однако, напрямую передать не получится. Понадобится несколько небольших ухищрений:

Для обхода указанных ограничений типичных командных оболочек и упрощения автоматизированной работы чаще всего используются средства более развитых скриптовых языков. Для Perl существует модуль Net::Telnet Описание на www.cpan.org Для Python существует библиотека telnetlib Описание на www.python.org Также существуют аналогичные модули для работы с FTP, SSH и другими сетевыми протоколами.

Рабочий пример настройки коммутатора с использованием socat ниже. Пример приведён для коммутатора ProCurve, но аналогичным образом можно выполнять настройку любого коммутатора.

Генерируется последовательность команд, которая отправляется на вход socat. Программа socat вызывает программу ssh, которой предоставляет терминал. Через этот терминал вводятся необходимые команды, исполняющиеся на коммутаторе. Скрипт make-many-vlans.pl генерирует последовательность команд, которые передаются на коммутатор. В этом примере команды генерируются и передаются скопом, без задержек между ними. Что плохо и может работать не всегда.

Пример скрипта make-many-vlans.pl, который создаёт 5 различных VLAN’ов (VLAN25—VLAN30) и помещает в них отдельные порты коммутатора: (25—30)

Скрипт просто генерирует последовательность команд, которые должны вводиться в командную строку коммутатора:

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

Пример скрипта автоматизированного создания VLAN’ов для коммутатора Cisco:

Ещё вместо socat может использоваться empty.

[править] Динамическая настройка VLAN

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

Настройка может быть в некоторых случаях выполнена динамически, на основе:

Для динамической настройки VLAN по MAC-адресу используется протокол VQP (VLAN Query Protocol) и специальный сервер VMPS (VLAN Management Policy Server). Коммутатор выступает в роли клиента. Он должен поддерживать протокол VQP.

Для динамической настройки VLAN в зависимости от пользователя, который подключается к сети используется стандарт 802.1X.

(несколько слов о том, как организовать динамическое назначение VLAN с помощью 802.1x)

[править] Проброска тегированного трафика через туннель поверх IP-сети

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

Указанную задачу можно решить с помощью различных средств построения туннелей, в частности vtun и OpenVPN. Ниже описывается решение задачи с помощью OpenVPN.

Как сделать доступ между vlan. Смотреть фото Как сделать доступ между vlan. Смотреть картинку Как сделать доступ между vlan. Картинка про Как сделать доступ между vlan. Фото Как сделать доступ между vlan

Здесь есть несколько машин, соединённых в цепочку с помощью коммутаторов.

В качестве операционной системы используется Debian GNU/Linux. Рассматриваемая последовательность действий будет работать и в других дистрибутивах Linux. В FreeBSD принципиальных отличий нет, но некоторые команды отличаются (настройка мостов и VLAN’ов).

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

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

На debian2 и debian4:

На debian1 и debian5:

(здесь предполагается, что 192.168.2.2 — IP-адрес машины debian2 в условном Интернете)

Как и следовало ожидать, для поднятия туннеля и его использования в режиме моста, IP-адреса не нужны.

После того как туннель поднят

Необходимо создать мосты на обеих машинах (debian2 и debian4), и включить все необходимые интерфейсы.

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

С машины debian1 можно пингануть машину debian5 и проследить трассу:

Трассировка показала, что debian5 находится с debian1 в одной коммутируемой сети.

Мы также можем передавать тегированный трафик.

В это время на debian5:

[править] Протоколы автоматической настройки VLAN

[править] Анализ тегированного трафика

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

Например, если запустить tcpdump на интерфейсе, по которому передаётся тегированный трафик, он его покажет.

Для фильтрации нужно использовать ключевое слово vlan. Например, если нужно увидеть трафик, тегированный тегом VLAN 100, передающийся через интерфейс eth0 (и только его) нужно использовать команду:

[править] Безопасность VLAN

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

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *