Микротики должны быть обновлены до 7 версии. Интерфейсы WireGuard должны быть доступны и настроены на обоих роутерах, чтобы разрешить автоматическую генерацию ключей.
-Команда для выполнения на обоих роутерах:
Код: Выделить всё
/interface wireguard
add listen-port=13232 name=WireGuard1
/interface list member
add interface=WireGuard1 list=LAN
# Или просто добавьте интерфейс WireGuard в список интерфейсов "LAN".
#
/ip firewall filter
add action=accept chain=input comment="allow WireGuard" dst-port=13232 protocol=udp place-before=1
# Чтобы разрешить удаленным устройствам подключаться к службам RouterOS (например, запрашивать DNS),
# разрешить подсеть WireGuard во входной цепочке.
OFFICE-1 (Lan=192.168.0.0\24 Wan = <inet_ip_OFFICE-1>)
проверяем
Код: Выделить всё
/interface/wireguard print
public-key="<public-key_OFFICE-1>"
OFFICE-2 (Lan=192.168.2.0\24 Wan = <inet_ip_OFFICE-2>)
проверяем
Код: Выделить всё
/interface/wireguard print
public-key="<public-key_OFFICE-2>"
# Конфигурация одноранговых узлов определяет, кто может использовать интерфейс WireGuard и какой трафик можно через него отправлять.
# Чтобы идентифицировать удаленный хост, необходимо указать его открытый ключ вместе со сгенерированным интерфейсом WireGuard.
-Настройка каждого маршрутизатора MikroTik:
ОФИС-1
Код: Выделить всё
/interface/wireguard/peers
add allowed-address=192.168.0.0/24 endpoint-address=<inet_ip_OFFICE-1> endpoint-port=13232 interface=WireGuard1 \
public-key="< public-key _OFFICE-2>"
# Настройте IP-адрес, маршрутизацию и брандмауэр, чтобы разрешить прохождение трафика через туннель.
/ip/address
add address=10.255.255.2/24 interface=WireGuard1
/ip/pool
add address=10.255.255.1-10.255.255.250 name=WireGuard1
/ip/route
add dst-address=192.168.0.0/16 gateway=WireGuard1
/ip/route
add dst-address=10.255.255.0/30 gateway=WireGuard1
/ip/firewall/filter
add action=accept chain=input comment="allow WireGuard" dst-port=13232 protocol=udp
/ip/firewall/filter
add action=accept chain=forward comment="allow WireGuard1" dst-address=192.168.2.0/24 src-address=192.168.0.0/16
add action=accept chain=forward comment="allow WireGuard1" dst-address=192.168.0.0/16 src-address=192.168.2.0/24
Код: Выделить всё
/interface/wireguard/peers
add allowed-address=192.168.2.0/24 endpoint-address=<inet_ip_OFFICE-2> endpoint-port=13232 interface=WireGuard1 \
public-key="<public-key_OFFICE-1>"
# Настройте IP, маршрутизацию и брандмауэр, чтобы разрешить прохождение трафика через туннель.
/ip/address
add address=10.255.255.2/24 interface=WireGuard1
/ip/route
add dst-address=192.168.2.0/24 gateway=WireGuard1
/ip/route
add dst-address=10.255.255.0/30 gateway=WireGuard1
/ip/firewall/filter
add action=accept chain=input comment="allow WireGuard" dst-port=13232 protocol=udp
/ip/firewall/filter
add action=accept chain=forward comment="allow WireGuard1" dst-address=192.168.0.0/24 src-address=192.168.2.0/24
add action=accept chain=forward comment="allow WireGuard1" dst-address=192.168.2.0/24 src-address=192.168.0.0/24
Рекомендации по брандмауэру
Брандмауэр RouterOS по умолчанию блокирует правильное создание туннеля.
Трафик должен быть принят в цепочке "input", прежде чем будут применяться какие-либо правила отбрасывания на обоих микротиках.
Также возможно, что "прямая" цепочка также ограничивает связь между подсетями,
так что такой трафик также должен приниматься перед любыми правилами отбрасывания.
Проверить командой
/interface wireguard print
на каждом маршрутизаторе, чтобы убедиться, что интерфейс WireGuard запущен и работает.
Пользуйтесь на здоровье!