Оглавление |
---|
Информация | ||
---|---|---|
| ||
|
Введение
В статье рассматриваются приемы включения и настройки сетевых служб VLAN и VXLAN.
- VLAN (Virtual Local Area Network) — виртуальная локальная компьютерная сеть (виртуальный изолированный широковещательный домен). Позволяет группе сетевых устройств взаимодействовать так, как если бы они были подключены к единой изолированной от других устройств локальной сети независимо от их физического местонахождения. VLAN представляется участникам группы как отдельная физическая локальная сеть, обеспечивает передачу данных между участниками группы и изолирует их от устройств, не входящих в группу. Для идентификации принадлежности сетевых пакетов VLAN-у используется двенадцатибитный идентификатор (VLAN ID), т.е. максимальное количество VLAN-ов в одной сети - 4096. Подробнее см. RFC-3069 VLAN Aggregation for Efficient IP Address Allocation и документацию по стандартам IEEE 802.1q;
VXLAN (Virtual Extensible LAN) - технология сетевой виртуализации, предназначенная для обеспечения масштабируемости больших система облачных вычислений. VXLAN использует схожую с VLAN технику для MAC инкапсуляции кадров Ethernet второго уровня в в пакеты UDP.
VXLAN обеспечивает функционирование до 16 миллионов изолированных логических сетей второго уровня, позволяя им одновременно сосуществовать в одной IP-сети. Представляет собой протокол туннелирования, разработанный для преодоления ограничения в 4096 идентификаторов в стандарте IEEE 802.1q (VLAN). Размер идентификатора VXLAN увеличен до 24 бит (16 777 216 идентификаторов). Подробнее см. RFC 7348 и стандарт IEEE 802.1ad. В Astra Linux реализован как модуль ядра.
Включение и настройка VLAN
Настойка Настройка сетевых интерфейсов VLAN подобна настройке обычных сетевых интерфейсов. Важным отличием является то, что интерфейс VLAN привязывается к существующему "родительскому" интерфейсу. Далее в примерах будет выполняться настройка с использованием в качестве родительского простого сетевого интерфейса простого интерфейса eth0, однако VLAN может быть настроен с использованием в качестве родительских таких интерфейсов, как объединение (bond или team) или мост (bridge).
Загрузка модуля ядра
Для использования VLAN:
Загрузить модуль ядра 8021q:
Command sudo modprobe 8021q Убедиться, что модуль загружен:
Command lsmod | grep 8021q Добавить в сетевые настройки (iptables) разрешения на создание таблиц маршрутизации:
Блок кода echo "500 firsttable" | sudo tee -a /etc/iproute2/rt_tables echo "501 firsttable" | sudo tee -a /etc/iproute2/rt_tables"
Здесь и далее используются VLAN ID 500 и 501;
Для того, чтобы модуль загружался автоматически при загрузке ОС, можно создать в каталоге /etc/modules-load.d/ файл с именем, например, /etc/modules-load.d/vlan.conf, и перечислить в нём названия загружаемых модулей:
Блок кода |
---|
8021q |
Настройка VLAN
Создание и настройка VLAN с помощью NetworkManager
- Войти в сессию администратора (для Astra Linux Special Edition с включенным МКЦ — администратора с высоким уровнем целостности);
- Правой кнопкой мыши нажать на апплет NetworkManager;:
- В появившемся списке выбрать пункт "Изменить соединения";:
- Для создания нового соединения нажать кнопку с символом "+";
- Выбрать тип соединения VLAN и нажать кнопку "Создать";:
- В открывшейся форме:
- В закладке VLAN задать параметры, относящиеся к VLAN:
- Указать имя соединения;
- Выбрать родительский интерфейс;
- Указать идентификатор VLAN;
- По необходимости заполнить остальные параметры;:
- В остальных закладках указать параметры, как для обычных сетевых соединений.
- Нажать кнопку "Сохранить";
- В закладке VLAN задать параметры, относящиеся к VLAN:
Создание и настройка VLAN с помощью службы networking
Для настройки интерфейса VLAN с помощью службы networking
Войти в сессию администратора (для Astra Linux Special Edition с включенным МКЦ — администратора с высоким уровнем целостности);
Проверить список имеющихся сетевых интерфейсов:
Command Title ip link show 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:002: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
link/ether 52:54:00:64:d9:e8 brd ff:ff:ff:ff:ff:ffДалее для настройки будет использоваться интерфейс eth0;
В файл конфигурации сетевого интерфейса добавить строки:
Блок кода # The first VLAN interface auto eth0.500 iface eth0.500 inet static address 172.20.20.10 netmask 255.255.255.240 gateway 172.20.20.1 dns-nameservers 8.8.8.8 8.8.4.4
Название сетевого интерфейса VLAN должно иметь форму <имя_интерфейса>.<VLAN_ID>;
Включить сетевые интерфейсы:
Command sudo ifup eth0.500 Проверить состояние интерфейса:
Command sudo ifconfig eth0.500
При необходимости можно добавить несколько интерфейсов VLAN
Блок кода |
---|
# The second VLAN interface auto eth0.501 iface eth0.501 inet static address 172.21.10.0 netmask 255.255.255.0 |
Если хост используется в качестве гипервизора, то выполнить настройку сети:
Разрешить в конфигурации сети пересылку пакетов:
Блок кода echo "net.ipv4.ip_forward=1" | sudo tee -a /etc/sysctl.conf echo "net.ipv4.conf.all.arp_filter=0" | sudo tee -a /etc/sysctl.conf echo "net.ipv4.conf.all.rp_filter=2" | sudo tee -a /etc/sysctl.conf
Загрузить конфигурацию:
Command sudo sysctl -p
Включение и настройка VXLAN
Создание устройства VXLAN:
Command sudo ip link add vxlan0 type vxlan id 42 group 239.1.1.1 dev eth0 dstport 4789 Указанная команда создает новое устройство с именем vxlan0. Это устройство использует широковещательную группу 239.1.1.1 и родительское устройство eth0 для обработки трафика, не имеющего правил обработки в таблице пересылки (форвардинга) пакетов. Целевой порт 4789 выбран в соответствии со стандартом IANA;
Удаление устройства VXLAN:
Command sudo ip link delete vxlan0 Получение информации об устройстве VXLAN:
Command sudo ip -d link show vxlan0
Управление таблицами пересылки VXLAN выполняется с помощью команды bridge:
Создать правило в таблице пересылки:
Command sudo bridge fdb add to 00:17:42:8a:b4:05 dst 192.19.0.2 dev vxlan0 Удалить правило пересылки:
Command sudo bridge fdb delete 00:17:42:8a:b4:05 dev vxlan0 Получение информации о правилах пересылки:
Command sudo bridge fdb show dev vxlan0