- Различия между VLAN и VPN
VLAN (Virtual Local Area Network, виртуальная локальная вычислительная сеть) — это функция в роутерах и коммутаторах, позволяющая на одном физическом сетевом интерфейсе (Ethernet, Wi-Fi интерфейсе) создать несколько виртуальных локальных сетей.
VLAN является частью большего LAN. Простейший механизм изоляции различных подсетей на Что такое Ethernet, WI-FI интерфейсах. Для того, чтобы организовывать VLAN, сетевой коммутатор (Как выбрать сетевой коммутатор (свитч, свич, англ. switch)) должен поддерживать технологию VLAN и протокол 802.1q.
Преимущества VLAN:
- увеличивает число широковещательных доменов, но уменьшает размер каждого широковещательного домена, которые в свою очередь уменьшают сетевой трафик и увеличивают безопасность сети (оба следствия связаны вместе из-за единого большого широковещательного домена);
- уменьшает усилия администраторов на создание подсетей;
- уменьшает количество оборудования, так как сети могут быть разделены логически, а не физически;
- улучшает управление различными типами трафика.
Термины VLAN
- Что такое Native VLAN — это понятие в стандарте 802.1Q, которое обозначает VLAN на коммутаторе, где все кадры идут без тэга, т.е. трафик передается нетегированным. По умолчанию это VLAN 1. В некоторых моделях коммутаторов, например, cisco, это можно изменить, указав другой VLAN как native.
- Термин untagged: только одна VLAN может получать все пакеты, не отнесённые ни к одной VLAN (в терминологии 3Com, Planet, Zyxel — untagged, в терминологии Cisco — native VLAN). Свитч будет добавлять метки данной VLAN ко всем принятым кадрам не имеющих никаких меток.
- Транк VLAN — это физический канал, по которому передается несколько VLAN каналов, которые различаются тегами (метками, добавляемыми в пакеты). Транки обычно создаются между «тегированными портами» VLAN-устройств: свитч-свитч или свитч-маршрутизатор. (В документах Cisco термином «транк» также называют объединение нескольких физических каналов в один логический: Link Aggregation, Port Trunking). Маршрутизатор (свитч третьего уровня) выступает в роли магистрального ядра сети (backbone) для сетевого трафика разных VLAN.
- Сказать проще, vlan – это логический канал внутри физического канала (кабеля), а trunk это множество логических каналов (vlan`ов) внутри одного физического канала (кабеля).
Сети VLAN могут быть определены по:
- Порту (наиболее частое использование). VLAN, базирующиеся на номере порта позволяют определить конкретный порт в VLAN. Порты могут быть определены индивидуально, по группам, по целым рядам и даже в разных коммутаторах через транковый протокол. Это наиболее простой и часто используемый метод определения VLAN. Это наиболее частое применение внедрения VLAN, построенной на портах, когда рабочие станции используют протокол Динамической Настройки TCP/IP (DHCP). Ниже рисунок VLAN на основе портов:
Укажем, что в дальнейшем управлять D-Link DGS-1100-08P (IP 10.90.91.2) можно управлять только через vlan1, то есть в нашем случае системный администратор должен подключиться в первый порт DGS-1100-08P(При подключении в иной порт — коммутатор не разрешит доступ к 10.90.91.2).
Не рекомендуется использовать vlan1, так как он для служебных целей в основном предназначен, а в сочетании с D-Link следует ожидать непредсказуемого поведения.
- Для создания VLAN в FAQ Debian нужно установить его поддержку
aptitude install vlan
- Создать VLAN с именем vlan22 привязанный к порту сетевой карты eth4. Присвоим ему IP:192.168.122.254.
ip link add link eth4 name vlan22 type vlan id22ip addr add 192.168.122.254/24 dev vlan22 ifconfig vlan22 up
Служебный vlan только для настройки коммутатора:
ip link add link eth4 name vlan44 type vlan id1ip addr add 10.90.91.254/24 dev vlan44 ifconfig vlan44 up
vlan35:
ip link add link eth4 name vlan35 type vlan id35ip addr add 192.168.35.254/24 dev vlan34 ifconfig vlan35 up
- Параметры созданных vlan смотрим в файлах
ls-l/proc/net/vlan/ итого -rw-------1 root root Авг 1715:06 config -rw-------1 root root Авг 1715:06 vlan1 -rw-------1 root root Авг 1715:06 vlan22
- Создание vlan через vconfig и автоматическая загрузка через /etc/network/interfaces не заработала, потому создаем запускной файлик и прописываем в атозагрузку сервера.
- vlan_create.sh
-
#!/bin/sh -e ip link add link eth4 name vlan22 type vlan id22ip addr add 192.168.122.254/24 dev vlan22 ifconfig vlan22 up
КОНТАКТЫ —> ВЗЯТО С: http://mcp1971.livejournal.com/1851.htmlДиапазоны номеров VLANовВсе VLANы доступа можно разбить на два диапазона:Обычный диапазон VLANов— используется в малых и средних сетях- имеют номера от 1 до 1005- номера с 1002 до 1005 зарезервированы для Token Ring and FDDI VLANов- номера 1, 1002 и 1005 создаются автоматически и не могут быть удалены- все данные о VLANах хранятся в файле vlan.dat, который располагается на флеш памяти (flash:vlan.dat)- протокол VTP может изучать VLANы только обычного диапазрна и сохранять сведения о них в vlan.datРасширенный диапазон VLANов— используются провайдерами или на очень больших сетях для расширения инфраструктуры VLANов- имеют номера от 1006 до 4094- поддерживают меньше возможностей, чем VLANы обычного диапазона- все данные о VLANах хранятся в рабочей конфигурации- нет поддержки VTPКоммутатор Cisco Catalyst 2960 поддерживает до 255 VLANов обычного и расширенного диапазоновТипы VLANовВсе VLANы можно отнести к конкретному типу:1. Data VLAN (VLAN данных) — VLAN, в котором проходят данные, генерируемые пользователями. Но это не могут быть голосовые данные или управляющий трафик для коммутаторов.2. Default VLAN (VLAN по умолчанию) — VLAN, в котором находятся все порты коммутатора перед началом конфигурирования. VLAN по умолчанию для коммутаторов Cisco — VLAN1. По умолчанию управляющий трафик 2-го уровня, такой как CDP и STP, ассоциируется с VLAN1.3. Native VLAN (родной VLAN) — VLAN, через который на порту, сконфигурированном как транковый порт (802.1Q), и пропускающем с помощью 802.1Q тегированные фреймы, сможет подключиться рабочая станция и передавать нетегированные фреймы. Это реализовано для того, чтобы к транковому порту можно было подключить компьютер, который не может тегировать фреймы. Рекомендуется использовать родным VLANом VLAN, отличный от VLAN1.4. Management VLAN (управляющий VLAN) — VLAN, через который происводится конфигурирование. Для этого VLANу надо назначить IP адрес и маску подсети.5. Voice VLAN (голосовой VLAN) — VLAN, предназначенный для передачи голоса. Такой VLAN должен обеспечивать:— гарантированнуюполосу пропусканиядля обеспечениякачества передачи голоса— приоритет голосового трафика по сравнению сдругими типамитрафика— возможностьнаправлятьтрафик в обход загруженных районовв сети— иметь задержкуменее 150миллисекундв сетиБывает, что компьютер подключается к коммутатору через IP телефон. Получается, что надо разграничить на порту голосовой трафик и трафик данных. Для этого телефон представляет собой трехпортовый коммутатор. Один порт подключен к коммутатору. Второй — внутренний порт для передачи голосового трафика. Третий порт — порт, к которому подключен компьютер. Трафик с внутреннего порта телефона тегируется номером голосового VLAN. Трафик с компьютера не тегируется. Поэтому коммутатор может определить трафик, которому надо предоставить приоритет. Точно также происходит разделение входящего трафика — тегированный номером голосового VLAN — на телефон, не тегированный — на компьютер. Соответственно на порту коммутатора настраивается и голосовой VLAN, и VLAN доступа.Режимы работы портов коммутатора в VLANахКаждый порт коммутатора может быть настроен для работы конкретного типа VLANа различными методами:Статический VLAN — каждому порту вручную указывается VLAN, к которому он принадледит.Динамический VLAN — каждому порту указывается VLAN, к которому он принадледит, с помощью Сервера политики членства в VLAN (VMPS — VLAN Membership Policy Server). СVMPSможно назначитьVLAN портам коммутатора динамически,на основеМАС-адреса устройства, подключенного кпорту.Это полезно, когдавы перемещаетеустройство спорта одного коммутаторв сетик портудругого коммутаторав сети, коммутатординамически назначаетVLANдля этого устройства на новом порту.Голосовой VLAN — порт настраивается и для передачи тегированного голосового трафика, и для передачи нетегированного трафика данных. Для настройки голосовой VLAN используются команды:S1(config)#interface fastethernet 0/18S1(config-if)#mls qos trust cos — определяем голосовй трафик, как приоритетныйS1(config-if)#switchport voice vlan 150 — определяем голосовой VLANS1(config-if)#switchport mode access — определяем, что этот порт для данных (порт доступа — нетегированный трафик)S1(config-if)#switchport access vlan 20 — определяем VLAN для данныхТранки VLANовТранк — это соединение типа точка-точка между сетевыми устройствами, которые передают данные более чем одного VLANа. Если бы не было транков, для каждого VLANа при соединении коммутаторов необходимо было бы выделять отдельный порт. При транке все VLANы проходят через один порт.Для того, чтобы транковый порт знал, к какому VLANу принадлежит фрейм, передаваемый через порт, в заголовок фрейма вводится тег 802.1Q, в котором указывается номер VLANа, также приоритет передаваемого кадра.Если на порт поступает нетегированный фрейм, коммутатор автоматически отправляет его в родной VLAN. По умолчанию родным VLANом является VLAN1. Но его можно изменить командой:S1(config-if)#switchport mode trunkS1(config-if)#switchport trunk native vlan vlan-idДля проверки, на какой родной VLAN передается нетегированный фрейм, используется команда:S1#show interfaces interface-id switchportDTPDTP — это проприеритарный протокол коспании Cisco, который позволяет автоматически настраивать транкинговые режимы работы портов коммутатора. Бывает три режима работы:On (по умолчанию) — коммутатор периодически отправляет на удаленный порт DTP-фрейм, которым извещает, что он работает как транковый порт. Включается командой S1(config-if)#switchport mode trunk. Если удаленный порт работает как access-порт, локальный порт не рекомендуется использовать с этим режимом DTP.Dynamic auto — коммутатор периодически отправляет на удаленный порт DTP-фрейм, которым извещает, что он готов работать как транковый порт, но не требует работать в транковом режиме. Порт включает транковый режим, если удаленный порт уже работает, как транковый или у него настроен режими Dynamic desirable, порты согласовуют работу в транковом режиме. Если удаленный порт настроен тоже как Dynamic auto, согласование не проводится — порты работают как порты доступа. Если удаленный порт — access, локальный тоже access. Включается командой S1(config-if)#switchport mode dynamic auto.Dynamic desirable — коммутатор периодически отправляет на удаленный порт DTP-фрейм, которым извещает, что он готов работать как транковый порт и просит работать в транковом режиме. Если удаленный порт работает в режиме Dynamic auto или Dynamic desirable, порты переходят работать в транковый режим. Если удаленный порт не поддерживает согласование, локальный порт работает в нетранковом режиме.Отключить согласование режимов работы можно командой S1(config-if)#switchport nonegotiate.Команды для настройка VLANов1. S1(config)#vlan vlan id — добавление VLAN.2. S1(config-vlan)#name vlan name — присвоение имени VLANу.3. S1#show vlan brief — проверка наличия VLANа в база данных, access-портов, принадлежащих VLANу4. S1(config-if)#switchport mode access — перевод порта в режим работы access-порта. S1(config-if)#switchport access vlan vlan id — назначение номера VLANа порту.5. S1#show interfaces [interface-id | vlan vlan-id] | switchport — проверка режима работы конкретного интерфейса6. S1(config-if)#no switchport access vlan — исключение порта из VLANа с настроенным номером и перевод его вVLAN по умолчанию7. S1(config)#no vlan vlan id — удаление VLANа из базы данных. Перед этим обязательно надо удалить все порты из этого VLANа, иначе они будут недоступны.8. S1#delete flash:vlan.dat — удаление всей базы VLANов. Останутся только VLANы по умолчанию.9. S1(config-if)#switchport mode trunk — принудительный перевод режима работы порта в транковый.10. S1(config-if)#switchport trunk native vlan vlan id — изменение родного VLANа для транкового порта.11. S1(config-if)#switchport trunk allowedvlan id — назначение VLANов, которые могут проходить через порт. Без применения этой команды все VLANы могут проходить через порт.12. S1(config-if)#no switchport trunk allowed vlan — сброс всех разрешенных VLANов на транковом порту.13. S1(config-if)#no switchport trunk native vlan — возвращение VLAN1 как родного VLANа на транковом порту. Одно из отличий коммутаторов Cisco от коммутаторов других производителей, это введение так называемого Native VLAN. Что он из себе представляет?Native VLAN — это влан к которому коммутатор относит все кадры идущие без тега, или кадры получаемые с не распределенных портов (портов которые явно не включены ни в один влан). То есть если коммутатор получает нетегированные кадры на транковом порту он автоматически причисляет их к Native VLAN. И точно так же кадры генерируемые с не распределенных портов при попадании в транк-порт причисляются к Native VLAN. Продемонстрировать все это для наглядности можно все в том же Packet Tracer в режиме симуляции. Итак, имеем два коммутатора. Порты fa 0/1 являются портами доступа для VLAN2, а порты fa 0/3 — для VLAN1. Порты fa 0/2 не распределены. Между коммутаторами транковый линк. На выходе в 5й (транк-порт) в заголовке тип будет уже 0x810 — инкапсуляция 802.1Q (оно же технология VLAN) с тегом 2. Теперь пинг от PC3 к PC4. И на входе во 2й порт и на выходе в 5й (транковый порт) получаем один и тот же заголовок Ethernet II без тега. И последнее. Пинг от PC5 к PC6. Напомним, что порты распределены в 1 влан, и native vlan по умолчанию так же носит номер 1. Соответственно трафик так же как и в предыдущем случае идет без тега. Посмотреть информацию по тому, какой native vlan сконфигурирован на устройстве можно командами show interface trunk и show interface <тип><номер> switchport На транковом линке обоих коммутаторов Native VLAN должен совпадать.Если не совпадают то коммутатор известит об этом общением — Native VLAN mismatch. Сам native vlan указывается при помощи команды switchport trunk native vlan <номер>.Так как кадры Native VLAN обязаны проходить по транк-линкам без тегов, появление в транк-линке кадра с тегом номер которого совпадает с номером Native VLAN является не допустимым, и коммутатор получив такой кадр его уничтожает.Скачать:pkt-файлPS в pkt-файле есть небольшое изменение. Порты коммутаторов fa 0/2 переведены в режим trunk. Результат точно такой же, кадры идут без тега и дублируются на порты распределенные в первый влан (т.к. он же native) и наоборот.PPS если задать на коммутаторах разные Native vlan, то можно получить ситуацию с отбрасыванием кадров при совпадении тега с номером native vlan.Используемые источники:
- https://wiki.dieg.info/vlan
- http://laferont.blogspot.com/2013/12/vlan.html
- http://blog.evgenybelkin.ru/2011/05/native-vlan.html