VLAN в Cisco

Материал из Xgu.ru

(Перенаправлено с vlan/cisco)
Перейти к: навигация, поиск
Короткий URL: vlan/cisco
Автор: Наташа Самойленко

< VLAN

На этой странице рассматривается процедура настройки VLAN в Cisco.

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

Содержание

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

Сеть с VLANами на коммутаторах Cisco

Терминология Cisco:

  • access port — порт принадлежащий одному VLAN'у и передающий нетегированный трафик
  • trunk port — порт передающий тегированный трафик одного или нескольких VLAN'ов

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

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

Создание VLAN'а с идентификатором 2 и задание имени для него:

sw1(config)# vlan 2
sw1(config-vlan)# name test

Удаление VLAN'а с идентификатором 2:

sw1(config)# no vlan 2

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

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

sw1(config)# interface fa0/1
sw1(config-if)# switchport mode access
sw1(config-if)# switchport access vlan 2

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

sw1(config)# interface range fa0/4 - 5
sw1(config-if-range)# switchport mode access
sw1(config-if-range)# switchport access vlan 10

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

sw1# show vlan brief
VLAN Name                             Status    Ports

---- -------------------------------- --------- -------------------------------

1    default                          active    Fa0/6, Fa0/7, Fa0/8, Fa0/9, 
                                                Fa0/10, Fa0/11, Fa0/12, Fa0/13,
                                                Fa0/14, Fa0/15, Fa0/16, Fa0/17,  
                                                Fa0/18, Fa0/19, Fa0/20, Fa0/21,
                                                Fa0/22, Fa0/23, Fa0/24

2    test                             active    Fa0/1, Fa0/2
    
10   VLAN0010                         active    Fa0/4, Fa0/5

15   VLAN0015                         active    Fa0/3 
 

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

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

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

  • auto — Порт находится в автоматическом режиме и будет переведён в состояние trunk, только если порт на другом конце находится в режиме on или desirable. Т.е. если порты на обоих концах находятся в режиме "auto", то trunk применяться не будет.
  • desirable — Порт находится в режиме "готов перейти в состояние trunk"; периодически передает DTP-кадры порту на другом конце, запрашивая удаленный порт перейти в состояние trunk (состояние trunk будет установлено, если порт на другом конце находится в режиме on, desirable, или auto).
  • trunk — Порт постоянно находится в состоянии trunk, даже если порт на другом конце не поддерживает этот режим.
  • nonegotiate — Порт готов перейти в режим trunk, но при этом не передает DTP-кадры порту на другом конце. Этот режим используется для предотвращения конфликтов с другим "не-cisco" оборудованием. В этом случае коммутатор на другом конце должен быть вручную настроен на использование trunk'а.

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

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

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

sw1(config)# interface fa0/3
sw1(config-if)# switchport mode access
sw1(config-if)# switchport access vlan 15
% Access VLAN does not exist. Creating vlan 15

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

sw3(config)# vlan 2,10,15

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

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

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

sw1(config)# interface fa0/22
sw1(config-if)# switchport mode trunk

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

sw1(config-if)# switchport mode trunk
Command rejected: An interface whose trunk encapsulation is “Auto” can not be configured to “trunk” mode.

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

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

sw1(config-if)# switchport trunk encapsulation dot1q 

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

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

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

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

  • auto — Порт находится в автоматическом режиме и будет переведён в состояние trunk, только если порт на другом конце находится в режиме on или desirable. Т.е. если порты на обоих концах находятся в режиме "auto", то trunk применяться не будет.
  • desirable — Порт находится в режиме "готов перейти в состояние trunk"; периодически передает DTP-кадры порту на другом конце, запрашивая удаленный порт перейти в состояние trunk (состояние trunk будет установлено, если порт на другом конце находится в режиме on, desirable, или auto).
  • nonegotiate — Порт готов перейти в режим trunk, но при этом не передает DTP-кадры порту на другом конце. Этот режим используется для предотвращения конфликтов с другим "не-cisco" оборудованием. В этом случае коммутатор на другом конце должен быть вручную настроен на использование trunk'а.

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

sw1(config-if)# switchport mode dynamic auto

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

sw1(config-if)# switchport mode dynamic desirable

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

sw1(config-if)# switchport nonegotiate

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

sw# show dtp interface

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

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

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

sw1(config)# interface fa0/22
sw1(config-if)# switchport trunk allowed vlan 1-2,10,15

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

sw1(config)# interface fa0/22
sw1(config-if)# switchport trunk allowed vlan add 160

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

sw1(config)# interface fa0/22
sw1(config-if)# switchport trunk allowed vlan remove 160

[править] Native VLAN

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

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

sw1(config-if)# switchport trunk native vlan 5

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

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

Передача трафика между VLANами с помощью коммутатора Cisco

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

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

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

VLAN / интерфейс 3го уровня IP-адрес
VLAN 2 10.0.2.1 /24
VLAN 10 10.0.10.1 /24
VLAN 15 10.0.15.1 /24
Fa 0/10 192.168.1.2 /24


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

sw3(config)# ip routing

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

sw3(config)# interface Vlan2
sw3(config-if)# ip address 10.0.2.1 255.255.255.0
sw3(config-if)# no shutdown

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

sw3(config)# interface Vlan10
sw3(config-if)# ip address 10.0.10.1 255.255.255.0
sw3(config-if)# no shutdown

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

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

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

sw3(config)#interface FastEthernet 0/10
sw3(config-if)# no switchport
sw3(config-if)# ip address 192.168.1.2 255.255.255.0
sw3(config-if)# no shutdown

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

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

sw3(config) ip route 0.0.0.0 0.0.0.0 192.168.1.1

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

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

sw1# show interface fa0/22 trunk

Port                Mode         Encapsulation  Status        Native vlan
Fa0/22              on           802.1q         trunking      1

Port                Vlans allowed on trunk
Fa0/22              1-2,10,15

Port                Vlans allowed and active in management domain
Fa0/22              1-2,10,15

Port                Vlans in spanning tree forwarding state and not pruned
Fa0/22              1-2,10,15

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

sw1# show interface fa0/22 switchport
Name: Fa0/22
Switchport: Enabled
Administrative Mode: trunk
Operational Mode: trunk
Administrative Trunking Encapsulation: dot1q
Operational Trunking Encapsulation: dot1q
Operational Dot1q Ethertype:  0x8100
Negotiation of Trunking: On
Access Mode VLAN: 1 (default)
Trunking Native Mode VLAN: 1 (VLAN_1)
Administrative Native VLAN tagging: enabled
Operational Native VLAN tagging: disabled
Voice VLAN: none
Administrative private-vlan host-association: none 
Administrative private-vlan mapping: none 
Operational private-vlan: none
Trunking VLANs Enabled: ALL
Pruning VLANs Enabled: 2-1001
Capture Mode Disabled
Capture VLANs Allowed: ALL

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

sw1# show interface fa0/3 switchport
Name: Fa0/3
Switchport: Enabled
Administrative Mode: static access
Operational Mode: static access
Administrative Trunking Encapsulation: negotiate
Operational Trunking Encapsulation: native
Operational Dot1q Ethertype:  0x8100
Negotiation of Trunking: Off
Access Mode VLAN: 15 (VLAN0015)
Trunking Native Mode VLAN: 1 (default)
Administrative Native VLAN tagging: enabled
Operational Native VLAN tagging: disabled
Voice VLAN: none
Administrative private-vlan host-association: none 
Administrative private-vlan mapping: none 
Operational private-vlan: none
Trunking VLANs Enabled: ALL
Pruning VLANs Enabled: 2-1001
Capture Mode Disabled
Capture VLANs Allowed: ALL

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

sw1# show vlan brief
VLAN Name                             Status    Ports

---- -------------------------------- --------- -------------------------------

1    default                          active    Fa0/6, Fa0/7, Fa0/8, Fa0/9, 
                                                Fa0/10, Fa0/11, Fa0/12, Fa0/13,
                                                Fa0/14, Fa0/15, Fa0/16, Fa0/17,  
                                                Fa0/18, Fa0/19, Fa0/20, Fa0/21,
                                                Fa0/22, Fa0/23, Fa0/24

2    test                             active    Fa0/1, Fa0/2
    
10   VLAN0010                         active    Fa0/4, Fa0/5

15   VLAN0015                         active    Fa0/3 
 

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

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

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

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

Vlan sw cisco ver2.png

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

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

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

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

Конфигурация sw1:

!
interface FastEthernet0/1
 switchport mode access
 switchport access vlan 2
!
interface FastEthernet0/2
 switchport mode access
 switchport access vlan 2
!
interface FastEthernet0/3
 switchport mode access
 switchport access vlan 15
!
interface FastEthernet0/4
 switchport mode access
 switchport access vlan 10
!
interface FastEthernet0/5
 switchport mode access
 switchport access vlan 10
!
interface FastEthernet0/22
 switchport trunk encapsulation dot1q
 switchport mode trunk
 switchport trunk allowed vlan 1,2,10,15
!

Конфигурация sw2:

!
interface FastEthernet0/1
 switchport mode access
 switchport access vlan 10
!
interface FastEthernet0/2
 switchport mode access
 switchport access vlan 2
!
interface FastEthernet0/3
 switchport mode access
 switchport access vlan 2
!
interface FastEthernet0/22
 switchport trunk encapsulation dot1q
 switchport mode trunk
 switchport trunk allowed vlan 1,2,10
!

Конфигурация sw3:

!
vlan 2,10,15
!
interface FastEthernet0/1
 switchport mode trunk
 switchport trunk allowed vlan 1,2,10,15
!
interface FastEthernet0/2
 switchport mode trunk
 switchport trunk allowed vlan 1,2,10
!

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

Vlan sw cisco routing ver2.png

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

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

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

Конфигурация sw1:

!
interface FastEthernet0/1
 switchport mode access
 switchport access vlan 2
!
interface FastEthernet0/2
 switchport mode access
 switchport access vlan 2
!
interface FastEthernet0/3
 switchport mode access
 switchport access vlan 15
!
interface FastEthernet0/4
 switchport mode access
 switchport access vlan 10
!
interface FastEthernet0/5
 switchport mode access
 switchport access vlan 10
!
interface FastEthernet0/22
 switchport trunk encapsulation dot1q
 switchport mode trunk
 switchport trunk allowed vlan 1,2,10,15
!

Конфигурация sw2:

!
interface FastEthernet0/1
 switchport mode access
 switchport access vlan 10
!
interface FastEthernet0/2
 switchport mode access
 switchport access vlan 2
!
interface FastEthernet0/3
 switchport mode access
 switchport access vlan 2
!
interface FastEthernet0/22
 switchport trunk encapsulation dot1q
 switchport mode trunk
 switchport trunk allowed vlan 1,2,10
!

Конфигурация sw3:

!
ip routing
!
vlan 2,10,15
!
interface FastEthernet0/1
 switchport mode trunk
 switchport trunk allowed vlan 1,2,10,15
!
interface FastEthernet0/2
 switchport mode trunk
 switchport trunk allowed vlan 1,2,10
!
!
interface FastEthernet0/10
 no switchport
 ip address 192.168.1.2 255.255.255.0
!
!
interface Vlan2
 ip address 10.0.2.1 255.255.255.0
!
interface Vlan10
 ip address 10.0.10.1 255.255.255.0
!
interface Vlan15
 ip address 10.0.15.1 255.255.255.0
!
!
ip route 0.0.0.0 0.0.0.0 192.168.1.1
!

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

Передача трафика между VLANами с помощью маршрутизатора

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

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

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

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

VLAN IP-адрес
VLAN 2 10.0.2.1 /24
VLAN 10 10.0.10.1 /24
VLAN 15 10.0.15.1 /24

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

R1(config-if)# encapsulation dot1q <vlan-id>

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

R1(config)# interface fa0/0.2
R1(config-subif)# encapsulation dot1q 2
R1(config-subif)# ip address 10.0.2.1 255.255.255.0

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

R1(config)# interface fa0/0.10
R1(config-subif)# encapsulation dot1q 10
R1(config-subif)# ip address 10.0.10.1 255.255.255.0

Note-icon.gif

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

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

interface FastEthernet0/20
 switchport trunk encapsulation dot1q
 switchport mode trunk

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

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

Конфигурация sw1:

!
interface FastEthernet0/1
 switchport mode access
 switchport access vlan 2
!
interface FastEthernet0/2
 switchport mode access
 switchport access vlan 2
!
interface FastEthernet0/3
 switchport mode access
 switchport access vlan 15
!
interface FastEthernet0/4
 switchport mode access
 switchport access vlan 10
!
interface FastEthernet0/5
 switchport mode access
 switchport access vlan 10
!
interface FastEthernet0/20
 switchport trunk encapsulation dot1q
 switchport mode trunk
 switchport trunk allowed vlan 2,10,15
!

Конфигурация R1:

!
interface fa0/0.2
 encapsulation dot1q 2
 ip address 10.0.2.1 255.255.255.0
!
interface fa0/0.10
 encapsulation dot1q 10
 ip address 10.0.10.1 255.255.255.0
!
interface fa0/0.15
 encapsulation dot1q 15
 ip address 10.0.15.1 255.255.255.0
!

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

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

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

R1(config)# interface fa0/0
R1(config-if)# ip address 10.0.1.1 255.255.255.0

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

R1(config)# interface fa0/0.99
R1(config-subif)# encapsulation dot1q 99 native
R1(config-subif)# ip address 10.0.99.1 255.255.255.0

[править] Примечания

  1. 1,0 1,1 Хотя глазу приятнее видеть написание слова как подинтерфейс, правильное написание всё же через букву ы; подробнее: [1]. Именно по этой причине правильно - субинтерфейс. Иностранному слову - ностранную приставку.