Содержание
- 1 1. Настройка MikroTik VLAN
- 2 1.1 Сброс настроек роутера
- 3 1.2 Настройка WAN порта
- 4 1.3 Объединение LAN портов в Bridge
- 5 1.4 Добавление VLAN интерфейса
- 6 Назначение IP адресов локальным сетям
- 7 1.5 Настройка пула адресов
- 8 1.6 Настройка DHCP серверов
- 9 1.7 Настройка DNS сервера
- 10 1.8 Включение NAT
- 11 1.9 Изоляция подсетей
- 12 2 Настройка EnGenius VLAN
- 13 2.1 Создание двух виртуальных Wi-Fi точек
- 14 2.2 Настройка безопасности
- 15 2.3 Настройка VLAN виртуальной точки HotSpot
- 16 2.4 Настройка LAN
- 17 Требования к сетевому оборудованию
- 18 Возможные проблемы
- 19 Настройка VLAN в CentOS/RHEL/Fedora Linux
- 20 Конфигурация VLAN в Debian и Ubuntu
- 21 Использование команды vconfig
- 22 Создание устройства VLAN командой ip
- 23 Заключение
- 24 Что нужно знать о VLAN
- 25 Приступаем к настройке
- 26 Open vSwitch
- 1 Настройка MikroTik VLAN
- 1.1 Сброс настроек роутера
- 1.2 Настройка WAN порта
- 1.3 Объединение LAN портов в Bridge
- 1.4 Добавление VLAN интерфейса
- 1.5 Настройка пула адресов
- 1.6 Настройка DHCP серверов
- 1.7 Настройка DNS сервера
- 1.8 Включение NAT
- 1.9 Изоляция подсетей
- 2 Настройка EnGenius VLAN
- 2.1 Создание двух виртуальных Wi-Fi точек
- 2.2 Настройка безопасности
- 2.3 Настройка VLAN виртуальной точки HotSpot
- 2.4 Настройка LAN
Функция VLAN (Virtual Local Area Network) позволяет создать несколько виртуальных интерфейсов на одном физическом сетевом интерфейсе. С помощью VLAN можно разделять или объединять сегменты локальной сети, независимо от ее физической топологии. О том, что такое виртуальная локальная сеть, доступно написано в статье что такое VLAN.
В этой статье мы рассмотрим пример разделения гостевой Wi-Fi сети и Wi-Fi сети предприятия с помощью VLAN. Будет подробно описана настройка VLAN в роутере MikroTik и Wi-Fi точке доступа EnGenius.
Описание задачи: Есть локальная сеть предприятия, к которой подключены компьютеры по кабелю и ноутбуки по Wi-Fi. В комнате для совещаний нужно предоставить свободный доступ (HotSpot) к интернету по Wi-Fi, но в целях безопасности требуется изолировать гостей от сети предприятия.
Для решения задачи понадобится оборудование с поддержкой функции VLAN. В примере будет использоваться следующее оборудование:
- роутер MikroTik RB750;
- Wi-Fi точка доступа EnGenius EAP150.
Рассмотрим упрощенную схему локальной сети предприятия.Кабель провайдера с интернетом подключается к роутеру. К роутеру по сетевому кабелю подключены компьютеры предприятия . Также к маршрутизатору подключена физически одна Wi-Fi точка доступа. На ней созданы две виртуальные Wi-Fi точки с названиями Office и HotSpot. К Office будут подключаться по Wi-Fi ноутбуки предприятия, а к HotSpot — гостевые ноутбуки для выхода в интернет.
Wi-Fi точка HotSpot изолирована в отдельную виртуальную сеть с названием VLAN2. Сеть предприятия не будем выносить в отдельный VLAN, чтобы не усложнять схему и настройку.
1. Настройка MikroTik VLAN
Приступим к настройке оборудования. В первую очередь настроим роутер MikroTik RB750.
1.1 Сброс настроек роутера
Настройку роутера MikroTik будем выполнять с чистой конфигурации. Поэтому полностью сбросим конфигурацию роутера через программу Winbox:
- Откройте в меню New Terminal;
- Введите команду systemreset;
- Нажмите кнопку y на клавиатуре, чтобы подтвердить сброс настроек.
После перезагрузки роутера откройте Winbox, и в появившемся окне нажмите кнопку Remove Configuration для очистки конфигурации.
1.2 Настройка WAN порта
Настроим WAN порт роутера, к которому подключен кабель провайдера. Как выполнить статические настройки или PPPoE можете посмотреть в статье настройка роутера MikroTik. В нашем случае маршрутизатор получает настройки от провайдера автоматически по DHCP, поэтому делаем динамическую настройку:
- Откройте меню IP — DHCP Client;
- В появившемся окне нажмите красный плюсик;
- В новом окне в списке Interface: выбираем WAN интерфейс ether1;
- Нажимаем кнопку OK для сохранения настроек.
После этого в столбце IP Adress появится IP адрес WAN порта, полученный от провайдера.
Проверяем наличие соединения с интернетом:
- Откройте New Terminal;
- Введите команду ping ya.ru, чтобы пропинговать сайт ya.ru.
Пошли пинги по 20ms, значит есть соединение с интернетом. Завершаем выполнение ping нажатием клавиш Ctrl+C.
Внимание! На компьютерах, подключенных к роутеру MikroTik, интернет не будет работать, пока не будет выполнена настройка NAT.
1.3 Объединение LAN портов в Bridge
Чтобы компьютеры офисной сети, подключенные по кабелю к разным LAN портам роутера, могли связываться друг с другом, объединим порты роутера в мост Bridge.
Добавляем интерфейс Bridge:
- Откройте меню Bridge;
- Нажмите «красный плюсик»;
- В поле Name укажите название интерфейса bridge_main;
- Нажмите кнопку ОК.
Добавляем LAN порты в Bridge:
- Перейдите на вкладку Ports;
- Нажмите «красный плюсик»;
- В списке Interface выберите второй порт роутера ether2;
- В списке Bridge выберите интерфейс bridge_main;
- Нажмите кнопку ОК.
Добавьте аналогичным образом в bridge_main порты ether3, ether4 и ether5. В итоге у вас должен появиться список портов, как на рисунке ниже.
1.4 Добавление VLAN интерфейса
Создадим на интерфейсе bridge_main виртуальный интерфейс с названием vlan2, который позволит изолировать Wi-Fi точку HotSpot от сети предприятия.
- Откройте меню Interfaces;
- Перейдите на вкладку VLAN;
- Нажмите «красный плюсик»;
- В появившемся окне в поле Name указываем название интерфейса vlan2;
- В поле VLAN ID указываем идентификатор виртуальной сети, равный 2. Сетевое оборудование с поддержкой VLAN не оперирует именами виртуальных сетей, а использует цифры от 1 до 4094. VLAN ID — это, по сути, имя виртуального интерфейса, которое будет использоваться оборудованием между собой. Единицу в качестве идентификатор использовать не рекомендуется, поскольку некоторые производители используют VLAN ID 1 в качестве значения по умолчанию;
- В списке Interface выбираем интерфейс bridge_main;
- Нажимаем кнопку OK для создания VLAN интерфейса.
Назначение IP адресов локальным сетям
Компьютеры сети предприятия и гостевой будут находиться в разных подсетях. Сеть предприятия будет использовать подсеть 192.168.88.1/24, а гостевая сеть 192.168.10.1/24. Настроим IP адреса локальных сетей.
Настройка IP адреса сети предприятия:
- Откройте меню IP — Addresses;
- Нажмите «красный плюсик»;
- В поле Address введите 192.168.88.1/24;
- В списке Interface выберите интерфейс bridge_main;
- Нажимаем кнопку OK.
Настройка IP адреса гостевой сети:
- Откройте меню IP — Addresses;
- Нажмите «красный плюсик»;
- В поле Address введите 192.168.10.1/24;
- В списке Interface выберите виртуальный интерфейс vlan2;
- Нажимаем кнопку OK.
1.5 Настройка пула адресов
Компьютерам сети предприятия и гостевой сети будем по DHCP присваивать IP адреса из разных подсетей. Сеть предприятия будет использовать диапазон 192.168.88.2–192.168.88.254, а гостевая сеть 192.168.10.2–192.168.10.254. Зададим с помощью пула диапазоны IP адресов.
Добавляем диапазон IP адресов предприятия:
- Откройте меню IP — Pool;
- Нажмите «красный плюсик»;
- В появившемся окне в поле Name укажите название dhcp_pool_main;
- В поле Addresses пропишите диапазон 192.168.88.2–192.168.88.254 ;
- Нажмите кнопку OK для сохранения пула адресов.
Добавляем диапазон IP адресов гостевой сети аналогичным образом:
- Нажмите «красный плюсик»;
- В появившемся окне в поле Name указываем название dhcp_pool_vlan2;
- В поле Addresses прописываем диапазон 192.168.10.2–192.168.10.254 ;
- Нажимаем кнопку OK для сохранения пула адресов.
1.6 Настройка DHCP серверов
Чтобы компьютеры получали сетевые настройки автоматически, необходимо настроить DHCP сервера. Поскольку у нас будут две сети, то нужно настроить два DHCP сервера.
Настраиваем DHCP сервер внутренней сети предприятия:
- Откройте меню IP — DHCP server;
- Нажмите «красный плюсик»;
- В появившемся окне в поле Name укажите название dhcp_server_main;
- В списке Interface выберите интерфейс офисной сети bridge_main;
- В списке Address Pool выберите пул IP адресов dhcp_pool_main, которые будут присваиваться компьютерам предприятия;
- Нажмите кнопку OK.
Настраиваем DHCP сервер гостевой сети аналогичным образом:
- Нажмите «красный плюсик»;
- В появившемся окне в поле Name укажите название dhcp_server_vlan2;
- В списке Interface выберите виртуальный интерфейс гостевой сети vlan2;
- В списке Address Pool выберите пул IP адресов dhcp_pool_vlan2, которые будут присваиваться гостевым ноутбукам;
- Нажмите кнопку OK.
Теперь переходим на вкладку Networks и добавляем наши сети:
Добавляем сеть предприятия:
- Нажмите «красный плюсик»;
- В поле Address укажите сеть предприятия 192.168.88.0/24;
- В поле Gateway укажите адрес шлюза 192.168.88.1;
- В поле Netmask укажите маску 24;
- В поле DNS Servers укажите адрес DNS сервера 192.168.88.1;
- Нажмите кнопку OK.
Добавляем гостевую сеть:
- Нажмите «красный плюсик»;
- В поле Address укажите сеть предприятия 192.168.10.0/24;
- В поле Gateway укажите адрес шлюза 192.168.10.1;
- В поле Netmask укажите маску 24;
- В поле DNS Servers укажите адрес DNS сервера 192.168.10.1;
- Нажмите кнопку OK.
1.7 Настройка DNS сервера
- Откройте меню IP — DNS и нажмите кнопку Settings;
- Поставьте галочку Allow Remote Request;
- Нажмите кнопку OK.
1.8 Включение NAT
Чтобы компьютеры имели выход в интернет, нужно настроить NAT для двух сетей.
Настройка NAT для внутренней сети предприятия:
-
- Откройте меню IP — Firewall;
- Перейдите на вкладку NAT;
- Нажмите «красный плюсик»;
-
- В списке Chain выберите srcnat;
- В поле Src. Address укажите диапазон IP адресов сети предприятия 192.168.88.0/24;
- В списке Out Interface выберите WAN порт ether1, на который приходит интернет от провайдера;
- Перейдите на вкладку Action;
- В списке Action выберите masquerade;
- Нажмите кнопку OK.
Настройка NAT для гостевой сети выполняется аналогичным образом, только используется другой диапазон IP адресов и порт vlan2:
- Нажмите «красный плюсик»;
- В списке Chain выберите srcnat;
- В поле Src. Address укажите диапазон IP адресов гостевой сети 192.168.10.0/24;
- В списке Out Interface выберите WAN порт vlan2, на который приходит интернет от провайдера;
- Перейдите на вкладку Action;
- В списке Action выберите masquerade;
- Нажмите кнопку OK.
1.9 Изоляция подсетей
Чтобы компьютеры из офисной сети и сети хотспота не видели друг друга, нужно изолировать подсети. Это можно сделать двумя способами: через Firewall или правила маршрутизации Route Rules. Мы опишем, как изолировать подсети в MikroTik с помощью Route Rules.
- Откройте меню IP — Routes;
- Перейдите на вкладку Rules;
- Нажмите «красный плюсик»;
- В поле Src. Address укажите офисную подсеть 192.168.88.0/24;
- В поле Dst. Address укажите гостевую подсеть 192.168.10.0/24;
- В списке Action выберите unreachable;
- Нажмите кнопку OK.
Добавляем второе правило аналогичным образом, только меняем местами подсети.
- Нажмите «красный плюсик»;
- В поле Src. Address укажите офисную подсеть 192.168.10.0/24;
- В поле Dst. Address укажите гостевую подсеть 192.168.88.0/24;
- В списке Action выберите unreachable;
- Нажмите кнопку OK.
Настройка роутера MikroTik для использования VLAN выполнена. Теперь приступим к настройке точки доступа EnGenius EAP150 с поддержкой VLAN.
2 Настройка EnGenius VLAN
Подробная инструкция по настройке точки доступа EnGenius EAP150 описана в статье настройка точки доступа EnGenius EAP150. Мы остановимся на основных моментах настройки устройства.
Подключаем точку доступа к компьютеру, заходим в ее Web-интерфейс по IP адресу 192.168.1.1. Вводим Username: admin, Password: admin и приступаем к настройке.
2.1 Создание двух виртуальных Wi-Fi точек
Чтобы устройство работало беспроводной точкой доступа, перейдите в меню System — Operation Mode и выберите режим Access Point. Нажмите кнопку Apply для применения настроек.
Переходим в меню Wireless — Basic и настраиваем две Wi-Fi точки Office и HotSpot.
- В списке Enabled SSID выберите цифру 2, чтобы можно было ввести два названия точки доступа;
- В поле ESSID1 вводим название Wi-Fi точки Office — это будет беспроводная сеть предприятия;
- В поле ESSID2 вводим название Wi-Fi точки HotSpot — это беспроводная сеть для подключения гостей;
- AutoChannel оставьте Enable, если хотите чтобы точка сама выбирала Wi-Fi канал, на котором будет работать. У нас на других каналах есть много других Wi-Fi точек, создающих помехи. Поэтому мы выбрали AutoChannel: Disable и в списке Channel вручную указали более свободный канал 11;
- Нажмите кнопку Apply для применения настроек.
2.2 Настройка безопасности
На Wi-Fi точку Office нужно установить пароль для подключения к внутренней сети предприятия.
- Откройте меню Wireless — Security;
- В списке ESSID Selection выберите название точки Office;
- В списке Encryption выберите шифрование WPA pre-shared key;
- В WPA Type выберите тип шифрования WPA2 Mixed;
- В списке Pre-shared Key Type выберите тип ключа Passphrase;
- В поле Pre-shared Key введите пароль для подключения к Wi-Fi точке Office;
- Нажмите кнопку Apply для применения настроек.
Ко второй Wi-Fi точке HotSpot будем предоставлять доступ без пароля.
Также не забудьте в меню Management — Admin изменить пароль для входа в настройки точки доступа EnGenius.
2.3 Настройка VLAN виртуальной точки HotSpot
Как вы помните, в роутере MikroTik создан виртуальный интерфейс vlan2 с идентификатором 2. Чтобы связать Wi-Fi точку HotSpot с интерфейсом роутера vlan2 , нужно точке HotSpot также присвоить идентификатор 2.
- Откройте меню Wireless — VLAN;
- Выберите Virtual LAN: Enable;
- Напротив SSID 1 Tag: уберите галочку Tag, поскольку первая точка доступа Office не вынесена в отдельный VLAN;
- Напротив SSID 2 Tag: поставьте галочку Tag и укажите идентификатор 2 — это VLAN идентификатор второй точки доступа HotSpot, вынесенной в отдельный VLAN;
- Нажмите кнопку Apply для применения настроек.
2.4 Настройка LAN
Можно использовать статические или динамические сетевые настройки LAN порта. Мы введем статические настройки сети, чтобы сразу знать, на каком IP адресе будет находиться точка.
- Откройте меню Network — LAN;
- Bridge Type выбираем Static IP — ввод сетевых настроек вручную;
- IP Address вводим 192.168.88.100;
- IP Subnet Mask указываем маску подсети 255.255.255.0;
- Default Gateway — это IP адрес шлюза. Шлюзом выступает роутер 192.168.88.1;
- First DNS Address указываем первичный DNS сервер 192.168.88.1;
- Second DNS Address вводим альтернативный DNS сервер Google 8.8.8.8;
- Применяем настройки кнопкой Apply.
Если вы настроили EnGenius на получение автоматических настроек по DHCP, то после подключения точки доступа к роутеру, нужно посмотреть в роутере, какой IP адрес присвоился точке EnGenius. Это можно сделать в меню IP — DHCP Server на вкладке Leases. Посмотрите по MAC адресу устройства, какой ей присвоен IP адрес.
Теперь можно отключить Wi-Fi точку доступа EnGenius от компьютера и подключить в любой порт роутера MikroTik.
Подключитесь по очереди к Wi-Fi точкам Office и HotSpot, проверьте работу интернета и какие IP адреса присваиваются клиентам.
Описанная задача и процесс настройки разделенной гостевой сети и сети организации часто применяется в кафе, ресторанах, торговых центрах и гостиницах. Надеемся, данная инструкция поможет вам в решении аналогичных задач.
Огромное спасибо: http://www.technotrade.com.ua/Articles/mikrotik_vlan_separation_2013-05-08.php#vlan_setup_hotspot
Смотрите также:
Как установить Mikrotik Cloud Hosted Router на SSD VDSMikrotik User Meeting (MUM) 2016 Russia, Moscow.Бланки доверенностей на получение материальных ценностей (ТМЦ или товара). Формы М-2 и М-2аРазвертывание шаблонов Windows 7/8 и кастомизация
VLAN – это аббревиатура, означающая Virtual Local Area Network (виртаульная локальная сеть). На одном физическом порту может совместно существовать несколько VLAN-сетей, которые настраиваются программными средствами Linux, а не конфигурацией физических интерфейсов (но настройка самих интерфейсов тоже требуется). С помощью VLAN можно разделить сетевые ресурсы для использования различных сервисов.
Преимущества VLAN следующие:
- Производительность
- Простота управления
- Безопасность
- Магистральные cоединения (trunk)
- Возможность разделения внутри локальной сети из соображений безопасности
- Отсутствие необходимости настройки аппаратных средств при физическом переносе сервера в другое место.
Содержание
Требования к сетевому оборудованию
Чтобы использовать VLAN, вам потребуется:
- Коммутатор с поддержкой стандарта IEEE 802.1q в сети Ethernet.
- Сетевая карта, которая работает с Linux и поддерживает стандарт 802.1q .
Возможные проблемы
Наиболее распространенные при настройке VLAN в Linux проблемы следующие:
- Не все сетевые драйверы поддерживают VLAN. Может потребоваться обновление драйвера.
- Возможны проблемы с MTU. Работа VLAN основана на присвоении каждому кадру тега длиной 4 байта, то есть заголовок фактически расширяется с 14 до 18 байт. Тег VLAN содержит идентификатор (VLAN ID) и приоритет.
- Лучше не использовать VLAN ID, равный 1, так как он может быть зарезервирован для административных целей.
Сначала убедитесь, что драйвер (модуль) ядра Linux под названием 8021 загружен:
# lsmod | grep 8021q
Если он не загружен, загрузите его командой modprobe:
# modprobe 8021q
Настройка VLAN в CentOS/RHEL/Fedora Linux
Допустим, нам нужно создать VLAN интерфейс с тегом 100 который будет работать на физическом интерфейсе eth0. Для этого создадим файл /etc/sysconfig/network-scripts/ifcfg-eth0.100
. Узнать название сетевых интерфейсов в системе можно с помощью команды ifconfig.
# ifconfig
Создаем новый файл например с помощью редактора vim
# vim /etc/sysconfig/network-scripts/ifcfg-eth0.100
Добавьте в него следующий код
# Конфигурация VLAN с ID – 100 для интерфейса eth0 #DEVICE=eth0.100 BOOTPROTO=none ONBOOT=yes IPADDR=192.168.1.5 NETMASK=255.255.255.0 USERCTL=no NETWORK=192.168.1.0 VLAN=yes
Жирным шрифтом выделены строки которые относятся к настройкам VLAN. Остальные настройки аналогичны настройкам на физическом интерфейсе.
Если вам нужна еще одна виртуальная сеть, то создайте новый файл сетевых настроек с нужным тегом VLAN. Что бы изменения вступили в силу, перезапустите сетевую службу
# systemctl restart network
Теперь можно проверить созданные интерфейсы командой ifconfig. Мы должны увидеть наш VLAN интерфейс
Конфигурация VLAN в Debian и Ubuntu
Откройте файл /etc/network/interfaces
любым текстовым редактором, например nano
$ sudo nano /etc/network/interfaces
Добавьте в файл следующие строки:
##vlan с ID-100 для интерфейса eth0 with ID - 100 в Debian/Ubuntu Linux## auto eth0.100 iface eth0.100 inet static address 192.168.1.200 netmask 255.255.255.0 vlan-raw-device eth0
auto eth0.100 — «поднимать» интерфейс при запуске сетевой службыiface eth0.100 — название интерфейсаvlan-raw-device— указывает на каком физическом интерфейсе создавать VLAN.
Сохраните и закройте файл. После чего перезапустите сеть.
systemctl restart network
Важно! Если у вас используется Ubuntu версии 17.10 и выше, то необходимо установить пакет ifupdown или настраивать VLAN интерфейсы через netplan
Использование команды vconfig
Также существует команда vconfig. Она позволяет вам создавать и удалять устройства VLAN в ядре с поддержкой VLAN. Устройства VLAN – это виртуальные Ethernet-устройства, которые представляют виртуальные локальные сети в физической. Это еще один метод настройки VLAN. Чтобы добавить VLAN с ID 5 для интерфейса eth0 выполните следующую команду:
# vconfig add eth0 5
Команда vconfig add создает на интерфейсе eth0 VLAN-устройство, в результате чего появляется интерфейс eth0.5. Теперь с помощью ifconfig настроим ip адрес
# ifconfig eth0.5 192.168.1.100 netmask 255.255.255.0 broadcast 192.168.1.255 up
Для получения подробной информации об интерфейсе выполните:
# cat /proc/net/vlan/eth0.5
Учтите, что после перезагрузки системы этот интерфейс будет удален.
Для удаления интерфейса вручную выполните следующие действия:
# ifconfig eth0.5 down # vconfig rem eth0.5
Создание устройства VLAN командой ip
Для интерфейса eth0 и VLAN ID 10 выполните следующие команды:
# ip link add link eth0 name eth0.10 type vlan id 10 # ip -d link show eth0.10
Устройство нужно активировать и присвоить ему IP-адрес:
# ip addr add 192.168.1.200/24 brd 192.168.1.255 dev eth0.10 # ip link set dev eth0.10 up
# ip link set dev eth0.10 down # ip link delete eth0.10
Этот интерфейс также будет удален после перезагрузки системы
Заключение
Настроить VLAN относительно несложно, но в конфигурации и используемых командах есть огромное количество различных тонкостей, которые при необходимости можно выяснить, обратившись к man-страницам соответствующих команд.
Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.
Виртуализация уже давно стала частью инфраструктуры практически каждого предприятия. Любой администратор использует или хотя бы пробовал сервер виртуализации. Мы уже рассматривали, как развернуть сервер виртуализации, поэтому в сегодняшней статье речь пойдет о другом: об Open vSwitch для объединения физических и виртуальных сетевых узлов и его преимуществах.
Представь, что у тебя есть готовая инфраструктура с гипервизорами и виртуалками внутри. Задача: предоставить определенной группе виртуальных машин IP-адрес в одном широковещательном домене, другой группе — в другом, а самому гипервизору — в третьем. То есть разместить их в различных сетях.
Такая ситуация может возникнуть по разным причинам. Приведу несколько примеров.
- Обязанности в организации строго разделены. Есть администратор доменной сети (AD), есть администратор других серверов, предоставляющих различные сетевые сервисы организации (DNS-сервер, mail-сервер, веб-сервер, сервер баз данных и другие). Администратор сервера AD хочет, чтобы его виртуальный сервер был в одной сети с клиентами, при этом безопасник настаивает, чтобы сам гипервизор находился в отдельной сети серверов (отдельный широковещательный домен).
- Ты предоставляешь доступ извне к виртуальной машине. Как обеспечить такой доступ и закрыть доступ к любому другому узлу?
Самый простой способ реализовать такую схему — это включить один сетевой интерфейс в одну сеть, другой в другую и настроить мосты соответствующим образом. Нельзя сказать, что такой подход на 100% правильный или неправильный, но он вполне рабочий. И значит, имеет право на жизнь. А как быть тем, у кого всего один сетевой интерфейс? В любом случае наиболее правильный метод, если есть коммутатор второго уровня (L2), — это разделить сеть на логические сегменты. Проще говоря, построить сеть на VLAN’ах.
Что нужно знать о VLAN
VLAN — это виртуальные сети, которые существуют на втором уровне модели OSI и реализуются с помощью коммутаторов второго уровня. Не вдаваясь в подробности, можно сказать, что это группа портов коммутатора, разделенная на логические сегменты сети. Каждый такой сегмент имеет свой маркер (тег PVID). Каждая группа портов VLAN’а знает о своей принадлежности к определенной группе благодаря этим тегам.
Существует два типа портов: access и trunk. В access подключаются конечные сетевые устройства, в trunk подключаются только другие trunk-порты. Если с компьютера пакет попадает на access-порт, то он помечается тегом (PVID), и далее коммутатор отправляет этот пакет только на порты точно с такими же VLAN ID или на trunk-порт. При отправке кадра конечному узлу тег снимается, так что они понятия не имеют о том, что находятся в каком-либо VLAN’е.
Когда пакет попадает на trunk-порт, он передается как есть, тег не снимается. Таким образом, внутри trunk-порта передаются пакеты с несколькими тегами (PVID).
Стоит заметить, что access-порт можно настроить так, чтобы тег на выходе не снимался, тогда для принятия пакета конечный клиент должен знать, в какой VLAN он подключен. Не все сетевые карты и/или ОС поддерживают работу с VLAN по умолчанию. Как правило, это зависит от драйвера сетевой карты.
Приступаем к настройке
Напоминаю, что в одной из предыдущих статей мы рассматривали построение виртуализации на базе Ubuntu/Debian и KVM. Поэтому исходить будем из того, что система установлена и настроена, есть два физических интерфейса, один подключен к виртуальному мосту и есть виртуальные машины, которые им пользуются. Второй интерфейс не сконфигурирован.
Теперь вернемся к нашим VLAN’ам. Чтобы наша идея работала, нам нужно подключить первый физический интерфейс нашей машины к trunk-порту коммутатора, но при этом заблаговременно разделить (а точнее, протегировать) трафик виртуалок по разным VLAN’ам.
Самый простой и примитивный вариант это сделать — создавать виртуальные сетевые карты, каждую настраивать на определенный VLAN и для каждой виртуальной карты поднять отдельный виртуальный сетевой мост, через который и подключать нужную виртуальную машину. Способ рабочий, правда есть несколько недостатков:
- Очень некрасивый вывод ifconfig.
- Нет возможности на лету добавить или удалить VLAN. Иначе говоря, для каждого нового VLAN’а нужно добавлять виртуальный интерфейс. Подключать его в VLAN, включать в мост. Останавливать виртуальную машину и подключать сеть через этот мост.
- Занимает много времени.
Но если у нас виртуальные машины, почему бы не воспользоваться виртуальным коммутатором второго уровня, в который и воткнуть все виртуальные проводки? Это решение гораздо лучше, позволяет более гибко настроить систему. Ну и использовать такой коммутатор, как самый обычный!
Гугление привело к трем наиболее популярным решениям. Одно входит в состав Hyper-V, который платный и не умеет OpenFlow. Второе: MikroTik, с помощью которого можно не только создать виртуальный коммутатор, но и перенести его конфигурацию на железный. Отпугивает только, что он базируется на полноценной операционной системе — RouterOS. А это уже совсем не то. И наконец, встречай — Open vSwitch.
Open vSwitch
Open vSwitch — программный многоуровневый коммутатор с открытым исходным текстом, предназначенный для работы с гипервизорами. Работает в Linux начиная с версии 2.6.15. Основные возможности коммутатора:
- учет трафика, в том числе проходящего между виртуальными машинами с использованием SPAN/RSPAN, sFlow и Netflow;
- поддержка VLAN (IEEE 802.1q);
- привязка к конкретным физическим интерфейсам и балансировка нагрузки по исходящим MAC-адресам;
- работа на уровне ядра, совместимость с программным мостом Linux Bridge;
- поддерживает OpenFlow для управления логикой коммутации;
- с меньшей производительностью, чем в режиме на уровне ядра, Open vSwitch может работать как обычное приложение.
Open vSwitch используется в составе Xen Server, Xen Cloud Platform, KVM, VirtualBox, QEMU, ProxMox (начиная с 2.3).
В качестве наглядного примера будем виртуализировать сервер Kerio 9.1.4. Итак, чтобы понимать, как сейчас все устроено до переделки. Железный сервер Kerio — второй сервер виртуализации, в котором работает несколько сетевых сервисов организации: клиентские сети net1, net2, net3 и net4, серверная сеть net5. Каждый сегмент сети подключен в отдельный сетевой интерфейс «железного» Kerio.
Другие статьи в выпуске:
Xakep #222. Логика подлога
Используемые источники:
- https://adminotes.ru/razdelenie-lokalnoj-seti-s-pomoshhyu-vlan/
- https://itproffi.ru/nastrojka-vlan-interfejsov-v-linux/
- https://xakep.ru/2017/09/04/open-vswitch/