Пример настройки программного VLAN на RouterOS. Будет показано четыре варианта настройки.
- - Когда VLAN'ы создаются на физических интерфейсах.
- - На Bridge интерфейсе с включенной на нем опцией VLAN Filtering. Этот вариант будет более гибким, т.к. порт добавленный в Bridge, будет работать на всех VLAN'ах, назначенных на Bridge интерфейс.
- - С использованием аппаратной поддержки VLAN на Switch-Chip;
- - На Bridge интерфейсе, без включенной опции VLAN Filtering. Является самым неудобным в настройке и уже устаревшим.
Будет полезно:
- Manual:Switch Chip Features [link]
- Manual:Interface/VLAN [link]
- Manual:Basic VLAN switching [link]
GNS3 CHR:
Показать схему:
Interface VLAN:
# CHR-1:
/system identity set name=CHR-1
/ip address add interface=ether1 address=10.0.0.2/24
/tool romon set enabled=yes
Создаем VLAN's на интерфейсе ether2: он будет транковым для SW.
На ether2 не должно быть IP-адреса.
/interface vlan add name=ether2.5 vlan-id=5 interface=ether2
/interface vlan add name=ether2.6 vlan-id=6 interface=ether2
/interface vlan add name=ether2.7 vlan-id=7 interface=ether2
Adresses:
Назначаем адреса на VLAN интерфейсы.
/ip address add interface=ether2.5 address=192.168.5.1/24
/ip address add interface=ether2.6 address=192.168.6.1/24
/ip address add interface=ether2.7 address=192.168.7.1/24
Pool:
Задаем пул адресов доступных для выдачи DHCP-сервером.
/ip pool add name=ether2.5 ranges=192.168.5.10-192.168.5.254
/ip pool add name=ether2.6 ranges=192.168.6.10-192.168.6.254
/ip pool add name=ether2.7 ranges=192.168.7.10-192.168.7.254
DHCP Server:
Включаем DHCP-сервер на VLAN интерфейсах и задаем настройки сети.
/ip dhcp-server add name=V5_INT interface=ether2.5 lease-time=1d address-pool=ether2.5 disabled=no
/ip dhcp-server add name=V6_DMZ1 interface=ether2.6 lease-time=1d address-pool=ether2.6 disabled=no
/ip dhcp-server add name=V7_DMZ2 interface=ether2.7 lease-time=1d address-pool=ether2.7 disabled=no
Networks.
/ip dhcp-server network add address=192.168.5.0/24 gateway=192.168.5.1 netmask=24 dns-server=192.168.5.1
/ip dhcp-server network add address=192.168.6.0/24 gateway=192.168.6.1 netmask=24 dns-server=192.168.6.1
/ip dhcp-server network add address=192.168.7.0/24 gateway=192.168.7.1 netmask=24 dns-server=192.168.7.1
Bridge VLAN: vlan filtering
C включенной опцией VLAN Filtering.
# CHR-1:
/system identity set name=CHR-1
/ip address add interface=ether1 address=10.0.0.2/24
/tool romon set enabled=yes
Bridge:
Создаем bridge интерфейс:
И включаем на нем VLAN Filtering.
/interface bridge add name=bridge1 vlan-filtering=yes ether-type=0x8100
Добавляем необходимые порты в bridge:
Интерфейсы - ether2,3,5 будут транковыми для SW. Порт - ether4 access интерфейс c 7 vlan'ом.
/interface bridge port add interface=ether2 bridge=bridge1
/interface bridge port add interface=ether3 bridge=bridge1
/interface bridge port add interface=ether4 bridge=bridge1 pvid=7
/interface bridge port add interface=ether5 bridge=bridge1
Создаем VLAN'ы и вешаем их на интерфейс bridge1:
Названия интерфейсов Linux-подобные.
/interface vlan add name=bridge1.5 vlan-id=5 interface=bridge1
/interface vlan add name=bridge1.6 vlan-id=6 interface=bridge1
/interface vlan add name=bridge1.7 vlan-id=7 interface=bridge1
На интефейсе bridge1 создаем VLAN's:
Указав VLAN IDs и Tagged порты.
/interface bridge vlan add bridge=bridge1 vlan-ids=5 tagged=bridge1,ether2,ether3,ether5
/interface bridge vlan add bridge=bridge1 vlan-ids=6 tagged=bridge1,ether2,ether3,ether5
/interface bridge vlan add bridge=bridge1 vlan-ids=7 tagged=bridge1,ether2,ether3,ether5 untagged=ether4
# CHR-2,3:
ether2 - Trunk'овый интерфейс (Tagged), через него будут передаваться все VLAN's;
ether3-5 - Access интерфейсы (Untagged), к ним подключаются клиеты;
Создаем bridge интерфейс:
И включаем на нем VLAN Filtering.
/interface bridge add name=bridge1 vlan-filtering=yes ether-type=0x8100
Добавляем необходимые порты в bridge и устанавливаем Port VLAN ID:
PVID нужен для того, чтобы на входе в интерфейс добавлялись метки VLAN.
/interface bridge port add interface=ether2 bridge=bridge1
/interface bridge port add interface=ether3 bridge=bridge1 pvid=5
/interface bridge port add interface=ether4 bridge=bridge1 pvid=6
/interface bridge port add interface=ether5 bridge=bridge1 pvid=7
На интефейсе bridge1 создаем VLANs, указав VLAN IDs, а затем Tagged и Untagged порты:
Tagged - это порт, через который передаются на входе и выходе метки VLAN. Untagged - на выходе метки снимаются, на входе добавляются.
/interface bridge vlan add bridge=bridge1 vlan-ids=5 tagged=ether2 untagged=ether3
/interface bridge vlan add bridge=bridge1 vlan-ids=6 tagged=ether2 untagged=ether4
/interface bridge vlan add bridge=bridge1 vlan-ids=7 tagged=ether2 untagged=ether5
Switch-Chip:
С использованием аппаратного чипа коммутации с поддержкой VLAN. На примере MikroTik hAP lite.
Создаем bridge интерфейс:
/interface bridge add name=bridge1
Добавляем необходимые порты в bridge:
Интерфейсы - ether2,3,4 будут access портами. Проверяем, чтобы на портах был включен hardware Offload.
/interface bridge port add interface=ether2 bridge=bridge1 hw=yes
/interface bridge port add interface=ether3 bridge=bridge1 hw=yes
/interface bridge port add interface=ether4 bridge=bridge1 hw=yes
Создаем VLAN-интерфейсы:
И назначаем их на bridge1. VLAN30 и VLAN40.
/interface vlan add name=bridge1.30 vlan-id=30 interface=bridge1
/interface vlan add name=bridge1.40 vlan-id=40 interface=bridge1
Switch-Chip:
Настройка VLAN: Т.к. вланы будут создаваться и приходить на одно и то же устройство, то к vlan'ам в разделе "ports" необходимо добавить "switch1-cpu".
/interface ethernet switch vlan add switch=switch1 vlan-id=30 ports=switch1-cpu,ether2,ether3
/interface ethernet switch vlan add switch=switch1 vlan-id=40 ports=switch1-cpu,ether4
Настройка Ports:
Настраиваем как switch-chip будет обрабатывать vlan's.
- leave-as-is - packet remains unchanged on egress port;
- always-strip - if VLAN header is present it is removed from the packet;
- add-if-missing - if VLAN header is not present it is added to the packet.
/interface ethernet switch port set ether2 vlan-mode=secure vlan-header=always-strip default-vlan-id=30
/interface ethernet switch port set ether3 vlan-mode=secure vlan-header=always-strip default-vlan-id=30
/interface ethernet switch port set ether4 vlan-mode=secure vlan-header=always-strip default-vlan-id=40
/interface ethernet switch port set switch1-cpu vlan-mode=secure vlan-header=leave-as-is
Bridge VLAN: no vlan filtering
Без включенной опции VLAN Filtering.
# CHR-1:
/system identity set name=CHR-1
/ip address add interface=ether1 address=10.0.0.2/24
/tool romon set enabled=yes
Создаем VLAN на необходимых интерфейсах:
+ interface = ether2;
/interface vlan add interface=ether2 vlan-id=5 name=ether2.5
/interface vlan add interface=ether2 vlan-id=6 name=ether2.6
/interface vlan add interface=ether2 vlan-id=7 name=ether2.7
+ interface = ether3;
/interface vlan add interface=ether3 vlan-id=5 name=ether3.5
/interface vlan add interface=ether3 vlan-id=6 name=ether3.6
/interface vlan add interface=ether3 vlan-id=7 name=ether3.7
+ interface = ether4;
/interface vlan add interface=ether4 vlan-id=5 name=ether4.5
/interface vlan add interface=ether4 vlan-id=6 name=ether4.6
/interface vlan add interface=ether4 vlan-id=7 name=ether4.7
Создаем bridge интерфейсы:
В них будут добавляться VLAN интерфейсы.
/interface bridge add name=bridge1.5
/interface bridge add name=bridge1.6
/interface bridge add name=bridge1.7
И добавляем в них наши VLAN:
+ VLAN5;
/interface bridge port add bridge=bridge1.5 interface=ether2.5
/interface bridge port add bridge=bridge1.6 interface=ether3.5
/interface bridge port add bridge=bridge1.7 interface=ether4.5
+ VLAN6;
/interface bridge port add bridge=bridge1.5 interface=ether2.6
/interface bridge port add bridge=bridge1.6 interface=ether3.6
/interface bridge port add bridge=bridge1.7 interface=ether4.6
+ VLAN7;
/interface bridge port add bridge=bridge1.5 interface=ether2.7
/interface bridge port add bridge=bridge1.6 interface=ether3.7
/interface bridge port add bridge=bridge1.7 interface=ether4.7
- К этому порту напрямую будет подключен компьютер;
/interface bridge port add bridge=bridge1.7 interface=ether4
Задаем адресацию:
/ip address add interface=bridge1.5 address=192.168.5.1/24
/ip address add interface=bridge1.6 address=192.168.6.1/24
/ip address add interface=bridge1.7 address=192.168.7.1/24
Настраиваем dhcp-сервер в ручном режиме:
Для интерфейсов bridge1.5, bridge1.6, bridge1.7.
/ip dhcp-server setup
# CHR-2,3:
/system identity set name=CHR-2
/tool romon set enabled=yes
Создаем VLAN на необходимых интерфейсах:
+ interface = ether1;
/interface vlan add interface=ether1 vlan-id=5 name=ether1.5
/interface vlan add interface=ether1 vlan-id=6 name=ether1.6
/interface vlan add interface=ether1 vlan-id=7 name=ether1.7
Создаем bridge интерфейсы:
В них будут добавляться VLAN интерфейсы.
/interface bridge add name=bridge1.5
/interface bridge add name=bridge1.6
/interface bridge add name=bridge1.7
И добавляем в них наши VLAN:
+ VLAN5, VLAN6, VLAN7;
/interface bridge port add bridge=bridge1.5 interface=ether1.5
/interface bridge port add bridge=bridge1.6 interface=ether1.6
/interface bridge port add bridge=bridge1.7 interface=ether1.7
+ Далее порты;
/interface bridge port add bridge=bridge1.5 interface=ether2
/interface bridge port add bridge=bridge1.6 interface=ether3
/interface bridge port add bridge=bridge1.7 interface=ether4