Как известно, компания cloudflare выпустила свой vpn сервис под название warp, работающий на базе wireguard. Есть официальные клиенты для разных ОС, но мы настроим его на маршрутизаторе mikrotik с установленной ROS 7.1
WARP wireguard. Собственно официальный клиент warp нам не понадобится, достаточно скачать стороннюю утилитку для получения регистрационных данных здесь https://github.com/ViRb3/wgcf
Командами wgcf register и wgcf generate получаем нужный файл wgcf-profile.conf, откуда мы возьмем данные для подключения к сервису. Файл примерно такого содержания:
[bash title=»код»][Interface]
PrivateKey = ****
Address = 172.16.0.2/32
Address = ****:::::::****/128
DNS = 1.1.1.1
MTU = 1280
[Peer]
PublicKey = ****
AllowedIPs = 0.0.0.0/0
AllowedIPs = ::/0
Endpoint = engage.cloudflareclient.com:2408[/bash]
адрес endpoint ресолвится на данный момент в 162.159.192.1, порт 2408
Чтобы получить данные, нужно скачать и распаковать утилиту. Выполнять команды нужно из командной строки windows.
[bash title=»код»]Пуск — Выполнить — cmd.exe[/bash]
Дальше меняем каталог или пишем полный путь к программе:
[bash title=»код»]cd C:\Users\user\Downloads[/bash]
wgcf_2.2.12_windows_386 и следуйте подсказкам
[bash title=»код»]C:\Users\user\Downloads\wgcf_2.2.12_windows_386 register[/bash]
[bash title=»код»]C:\Users\user\Downloads\wgcf_2.2.12_windows_386 generate[/bash]
Нам понадобятся приватный и публичный ключ, endpoint адрес и порт, а также диапазон разрешенных адресов.
- Устанавливаем dns 1.1.1.1
- Добавляем новый wireguard интерфейс и пир к нему. Приватный и публичный ключ, endpoint адрес, порт и разрешенный диапазон адресов берем из файла выше. Также присваиваем локальный адрес нашему новому интерфейсу (адрес берем в том же файле):
[bash title=»код»]/interface wireguard add name=wireguard1 mtu=1420 listen-port=13231 private-key="****"
/interface wireguard peers add interface=wireguard1 public-key="****" endpoint-addr=162.159.192.1 endpoint-port=2408 allowed-address=0.0.0.0/0
/ip address add address=172.16.0.2 interface=wireguard1 network=172.16.0.2[/bash]
Если все введено правильно, то поднимается новый интерфейс wireguard1.
- Добавляем еще один src-nat:
[bash title=»код»]/ip firewall nat add chain=srcnat action=masquerade out-interface=wireguard1[/bash]
Протестируйте, что интерфейс и nat работает, установив маршрут по умолчанию на интерфейс wireguard1. Если нужные сайты открываются, то идем дальше, вернув маршруты на свои обычные.
Дальше, маркируете трафик определённых ip локалки и отправляете их через vpn или можете засунуть туда всё.