ВЗЯТО С: 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/18
S1(config-if)#mls qos trust cos
- определяем голосовй трафик, как приоритетный
S1(config-if)#switchport voice vlan 150
- определяем голосовой VLAN
S1(config-if)#switchport mode access -
определяем, что этот порт для данных (порт доступа - нетегированный трафик)
20
- определяем VLAN для данных
Транки
VLANов
Транк -
это
соединение типа точка-точка между сетевыми устройствами, которые
передают данные более чем одного VLANа. Если бы не было транков, для
каждого VLANа при соединении коммутаторов необходимо было бы выделять
отдельный порт. При транке все VLANы проходят через один порт.
Для
того, чтобы транковый порт знал, к какому VLANу принадлежит фрейм,
передаваемый через порт, в заголовок фрейма вводится тег 802.1Q, в
котором указывается номер VLANа, также приоритет передаваемого кадра.
Если
на порт поступает нетегированный фрейм, коммутатор автоматически
отправляет его в родной VLAN. По умолчанию родным VLANом является VLAN1.
Но его можно изменить командой:
S1(config-if)#switchport mode trunk
vlan-id
Для проверки, на какой родной VLAN передается нетегированный фрейм, используется команда:
S1#show interfaces interface-id
switchport
DTP
DTP
- это проприеритарный протокол коспании Cisco, который позволяет
автоматически настраивать транкинговые режимы работы портов коммутатора.
Бывает три режима работы:
On
(по умолчанию) - коммутатор
периодически отправляет на удаленный порт DTP-фрейм, которым извещает,
что он работает как транковый порт. Включается командой . Если удаленный порт работает как 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
| 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 allowed
vlan id
- назначение VLANов, которые могут проходить через порт. Без применения этой команды все VLANы могут проходить через порт.
12. S1(config-if)#no switchport trunk allowed vlan
- сброс всех разрешенных VLANов на транковом порту.
13. S1(config-if)#no switchport trunk native vlan
- возвращение VLAN1 как родного VLANа на транковом порту.
Доброго времени суток, уважаемый посетитель. Сегодня я, как обычно, по нашей доброй традиции, буду рассказывать кое-что интересное. А рассказ сегодня пойдет про замечательную штуку в локальных сетях под названием VLAN. В природе не мало разновидностей данной технологии, про все рассказывать не будем, а только про те, которые решили бы стоящую перед нашей компанией задачу. Данная технология уже не раз применялась нашими специлистами в нашей практике ИТ аутсорсинга в регионе , Но в этот раз, всё было несколько интереснее, т.к. оборудование с которым пришлось работать - несколько "урезанное" (прошлая похожая задача релизовывалась на коммутаторе D-link DES-1210-28). Но, обо всем по порядку.
Что же такое VLAN ?
VLAN – логическая («виртуальная») локальная сеть, представляет собой группу хостов с общим набором требований, которые взаимодействуют так, как если бы они были подключены к широковещательному домену, независимо от их физического местонахождения. VLAN имеет те же свойства, что и физическая локальная сеть, но позволяет конечным станциям группироваться вместе, даже если они не находятся в одной физической сети. Такая реорганизация может быть сделана на основе программного обеспечения вместо физического перемещения устройств.
Данная технология позволяет выполнять две задачи:
1) группировать устройства на канальном уровне (т.е. устройства, находящиеся в одном VLAN’е), хотя физически при этом они могут быть подключены к разным сетевым коммутаторам (расположенным, к примеру, географически отдаленно);
2) разграничивать устройства (находящиеся в разных VLAN’ах), подключенные к одному коммутатору.
Иначе говоря, VLAN ‘ы позволяют создавать отдельные широковещательные домены, снижая, тем самым, процент широковещательного трафика в сети.
Port - Base VLAN
Port-Base VLAN – представляет собой группу портов или порт в коммутаторе, входящий в один VLAN. Порты в таком VLAN называются не помеченными (не тегированными), это связанно с тем, что кадры приходящие и уходящие с порта не имеют метки или идентификатора. Данную технологию можно описать кратко – VLAN ’ы только в коммутаторе. Эту технологию мы будем рассматривать на управляемом коммутаторе D-link DGS-1100-24.
IEEE 802.1Q
IEEE 802.1Q - открытый стандарт, который описывает процедуру тегирования трафика для передачи информации о принадлежности к VLAN. Для этого в тело фрейма помещается тег, содержащий информацию о принадлежности к VLAN’у. Т.к. тег помещается в тело, а не в заголовок фрейма, то устройства, не поддерживающие VLAN’ы, пропускают трафик прозрачно, то есть без учета его привязки к VLAN’у.
Немного наркомании, а именно - процедура помещения тега в кадр называется – инъекция.
Размер тега - 4 байта. Он состоит из таких полей:
Порты в 802.1Q
Порты могут быть в одном из следующих режимов:
Пример. Имеется офисное помещение, в котором отдел кадров разделен на два этажа, нужно, чтобы сотрудники были отделены от общей сети. Имеется два коммутатора. Создадим VLAN 3 на одном и втором, порты, которые будут в одном из VLAN укажем как Untagget Port. Для того, чтобы коммутаторы понимали в какой VLAN адресуется кадр, нужен порт, через который будет пересылаться трафик в этот же VLAN другого коммутатора. Выделим, к примеру, один порт и укажем его как Tagget. Если у нас, помимо VLAN 3, есть еще и другие, и ПК-1 расположенный в VLAN 3 будет искать ПК-2, то широковещательный трафик не будет «ходить» по всей сети, а только в VLAN 3. Прибежавший кадр будет пропускаться через MAC-таблицу, если же адрес получателя не будет найдет, такой кадр будет отправлен через все порты такого VLAN откуда он прибежал и порт Tagget с меткой VLAN, чтобы другой коммутатор воспроизвел широковещание на ту группу портов, которые указаны в поле VID. Данный пример описывает VLAN – один порт может быть только в одном VLAN.
IEEE 802.1 ad
802.1ad - это открытый стандарт (аналогично 802.1q), описывающий двойной тег. Также известен как Q-in-Q, или Stacked VLANs. Основное отличие от предыдущего стандарта - это наличие двух VLAN’ов - внешнего и внутреннего, что позволяет разбивать сеть не на 4095 VLAN’ов, а на 4095х4095.
Сценарии могут быть различны – провайдеру надо “пробросить” транк клиента, не затрагивая схему нумерации VLAN’ов, надо балансировать нагрузку между субинтерфейсами внутри сети провайдера, либо просто – маловато номеров. Самое простое – сделать ещё одну такую же метку (tag).
Асимметричный VLAN
В терминологиях D-Link, а также в настройках VLAN, есть понятие асимметричный VLAN – это такой VLAN, в котором один порт может быть в нескольких VLAN.
Состояние портов меняется
Таким образом, мы получаем то, что внутри устройства один порт может принадлежать сразу нескольким VLAN, но при этом, уходящий в tagged (TRUNK) порт, трафик будет маркироваться номером, который мы задаем в PVID.
Ограничение: Функция IGMP Snooping не работает при использовании асимметричных VLAN.
Создание VLAN на D- link DGS-1100-24.
Что имеется. Два коммутатора, один из них D-link DGS-1100-24, к нему подключен коммутатор №2. В коммутатор №2 подключены машины пользователей – абсолютно всех, а также сервера, шлюз по умолчанию и сетевое хранилище.
Задача. Ограничить отдел кадров от общей среды, так, чтобы при этом были доступны сервера, шлюз и сетевое хранилище.
Ко всему прочему, коммутатор D-link DGS-1100-24 только что вынули из коробки. По умолчанию большинство управляемых коммутаторов компании D-Link имеют адрес 10.90.90.90/8. Нас не интересует физическое нахождение у коммутатора или смена адреса. Существует специальная утилита D-Link SmartConsole Utility, которая помогает найти наше устройство по сети. После установки запускаем утилиту.
Прежде чем переходить к настройке, переключим порты должным образом:
1) Переключим порт отдела кадров с коммутатора №2 в коммутатор №1
2) Переключим сервера, шлюз и сетевое хранилище с коммутатора №2 в коммутатор №1
3) Подключим коммутатор №2 в коммутатор №1
После такого переключения видим следующую картину: сервера, шлюз, сетевое хранилище и отдел кадров подключены в коммутатор №1, а все остальные пользователи в коммутатор №2.
Жмем кнопку «Discovery»
Ставим галочку и жмем значок шестеренки, открывается окно настройки коммутатора. После задания адреса, маски и шлюза, пишем пароль, который по умолчанию admin.
Жмем «Add VLAN» и указываем имя VLAN и порты
Жмем «Apply»
После создания нужных VLAN, сохраним настройку, для этого нажмем «Save», «Save configuration»
Итак, мы видим, что VLAN 3 не имеет доступа к портам 01-08, 15-24 – следовательно, не имеет доступ к серверам, шлюзу, сетевому хранилищу, к VLAN2 и остальным клиентам – которые подключены к коммутатору №2. Тем не менее VLAN 2 имеет доступ к серверам, шлюзу, сетевому хранилищу, но не имеет к остальным машинам. И наконец, все остальные машины видят сервера, шлюз, сетевое хранилище, но не видят порты 05,06.]
Таким образом, при наличии определенных знананий об особенностях оборудования и навыков ИТ-аутсорсинга , можно удовлетворить потребности клиента даже на таком бюджетном оборудовании как коммутатор D-Link DGS1100-24 .
Все, люди, Мир Вам!
Сегодня я начну небольшую серию статей о VLAN. Начнем с того что это, для чего нужно, как настроить и дальше будем углубляться и постепенно изучим если не все то большую часть всех возможностей, которые нам предоставляют VLAN.
Итак, помните, мы с вами говорили о таком понятии как ? Думаю помните. Так же мы с вами говорили о том, что адреса бывают нескольких видов: .
Исходя из этого сделаем еще одно вводное понятие. Широковещательный домен. Что он из себя представляет?
Если посылается фрейм/пакет, широковещательный (если это фрейм то поле Destination Address все биты равны единицы, или в 16-ом виде MAC адрес будет равен: FF FF FF FF FF FF), то этот фрейм будет переправлен во все порты коммутатора, исключая того, с которого был получен данный фрейм. Это произойдет в случае, когда например коммутатор у нас не управляемый, или если управляемый, но все находятся в одном VLAN (об этом позже).
Вот такой список устройств, который получает эти широковещательные фреймы и называются — широковещательным доменом.
Теперь определимся, а что же такое VLAN ?
VLAN — Virtual Local Area Network, т.е. некая виртуальная сеть. Для чего же она нужна?
VLAN позволяет разделить нам широковещательные домены в одном коммутаторе. Т.е. если у нас есть один коммутатор, мы одни порты отнесем к одному VLAN, другой к другому. И это у нас будут два разный broadcast domen. Конечно же этим не ограничиваются возможности. О них я буду рассказывать дальше, все постепенно.
Если кратко сказать, то VLAN позволяет администратору более гибко создавать сеть, разбивая ее, на некоторые подсети (например сеть бухгалтеров, сеть менеджеров, и так далее), иными словами VLAN помогает объеденить устройства с каким-то общим набором требований в единую группу, и отделить ее от других таких же обособленных групп.
Сразу оговорюсь, что VLAN работают на уровне OSI Layer 2.
Вспомним, когда рассматривали кадр , то никакого поля для VLAN там не было. Как же тогда определить, к какому VLAN относится тот или иной фрейм?
Существует несколько стандартов.
1. IEEE 802.1Q — этот стандарт является открытым. Этот стандарт помечает тот или иной фрейм, который «привязан» к какому-то VLAN тэгированием.
Тэгирование это функция коммутатора (или любого другого устройства, которое «понимает» VLAN), которая вставляет в фрейм ethernet некий тэг, состоящий из 4 байт. Процедура тэгирования не меняет данные заголовка, таким образом, оборудование, которое не поддерживает технологию VLAN, может без проблем передавать такой фрейм дальше по сети, сохраняя тэг.
Вот так будет выглядеть фрейм, после вставки тэга VLAN.
Исходя их рисунка, видим, что VLAN tag состоит из 4 полей, опишим их:
— 2 байта Tag Protocol Identifier (TPID) — это идентификатор протокола, в нашем случае это 802.1Q, в 16-ом виде это поле будет выглядеть как: 0x8100.
— Priority — поле для задания приоритета по стандарту 802.1p (о нем в следующих статьях). Размер этого поля составляет 3 бита (8 значений 0-7).
— Canonical Format Indicator (CFI). Индикатор канонического формата, размер этого поля составляет 1 бит. Это поле указывает на формат mac адреса (1 — кононический, 0 не канонический.)
— VLAN ID, собственно это то, ради чего мы сегодня собрались 🙂 Идентификатор VLAN. Размер поля 12 бит, может принимать значение от 0 до 4095.
При использовании VLAN (тэгирования) по стандарту 802.1Q вносятся изменения в фрейм, следовательно необходимо пересчитать FCS значение, что собственно и делается коммутатором.
В стандарте 802.1Q есть такое понятие как Native VLAN, по умолчанию Native VLAN ID равен единицы (можно менять), Native VLAN характеризуется тем, что этот VLAN не тэгируется.
2. Inter-switch-link (ISL). Протокол, разработанный компанией Cisco и может использоваться только на своем оборудовании.
Этот протокол был разработан еще до принятия 802.1Q.
В настоящее время ISL уже не поддерживается на новом оборудовании, но тем не менее, вы можете столкнуться с работой этого протокола, поэтому нам необходимо с ним ознакомиться.
В отличии от 802.1Q, где осуществлялось простое тэгирование кадра (вставка 4 байт внутрь фрейма), здесь используется технология инкапсуляции, тоесть добавляется некий заголовок, в котором содержится информация о VLAN. VLAN ISL, в отличии от 802.1Q поддерживает до 1000 VLAN.
Рассмотрим фрейм в графическом виде, как же выглядит эта инкапсуляция.
Здесь мы можем сразу увидеть первый и пожалуй самый основной недостаток ISL — это увеличение кадра на 30 байт (26 байт заголовок и 4 байта FCS).
Рассмотрим ISL Header более подробно, посмотрим, что же там хранится в стольки то байтах!
0000 — Ethernet
0001 — Token-Ring
0010 — FDDI
0011 — ATM
В нашем случае так как мы рассматриваем Ethernet , то это значение будет равен всем 0.
Можно сделать некоторые выводы, в пользую 802.1Q.
В этой статье мы кратко ознакомились с понятием VLAN. Дальше будем разбираться в деталях.
P.S. Возможно, со временем список дополнится.
Сразу приведу список IP-адресов:
Работа сети в одном широковещательном домене
В 3-ей части я показал, как выглядит ethernet-кадр. Посмотрите на него и освежите в памяти. Вот так выглядит не тегированный кадр.
Теперь взглянем на тегированный.
Как видим, отличие в том, что появляется некий Тег . Это то, что нам и интересно. Копнем глубже. Состоит он из 4-х частей.
1) TPID (англ. Tag Protocol ID) или Идентификатор тегированного протокола
- состоит из 2-х байт и для VLAN всегда равен 0x8100.
2) PCP (англ. Priority Code Point) или значение приоритета
- состоит из 3-х бит. Используется для приоритезации трафика. Крутые и бородатые сисадмины знают, как правильно им управлять и оперирует им, когда в сети гуляет разный трафик (голос, видео, данные и т.д.)
3) CFI (англ. Canonical Format Indicator) или индикатор каноничного формата
- простое поле, состоящее из одного бита. Если стоит 0, то это стандартный формат MAC-адреса.
4) VID (англ. VLAN ID) или идентификатор VLAN
- состоит из 12 бит и показывает, в каком VLAN находится кадр.
Хочу заострить внимание на том, что тегирование кадров осуществляется между сетевыми устройствами (коммутаторы, маршрутизаторы и т.д.), а между конечным узлом (компьютер, ноутбук) и сетевым устройством кадры не тегируются. Поэтому порт сетевого устройства может находиться в 2-х состояниях: access или trunk .
Набираю команду show vlan .
1 столбец - это номер VLAN. Здесь изначально присутствует номер 1 - это стандартный VLAN, который изначально есть на каждом коммутаторе. Он выполняет еще одну функцию, о которой чуть ниже напишу. Также присутствуют зарезервированные с 1002-1005. Это для других канальных сред, которые вряд ли сейчас используются. Удалить их тоже нельзя.
Switch(config)#no vlan 1005
Default VLAN 1005 may not be deleted.
При удалении Cisco выводит сообщение, что этот VLAN удалить нельзя. Поэтому живем и эти 4 VLANа не трогаем.
2 столбец - это имя VLAN. При создании VLAN, вы можете на свое усмотрение придумывать им осмысленные имена, чтобы потом их идентифицировать. Тут уже есть default, fddi-default, token-ring-default, fddinet-default, trnet-default.
3 столбец - статус. Здесь показывается в каком состоянии находится VLAN. На данный момент VLAN 1 или default в состоянии active, а 4 следующих act/unsup (хоть и активные, но не поддерживаются).
4 столбец - порты. Здесь показано к каким VLAN-ам принадлежат порты. Сейчас, когда мы еще ничего не трогали, они находятся в default.
Приступаем к настройке коммутаторов. Правилом хорошего тона будет дать коммутаторам осмысленные имена. Чем и займемся. Привожу команду.
Switch(config)#hostname CentrSW
CentrSW(config)#
Остальные настраиваются аналогично, поэтому покажу обновленную схему топологии.
SW1(config)#vlan 2 - создаем VLAN 2 (VLAN 1 по умолчанию зарезервирован, поэтому берем следующий).
SW1(config-vlan)#name Dir-ya - попадаем в настройки VLAN и задаем ему имя.
VLAN создан. Теперь переходим к портам. Интерфейс FastEthernet0/1 смотрит на PC1, а FastEthernet0/2 на PC2. Как говорилось ранее, кадры между ними должны передаваться не тегированными, поэтому переведем их в состояние Access.
SW1(config)#interface fastEthernet 0/1 - переходим к настройке 1-ого порта.
SW1(config-if)#switchport mode access - переводим порт в режим access.
SW1(config-if)#switchport access vlan 2 - закрепляем за портом 2-ой VLAN.
SW1(config)#interface fastEthernet 0/2 - переходим к настройке 2-ого порта.
SW1(config-if)#switchport mode access - переводим порт в режим access.
SW1(config-if)#switchport access vlan 2 - закрепляем за портом 2-ой VLAN.
Так как оба порта закрепляются под одинаковым VLAN-ом, то их еще можно было настроить группой.
SW1(config)#interface range fastEthernet 0/1-2 - то есть выбираем пул и далее настройка аналогичная.
SW1(config-if-range)#switchport mode access
SW1(config-if-range)#switchport access vlan 2
Настроили access порты. Теперь настроим trunk между SW1 и CentrSW.
SW1(config)#interface fastEthernet 0/24 - переходим к настройке 24-ого порта.
SW1(config-if)#switchport mode trunk - переводим порт в режим trunk.
%LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/24, changed state to down
%LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/24, changed state to up
Сразу видим, что порт перенастроился. В принципе для работы этого достаточно. Но с точки зрения безопасности разрешать для передачи нужно только те VLAN, которые действительно нужны. Приступим.
SW1(config-if)#switchport trunk allowed vlan 2 - разрешаем передавать только 2-ой VLAN.
Без этой команды передаваться будут все имеющиеся VLAN. Посмотрим, как изменилась таблица командой show vlan
.
Чтобы вывести только верхнюю таблицу, можно воспользоваться командой show vlan brief .
Осталось настроить остальные устройства.
CentrSW:
Центральный коммутатор является связующим звеном, а значит он должен знать обо всех VLAN-ах. Поэтому сначала создаем их, а потом переводим все интерфейсы в транковый режим.
CentrSW(config)#vlan 2
CentrSW(config-vlan)# name Dir-ya
CentrSW(config)#vlan 3
CentrSW(config-vlan)# name buhgalter
CentrSW(config)#vlan 4
CentrSW(config-vlan)# name otdel-kadrov
CentrSW(config)#interface range fastEthernet 0/1-3
CentrSW(config-if-range)#switchport mode trunk
Не забываем сохранять конфиг. Команда copy running-config startup-config.
SW2(config)#vlan 3
SW2(config-vlan)#name buhgalter
SW2(config)#interface range fastEthernet 0/1-2
SW2(config-if-range)#switchport mode access
SW2(config-if-range)#switchport access vlan 3
SW2(config)#interface fastEthernet 0/24
SW2(config-if)#switchport mode trunk
SW2(config-if)#switchport trunk allowed vlan 3
SW3:
SW3(config)#vlan 4
SW3(config-vlan)#name otdel kadrov
SW3(config)#interface range fastEthernet 0/1-2
SW3(config-if-range)#switchport mode access
SW3(config-if-range)#switchport access vlan 4
SW3(config)#interface fastEthernet 0/24
SW3(config-if)#switchport mode trunk
SW3(config-if)#switchport trunk allowed vlan 4
Обратите внимание на то, что мы подняли и настроили VLAN, но адресацию узлов оставили такой же. То есть, фактически все узлы в одной подсети, но разделены VLAN-ами. Так делать нельзя. Каждому VLAN надо выделять отдельную подсеть. Я это сделал исключительно в учебных целях. Если бы каждый отдел сидел в своей подсети, то они бы априори были ограничены, так как коммутатор не умеет маршрутизировать трафик из одной подсети в другую (плюс это уже ограничение на сетевом уровне). А нам нужно ограничить отделы на канальном уровне.
Снова отправляю ping с PC1 к PC3.
Идет в ход ARP, который нам и нужен сейчас. Откроем его.
Пока что ничего нового. ARP инкапсулирован в ethernet.
Кадр прилетает на коммутатор и тегируется. Теперь там не обычный ethernet, а 802.1q. Добавились поля, о которых я писал ранее. Это TPID , который равен 8100 и показывающий, что это 802.1q. И TCI , которое объединяет 3 поля PCP, CFI и VID . Число, которое в этом поле - это номер VLAN. Двигаемся дальше.
Анимация
SW2(config)#vlan 2
SW2(config-vlan)#name Dir-ya
Дальше настраиваем порт FastEthernet 0/3, который смотрит на PC7.
SW2(config)#interface fastEthernet 0/3
SW2(config-if)#switchport mode access
SW2(config-if)#switchport access vlan 2
И последнее - настроить транковый порт.
SW2(config)#interface fastEthernet 0/24
SW2(config-if)#switchport trunk allowed vlan add 2 - обратите внимание на эту команду.
А именно на ключевое слово "add". Если не дописать это слово, то вы сотрете все остальные разрешенные к передаче VLAN на этом порту.
Поэтому если у вас уже был поднят транк на порту и передавались другие VLAN, то добавлять надо именно так.
Чтобы кадры ходили красиво, подкорректирую центральный коммутатор CentrSW.
CentrSW(config)#interface fastEthernet 0/1
CentrSW(config-if)#switchport trunk allowed vlan 2
CentrSW(config)#interface fastEthernet 0/2
CentrSW(config-if)#switchport trunk allowed vlan 2,3
CentrSW(config)#interface fastEthernet 0/3
CentrSW(config-if)#switchport trunk allowed vlan 4
Время проверки. Отправляю ping с PC1 на PC7.
И вот он приходит на SW2. Открываем и видим, что он еще тегированный. Но следующим узлом стоит компьютер и тег надо снимать. Нажимаем на «Outbound PDU Details», чтобы посмотреть в каком виде кадр вылетит из коммутатора.
Логика работы VLAN
Осталось настроить маршрутизатор, и я открываю его CLI. По традиции дам осмысленное имя.
Router(config)#hostname Gateway
Gateway(config)#
Далее переходим к настройке интерфейсов.
Gateway(config)#interface fastEthernet 0/0 - переходим к требуемому интерфейсу.
Gateway(config-if)#no shutdown - включаем его.
%LINK-5-CHANGED: Interface FastEthernet0/0, changed state to up
%LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/0, changed state to up
Теперь внимание! Мы включили интерфейс, но не повесили на него IP-адрес. Дело в том, что от физического интерфейса (fastethernet 0/0) нужен только линк или канал. Роль шлюзов будут выполнять виртуальные интерфейсы или сабинтерфейсы (англ. subinterface). На данный момент 3 типа VLAN. Значит и сабинтерфейсов будет 3. Приступаем к настройке.
Gateway(config)#interface fastEthernet 0/0.2
Gateway(config-if)#encapsulation dot1Q 2
Gateway(config-if)#ip address 192.168.1.1 255.255.255.0
Gateway(config)#interface fastEthernet 0/0.3
Gateway(config-if)#encapsulation dot1Q 3
Gateway(config-if)#ip address 192.168.2.1 255.255.255.0
Gateway(config)#interface fastEthernet 0/0.4
Gateway(config-if)#encapsulation dot1Q 4
Gateway(config-if)#ip address 192.168.3.1 255.255.255.0
Маршрутизатор настроен. Переходим к центральному коммутатору и настроим на нем транковый порт, чтобы он пропускал тегированные кадры на маршрутизатор.
CentrSW(config)#interface fastEthernet 0/24
CentrSW(config-if)#switchport mode trunk
CentrSW(config-if)#switchport trunk allowed vlan 2,3,4
Конфигурация закончена и переходим к практике. Отправляю ping с PC1 на PC6 (то есть на 192.168.3.3).
InterVLAN Routing
Кстати очень хорошо этот вопрос разобран в этом видео (видео идет около 3-х часов, поэтому ссылка с привязкой именно к тому моменту времени). Если после прочтения и просмотра видео захочется добить все собственными руками, прикладываю ссылку на скачивание.
Разобрались с VLAN-ами и переходим к одному из протоколов, работающего с ним.
DTP (англ. Dynamic Trunking Protocol)
или на русском динамический транковый протокол
- проприетарный протокол компании Cisco, служащий для реализации trunk режима между коммутаторами. Хотя в зависимости от состояния, они могут согласоваться и в режим access.
В DTP есть 4 режима: Dynamic auto, Dynamic desirable, Trunk, Access. Рассмотрим как они согласуются.
Режимы | Dynamic auto | Dynamic desirable | Trunk | Access |
---|---|---|---|---|
Dynamic auto | Access | Trunk | Trunk | Access |
Dynamic desirable | Trunk | Trunk | Trunk | Access |
Trunk | Trunk | Trunk | Trunk | Отсутствие соединения |
Access | Access | Access | Отсутствие соединения | Access |
То есть левая колонка это 1-ое устройство, а верхняя строка 2-ое устройство. По-умолчанию коммутаторы находятся в режиме «dynamic auto». Если посмотреть таблицу сопоставления, то два коммутатора в режиме «dynamic auto» согласуются в режим «access». Давайте это и проверим. Создаю я новую лабораторную работу и добавлю 2 коммутатора.
Сразу дам вам хороший совет. При тестировании какого либо протокола, пользуйтесь фильтрами. Отключайте показ работы всех ненужных вам протоколов.
Перевожу CPT в режим simulation и отфильтрую все протоколы, кроме DTP.
1) DTP Type
- сюда отправляющий вставляет предложение. То есть в какой режим он хочет согласоваться. В нашем случае он предлагает согласовать «access».
2) Neighbor MAC-address
- в это поле он записывает MAC-адрес своего порта.
Отправляет он и ждет реакции от соседа.
New_SW(config)#interface fastEthernet 0/1
New_SW(config-if)#switchport mode trunk
Соединяю их и смотрю, как они согласовались.
Думаю понятно почему нельзя доверять этому протоколу. Он вроде облегчает жизнь, но в то же время может создать огромную проблему. Поэтому полагайтесь на ручной метод. При настройке сразу же обозначьте себе какие порты будут работать в режиме trunk, а какие в access. И самое главное - всегда отключайте согласование. Чтобы коммутаторы не пытались ни с кем согласоваться. Делается это командой «switchport nonegotiate».
Переходим к следующему протоколу.
VTP (англ. VLAN Trunking Protocol) - проприетарный протокол компании Cisco, служащий для обмена информацией о VLAN-ах.
Представьте ситуацию, что у вас 40 коммутаторов и 70 VLAN-ов. По хорошему нужно вручную на каждом коммутаторе их создать и прописать на каких trunk-ых портах разрешать передачу. Дело это муторное и долгое. Поэтому эту задачу может взвалить на себя VTP. Вы создаете VLAN на одном коммутаторе, а все остальные синхронизируются с его базой. Взгляните на следующую топологию.
Итак. VTP может создавать, изменять и удалять VLAN. Каждое такое действие влечет к тому, что увеличивается номер ревизии (каждое действие увеличивает номер на +1). После он рассылает объявления, где указан номер ревизии. Клиенты, получившие это объявление, сравнивают свой номер ревизии с пришедшим. И если пришедший номер выше, они синхронизируют свою базу с ней. В противном случае объявление игнорируется.
Но это еще не все. У VTP есть роли. По-умолчанию все коммутаторы работают в роли сервера. Расскажу про них.
Начитались теории и переходим к практике. Проверим, что центральный коммутатор в режиме Server. Вводим команду show vtp status .
SW1(config)#vtp mode client
Setting device to VTP CLIENT mode.
Видим сообщение, что устройство перешло в клиентский режим. Остальные настраиваются точно также.
Чтобы устройства смогли обмениваться объявлениями, они должны находиться в одном домене. Причем тут есть особенность. Если устройство (в режиме Server или Client) не состоит ни в одном домене, то при первом полученном объявлении, перейдет в объявленный домен. Если же клиент состоит в каком то домене, то принимать объявления от других доменов не будет. Откроем SW1 и убедимся, что он не состоит ни в одном домене.
Теперь переходим центральному коммутатору и переведем его в домен.
CentrSW(config)#vtp domain cisadmin.ru
Changing VTP domain name from NULL to cisadmin.ru
Видим сообщение, что он перевелся в домен cisadmin.ru.
Проверим статус.
Принцип работы протокола VTP
Представляет собой группу хостов с общим набором требований, которые взаимодействуют так, как если бы они были подключены к широковещательному домену , независимо от их физического местонахождения. VLAN имеет те же свойства, что и физическая локальная сеть, но позволяет конечным станциям группироваться вместе, даже если они не находятся в одной физической сети. Такая реорганизация может быть сделана на основе программного обеспечения вместо физического перемещения устройств.
Для этого существуют следующие решения:
В устройствах Cisco , протокол VTP (англ. VLAN Trunking Protocol ) предусматривает VLAN-домены для упрощения администрирования. VTP также выполняет «чистку» трафика, направляя VLAN трафик только на те коммутаторы, которые имеют целевые VLAN-порты (функция VTP pruning). Коммутаторы Cisco в основном используют протокол 802.1Q Trunk вместо устаревшего проприетарного ISL (англ. Inter-Switch Link ) для обеспечения совместимости информации.
По умолчанию на каждом порту коммутатора имеется сеть VLAN1 или VLAN управления. Сеть управления не может быть удалена, однако могут быть созданы дополнительные сети VLAN и этим альтернативным VLAN могут быть дополнительно назначены порты.
Native VLAN - это параметр каждого порта, который определяет номер VLAN, который получают все непомеченные (untagged) пакеты.
В Cisco используется следующая терминология портов:
Для того чтобы передать через порт трафик нескольких VLAN, порт переводится в режим транка.
Режимы интерфейса (режим по умолчанию зависит от модели коммутатора):
По умолчанию в транке разрешены все VLAN. Для того чтобы через соответствующий VLAN в транке передавались данные, как минимум, необходимо чтобы VLAN был активным. Активным VLAN становится тогда, когда он создан на коммутаторе и в нём есть хотя бы один порт в состоянии up/up.