Передача VLAN внутри OpenVPN

Возможно ли использовать OpenVPN как транспорт для передачи нескольких vlan-ов с последующей передачей их на заданные порты Keenetic в режиме access и объединения с Wi-Fi точками доступа?

Да, такая возможность есть. Рассмотрим на примере двух Keenetic Giga (KN-1010) объединенных туннелями OpenVPN в режиме TAP. Использование режима TAP в данном случае является обязательным, так как позволяет передавать кадры Ethernet на 2-м уровне с тегами. 

Допустим необходимо виртуально через OpenVPN соединить 3-й порт первого Keenetic с 3-м портов второго Keenetic через vlan 30, а 4-й порт первого Keenetic с 4-м портом второго Keenetic через vlan 40. Оба vlan'a будут проходить через одно уже настроенное OpenVPN0 TAP подключение.

Настроим vlan 30 на интерфейсе GigabitEthernet командами:

(config)> interface GigabitEthernet0/Vlan30
Network::Interface::Repository: "GigabitEthernet0/Vlan30" interface created.
(config-if)> up
Network::Interface::Base: "GigabitEthernet0/Vlan30": interface is up.
(config-if)> exit
Core::Configurator: Done.


Затем vlan 30 на интерфейсе OpenVPN0:

(config)> interface OpenVPN0/Vlan30
Network::Interface::Repository: "OpenVPN0/Vlan30" interface created.
(config-if)> up
Network::Interface::Base: "OpenVPN0/Vlan30": interface is up.
(config-if)> exit
Core::Configurator: Done.


Проделаем аналогичные операции для vlan 40:

(config)> interface GigabitEthernet0/Vlan40
Network::Interface::Repository: "GigabitEthernet0/Vlan40" interface created.
(config-if)> up
Network::Interface::Base: "GigabitEthernet0/Vlan40": interface is up.
(config-if)> exit
Core::Configurator: Done.


и

(config)> interface OpenVPN0/Vlan40
Network::Interface::Repository: "OpenVPN0/Vlan40" interface created.
(config-if)> up
Network::Interface::Base: "OpenVPN0/Vlan40": interface is up.
(config-if)> exit
Core::Configurator: Done.


Теперь настроим выход vlan 30 на порт 3 (GigabitEthernet0/2) в режиме access (без тега):

(config)> interface GigabitEthernet0/2
Core::Configurator: Done.
(config-if)> switchport mode access
Network::Interface::Switch: "GigabitEthernet0/2": access mode enabled.
(config-if)> switchport access vlan 30
Network::Interface::Switch: "GigabitEthernet0/2": set access VLAN ID: 30.
(config-if)> exit
Core::Configurator: Done.


И выход vlan 40 на порт 4 (GigabitEthernet0/3) в режиме access (без тега):

(config)> interface GigabitEthernet0/3
Core::Configurator: Done.
(config-if)> switchport mode access
Network::Interface::Switch: "GigabitEthernet0/3": access mode enabled.
(config-if)> switchport access vlan 40
Network::Interface::Switch: "GigabitEthernet0/3": set access VLAN ID: 40.
(config-if)> exit
Core::Configurator: Done.


Осталось создать мосты для объединения созданных интерфейсов. Мост Bridge30 для объединения GigabitEthernet0/Vlan30 и OpenVPN0/Vlan30: 

(config)> interface Bridge30
Network::Interface::Repository: "Bridge30" interface created.
(config-if)> include GigabitEthernet0/Vlan30
Network::Interface::Bridge: "Bridge30": GigabitEthernet0/Vlan30 included.
(config-if)> include OpenVPN0/Vlan30
Network::Interface::Bridge: "Bridge30": OpenVPN0/Vlan30 included.
(config-if)> up
Network::Interface::Base: "Bridge30": interface is up.
(config-if)> exit
Core::Configurator: Done.


И Bridge40 для объединения GigabitEthernet0/Vlan40 и OpenVPN0/Vlan40: 

(config)> interface Bridge40
Network::Interface::Repository: "Bridge40" interface created.
(config-if)> include GigabitEthernet0/Vlan40
Network::Interface::Bridge: "Bridge40": GigabitEthernet0/Vlan40 included.
(config-if)> include OpenVPN0/Vlan40
Network::Interface::Bridge: "Bridge40": OpenVPN0/Vlan40 included.
(config-if)> up
Network::Interface::Base: "Bridge40": interface is up.
(config-if)> exit
Core::Configurator: Done.


Аналогичные настройки делаются на Keenetic, находящимся на другой стороне туннеля.

В созданные нами мосты можно включать также и беспроводные точки доступа. Например, если необходимо передать принятый по vpn vlan 30 на точки доступа 2.4 ГГц (WifiMaster0/AccessPoint2) и 5 ГГц (WifiMaster1/AccessPoint2) достаточно будет включить эти точки в уже созданные мосты командами:

(config)> interface Bridge30
Core::Configurator: Done.
(config-if)> include WifiMaster0/AccessPoint2
Network::Interface::Bridge: "Bridge30": WifiMaster0/AccessPoint2 included.
(config-if)> include WifiMaster1/AccessPoint2
Network::Interface::Bridge: "Bridge30": WifiMaster1/AccessPoint2 included.
(config-if)> exit
Core::Configurator: Done.


vlan 40 будем передавать на точки доступа 2.4 ГГц (WifiMaster0/AccessPoint3) и 5 ГГц (WifiMaster1/AccessPoint3):  

(config)> interface Bridge40
Core::Configurator: Done.
(config-if)> include WifiMaster0/AccessPoint3
Network::Interface::Bridge: "Bridge30": WifiMaster0/AccessPoint3 included.
(config-if)> include WifiMaster1/AccessPoint3
Network::Interface::Bridge: "Bridge30": WifiMaster1/AccessPoint3 included.
(config-if)> exit
Core::Configurator: Done.


На устройствах Keenetic с FastEthernet-портами отличие будет состоять только в названиях Ethernet-интерфейсов - GigabitEthernet заменяется на FastEthernet. 

 

Была ли эта статья полезной?

Пользователи, считающие этот материал полезным: 4 из 4