Рейтинг@Mail.ru

NetCloud

Простыми словами о сетевых технологиях

Настройка VLAN на оборудовании Cisco

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

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

Ниже представлена простая схема, где применяется VLAN. Видно, что сервера находятся в VLAN 10, а компьютеры в VLAN 20. Порты в сторону оборудования — это порты доступа (Access port). Порт между коммутаторами является транковым (Trunk port). Транковый порт пропускает оба VLAN. Таким образом, можно выделить отдельные группы устройств в подсеть и назначить ей собственный номер VLAN’a. Допустим, сервера будут находится в разных странах, но при этом все-равно работать в одной подсети, что очень удобно. cisco-2960-kommutator-kommutator1-min

Преимущества применения сетей VLAN:

  1. Оптимальное использование ресурсов процессора каждого хоста в сети, за счет сокращения количества ненужных широковещательных сообщений
  2. Защита хостов, пересылающих важные данные, за счет помещения их в отдельную сеть VLAN
  3. Гибкое разделение пользователей в группы (например, по отделам) вместо физического разделения по местоположению
  4. Упрощение диагностики сети, так как большинство проблем локализуются в области набора устройств, формирующих широковещательный домен

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

Будем настраивать такую схему.

cisco_vlan_1

Небольшие пояснения к схеме. У нас имеется два физически разделенных офиса EKT1 и EKT2. EKT1 — это название и номер площадки (г. Екатеринбург). Хосты подключаются к acess-switch’ам (коммутаторам доступа). Трафик с обеих площадок агрегируется в одной точке EKT10. На данной площадке находится distribution-switch (коммутатор распределения) и маршрутизатор. Всего будет четыре категории:

  1. Администратор
  2. Сервера
  3. Офисные сотрудники
  4. Беспроводные устройства

Соответственно задача стоит разделить данные устройства каждые в свою подсеть и присвоить им соответствующие VLAN. Первым делом составим план IP-адресации в сети, номера портов, план VLAN. Будем использовать Ip-адреса из диапазона «серых» Ip-адресов 172.16.0.0/16.

Категория хоста Ip-подсеть Номер VLAN
Администратор 172.16.0.0/24 2
Сервера 172.16.1.0/24 3
Офисные сотрудники 172.16.2.0/24 10
Беспроводные устройства 172.16.3.0/24 11

Тут же небольшое пояснение. В каждой подсети должен обязательно присутствовать шлюз по-умолчанию, для того, чтобы компьютер понимал куда слать пакеты в случае если подсеть не его. Ip-адрес шлюза по-умолчанию выбирается по следующему шаблону 172.16.x.1, где x — номер подсети.





Номера портов на свичах будут выбираться по следующему порядку. Порты fastEthernet с 1 по 10 заняты под ПК сотрудников, с 11 по 15 заняты под беспроводные точки, с 16 по 20 заняты под сервера. 21 порт используется для подключения ноутбука админа. 22 — 24 подключение к другим сетевым устройствам (коммутаторам, шлюзам). Все вроде с планом разобрались, перейдем теперь к самому главному 🙂

Каждому хосту присвоим Ip-адрес, маску, шлюз по-умолчанию согласно плану. Ниже пример для ноутбука администратора.

cisco-vlan-2

Перейдем к настройке первого access-switch’a   —  sw1.ekt1. Ниже будет приведена конфигурация с пояснениями.

sw1.ekt1>enable - переходим в расширенный режим
sw1.ekt1#configure terminal - переходим в режим конфигурации
sw1.ekt1(config)#vlan 2 - создаем vlan 2
sw1.ekt1(config-vlan)#name Admin - название для vlan 2
sw1.ekt1(config)#vlan 3 - создаем vlan 3
sw1.ekt1(config-vlan)#name Server - название для vlan 3
sw1.ekt1(config)#vlan 10 - создаем vlan 10
sw1.ekt1(config-vlan)#name Office-PC - название для vlan 10
sw1.ekt1(config)#vlan 11 - создаем vlan 11
sw1.ekt1(config-vlan)#name Wireless-DEV - название для vlan 11
sw1.ekt1(config-vlan)#exit
sw1.ekt1(config)#interface range fa0/1 - fa0/10 - настраиваем интерфейсы для ПК
sw1.ekt1(config-if-range)#description Office-PC - описание интерфейсов
sw1.ekt1(config-if-range)#switchport mode access - переключаем порты в режим доступа (тегированный)
sw1.ekt1(config-if-range)#switchport access vlan 10 - маркируем порты с 1 по 10 vlan 10
sw1.ekt1(config-if-range)#exit
sw1.ekt1(config)#interface range fa0/11 - fa0/15 - настраиваем интерфейсы для Точек доступа
sw1.ekt1(config-if-range)#description Wireless-DEV - описание интерфейсов
sw1.ekt1(config-if-range)#switchport mode access - переключаем порты в режим доступа (тегированный)
sw1.ekt1(config-if-range)#switchport access vlan 11 - маркируем порты с 11 по 15 vlan 11
sw1.ekt1(config-if-range)#exit
sw1.ekt1(config)#interface range fa0/16 - fa0/20 - настраиваем интерфейсы для Серверов
sw1.ekt1(config-if-range)#description Server - описание интерфейсов
sw1.ekt1(config-if-range)#switchport mode access - переключаем порты в режим доступа
sw1.ekt1(config-if-range)#switchport access vlan 3 - маркируем порты с 16 по 20 vlan 3
sw1.ekt1(config-if-range)#exit
sw1.ekt1(config)#interface fa0/21 - настраиваем интерфейс для Администратора
sw1.ekt1(config-if-range)#description Admin - описание интерфейсов
sw1.ekt1(config-if-range)#switchport mode access - переключаем порты в режим доступа (тегированный)
sw1.ekt1(config-if-range)#switchport access vlan 2 - маркируем порты с 16 по 20 vlan 3
sw1.ekt1(config-if-range)#exit
sw1.ekt1(config)#interface fa0/24 - настраиваем интерфейс в сторону Свича sw1.ekt10
sw1.ekt1(config-if-range)#description sw1.ekt10 - описание интерфейсов
sw1.ekt1(config-if-range)#switchport mode trunk - переключаем порты в транковый режим (нетегированный)
sw1.ekt1(config-if-range)#switchport trunk allowed vlan 2-3,10-11 - передаем через порт 24 все VLAN'ы
w1.ekt1(config-if-range)#exit

Теперь коммутатор sw1.ekt1 будет маркировать кадры соответствующим номером VLAN. При передаче на центральный свич sw1.ekt10 будут пропускаться все VLAN — 2,3,10,11.

Перейдем теперь к настройке второго аксес свчиа sw1.ekt2. Его настройка будут полностью совпадать с настройками sw1.ekt1, за исключением того, что к sw1.ekt2 не подключен ноутбук админа.

sw1.ekt2>enable - переходим в расширенный режим
sw1.ekt2#configure terminal - переходим в режим конфигурации
sw1.ekt2(config)#vlan 3 - создаем vlan 3
sw1.ekt2(config-vlan)#name Server - название для vlan 3
sw1.ekt2(config)#vlan 10 - создаем vlan 10
sw1.ekt2(config-vlan)#name Office-PC - название для vlan 10
sw1.ekt2(config)#vlan 11 - создаем vlan 11
sw1.ekt2(config-vlan)#name Wireless-DEV - название для vlan 11
sw1.ekt2(config-vlan)#exit
sw1.ekt2(config)#interface range fa0/1 - fa0/10 - настраиваем интерфейсы для ПК
sw1.ekt2(config-if-range)#description Office-PC - описание интерфейсов
sw1.ekt2(config-if-range)#switchport mode access - переключаем порты в режим доступа (тегированный)
sw1.ekt2(config-if-range)#switchport access vlan 10 - маркируем порты с 1 по 10 vlan 10
sw1.ekt2(config-if-range)#exit
sw1.ekt2(config)#interface range fa0/11 - fa0/15 - настраиваем интерфейсы для Точек доступа
sw1.ekt2(config-if-range)#description Wireless-DEV - описание интерфейсов
sw1.ekt2(config-if-range)#switchport mode access - переключаем порты в режим доступа (тегированный)
sw1.ekt2(config-if-range)#switchport access vlan 11 - маркируем порты с 11 по 15 vlan 11
sw1.ekt2(config-if-range)#exit
sw1.ekt2(config)#interface range fa0/16 - fa0/20 - настраиваем интерфейсы для Серверов
sw1.ekt2(config-if-range)#description Server - описание интерфейсов
sw1.ekt2(config-if-range)#switchport mode access - переключаем порты в режим доступа
sw1.ekt2(config-if-range)#switchport access vlan 3 - маркируем порты с 16 по 20 vlan 3
sw1.ekt2(config-if-range)#exit
sw1.ekt2(config)#interface fa0/24 - настраиваем интерфейс в сторону Свича sw1.ekt10
sw1.ekt2(config-if-range)#description sw1.ekt10 - описание интерфейсов
sw1.ekt2(config-if-range)#switchport mode trunk - переключаем порты в транковый режим (нетегированный)
sw1.ekt2(config-if-range)#switchport trunk allowed vlan 3,10-11 - передаем через порт 24 все VLAN'ы
sw1.ekt2(config-if-range)#exit
sw1.ekt2(config)do write - сохраняем конфигурацию к энергонезависимой памяти

Access-switch’и настроены, теперь необходимо настроить центральный свич sw1.ekt10.

sw1.ekt10>enable - переходим в расширенный режим
sw1.ekt10#configure terminal - переходим в режим конфигурации
sw1.ekt10(config)#vlan 2 - создаем vlan 2
sw1.ekt10(config-vlan)#name Admin - название для vlan 2
sw1.ekt10(config)#vlan 3 - создаем vlan 3
sw1.ekt10(config-vlan)#name Server - название для vlan 3
sw1.ekt10(config)#vlan 10 - создаем vlan 10
sw1.ekt10(config-vlan)#name Office-PC - название для vlan 10
sw1.ekt10(config)#vlan 11 - создаем vlan 11
sw1.ekt10(config-vlan)#name Wireless-DEV - название для vlan 11
sw1.ekt10(config-vlan)#exit
sw1.ekt10(config)#interface fa 0/1 - настраиваем интерфейс в сторону sw1.ekt1
sw1.ekt10(config-if-range)#description sw1.ekt1 - описание интерфейсов
sw1.ekt10(config-if-range)#switchport mode trunk - переключаем порты в режим транка (нетегированный)
sw1.ekt10(config-if-range)#switchport trunk allowed vlan 2-3,10-11 - пропускаем через порт все VLAN
sw1.ekt10(config-if-range)#exit
sw1.ekt10(config)#interface fa 0/2 - настраиваем интерфейс в сторону sw1.ekt2
sw1.ekt10(config-if-range)#description sw1.ekt2 - описание интерфейсов
sw1.ekt10(config-if-range)#switchport mode trunk - переключаем порты в режим транка (нетегированный)
sw1.ekt10(config-if-range)#switchport trunk allowed vlan 3,10-11 - пропускаем через порт все VLAN
sw1.ekt10(config-if-range)#exit
sw1.ekt10(config)#interface fa 0/24 - настраиваем интерфейс в сторону рутера
sw1.ekt10(config-if-range)#description r1.ekt10 - описание интерфейсов
sw1.ekt10(config-if-range)#switchport mode trunk - переключаем порты в режим транка (нетегированный)
sw1.ekt10(config-if-range)#switchport trunk allowed vlan 2-3,10-11 - пропускаем через порт все VLAN
sw1.ekt10(config-if-range)#exit
sw1.ekt10(config)#do write - сохраняем настройки в энергонезависимой памяти

Самая интересная часть статьи — настройка рутера r1.ekt10. Маршрутизатор будет являться шлюзом для всех четырех подсетей. Необходимо будет создать четыре сабинтерфейса — виртуальных интерфейса и присвоить каждому свой Ip-адрес и маску согласно плану. Приступим.

r1.ekt10>enable - переходим в расширенный режим
r1.ekt10#configure terminal - переходим в режим конфигурации
r1.ekt10(config)#interface fa 0/0 - настраиваем интерфейс в сторону sw1.ekt10
r1.ekt10(config-if)#description sw1.ekt10 - описание интерфейсов
r1.ekt10(config-if)#no shutdown - включаем интерфейс физически
r1.ekt10(config-if)#exit 
r1.ekt10(config)#interface fa0/0.2 - настраиваем сабинтерфейс для Админа
r1.ekt10(config-subif)#description Admin - описание сабинтерфейса
r1.ekt10(config-subif)#encapsulation dot1q 2 - тегирование кадров вторым VLAN'ом
r1.ekt10(config-subif)#ip address 172.16.0.1 255.255.255.0 - установка шлюза по-умолчанию 
r1.ekt10(config-subif)#exit
r1.ekt10(config)#interface fa0/0.3 - настраиваем сабинтерфейс для Серверов
r1.ekt10(config-subif)#description Server - описание сабинтерфейса
r1.ekt10(config-subif)#encapsulation dot1q 3 - тегирование кадров третьим VLAN'ом
r1.ekt10(config-subif)#ip address 172.16.1.1 255.255.255.0 - установка шлюза по-умолчанию 
r1.ekt10(config-subif)#exit
r1.ekt10(config)#interface fa0/0.10 - настраиваем сабинтерфейс для Офисных ПК
r1.ekt10(config-subif)#description Office-PC - описание сабинтерфейса
r1.ekt10(config-subif)#encapsulation dot1q 10 - тегирование кадров десятым VLAN'ом
r1.ekt10(config-subif)#ip address 172.16.2.1 255.255.255.0 - установка шлюза по-умолчанию 
r1.ekt10(config-subif)#exit
r1.ekt10(config)#interface fa0/0.11 - настраиваем сабинтерфейс для Беспроводных устройств
r1.ekt10(config-subif)#description Wireless-DEV - описание сабинтерфейса
r1.ekt10(config-subif)#encapsulation dot1q 11 - тегирование кадров одиннадцатым VLAN'ом
r1.ekt10(config-subif)#ip address 172.16.3.1 255.255.255.0 - установка шлюза по-умолчанию 
r1.ekt10(config-subif)#exit
r1.ekt10(config)#do write - сохраняем настройки в энергонезависимой памяти

Я предполагаю, что у вас возникли вопросы на счет команды encapsulation dot1q 2. Я смутно написал в комментариях, что это означает «тегирование вторым VLAN’ом». Иными словами, все кадры, исходящие из виртуального интерфейса fastEthernet 0/0.2 будут помечены тегом 2-го VLAN’a. А кадры, попадающие на физический интерфейс fastEthernet 0/0 с тегом VLAN = 2 будут попадать на виртуальный интерфейс fastEthernet 0/0.2. Таким образом, кадры помеченные тегом VLAN = 2 попадут на «родной» шлюз 172.16.0.1 и маршрутизатор сможет в случае чего сможет послать пакет  в другую подсеть.

Например, что будет, если админ хочет пингануть подсеть серверов? Маршрутизатор приняв пакет от него, посмотрит в свою таблицу маршрутизации и поймет, что сервера находятся на сабинтерфейсе fastEthernet 0/0.3. Он пошлет пакет в этот виртуальный интерфейс попутно присвоив пакету VLAN = 3. Таким образом, пакет без проблем дойдет до нужного сервера, и, админ сможет получить ICMP-ответ от него.

Возможно, у некоторых из вас возник вопрос: Вот мы разделили всю сеть на VLAN’ы, а почему же тогда можно без проблем пинговать из одной подсети в другую (получается подсети доступы друг другу)? Ответ на этот вопрос: Во-первых, не всегда требуется жестко отделять одну подсеть от другой. Во-вторых, если уж потребуется отделить подсети друг от друга можно без проблем настроить списки доступа ACL, но это уже совсем другая история (обязательно расскажу о ней в следующих статьях). В-третьих, по факту сети и так отделены друг от друга. Если б не маршрутизатор, главное назначение которого пересылать пакеты из одной подсети в другую.