Split Tunneling в WireGuard через AllowedIPs
В WireGuard параметр AllowedIPs одновременно и ACL-фильтр, и таблица маршрутизации. NetRoute Pro генерирует готовую строку AllowedIPs из доменов любого сайта — дополнительные ip route команды не нужны, просто отредактируйте конфиг пира и перезапустите туннель.
Что понадобится
- Любой клиент WireGuard:
wg-quickна Linux, WireGuard GUI на Windows/macOS, мобильные приложения Android/iOS или роутер с WireGuard - Расширение NetRoute Pro в Chrome
- Доступ к конфигу пира (файл
.confили настройки в GUI)
Шаг 1. Сгенерируйте AllowedIPs в NetRoute Pro
- Откройте нужный сайт в Chrome
- Нажмите на иконку NetRoute Pro в панели расширений
- Выберите платформу WireGuard
- Нажмите Analyze Website
- Скопируйте полученную строку вида:
AllowedIPs = 104.21.32.0/24, 172.67.182.0/24, ...
Шаг 2. Вставьте AllowedIPs в конфиг пира
Linux (wg-quick)
Отредактируйте файл конфига (обычно /etc/wireguard/wg0.conf) и замените строку AllowedIPs в секции [Peer]:
[Interface]
PrivateKey = <ваш приватный ключ>
Address = 10.0.0.2/32
[Peer]
PublicKey = <публичный ключ сервера>
Endpoint = vpn.example.com:51820
AllowedIPs = 104.21.32.0/24, 172.67.182.0/24, ...
PersistentKeepalive = 25
Windows / macOS (GUI)
- Откройте приложение WireGuard
- Выберите ваш туннель и нажмите Edit tunnel
- В секции
[Peer]замените значение поляAllowedIPs - Нажмите Save
Android / iOS
- Откройте приложение WireGuard и выберите ваш туннель
- Нажмите на пира → поле Allowed IPs
- Вставьте новый список подсетей
- Нажмите Save явно — приложение иногда сбрасывает изменения при выходе без сохранения
Шаг 3. Перезапустите туннель
Чтобы новые AllowedIPs применились, переподключите туннель:
- Linux:
sudo wg-quick down wg0 && sudo wg-quick up wg0 - Windows / macOS: в GUI выключите и включите туннель
- Android / iOS: отключите и включите переключатель туннеля
Проверка
Команда sudo wg show отобразит пира с применёнными allowed ips:
sudo wg show
В выводе должны быть все подсети, которые вы указали. На клиенте в LAN можно дополнительно проверить:
tracert example.com # Windows
traceroute example.com # Linux/macOS
Первые хопы должны идти через WireGuard-эндпоинт.
Частые проблемы
Пропал весь интернет
Убрали 0.0.0.0/0, но новый AllowedIPs не покрывает нужные подсети. Добавьте явно все подсети, которые должны идти через VPN, или верните 0.0.0.0/0.
На Android туннель бесконечно "connecting"
Приложение не сохранило изменения. Откройте туннель, ещё раз впишите AllowedIPs, явно нажмите Save и переподключитесь.
Error: AllowedIPs has invalid format
Проверьте запятые и переносы строк в конфиге: подсети в одну строку, разделены запятой с пробелом. Никаких лишних переносов внутри значения.
Официальная документация
- WireGuard Quick Start (en)
- wg-quick(8) man page (en)
- wg(8) — синтаксис конфига (en)
- Pro Custodibus: AllowedIPs Calculator (en)
Готовы попробовать?
NetRoute Pro — бесплатное расширение Chrome для генерации маршрутов из любого сайта.
Установить расширение