Что такое туннели в Amnezia VPN и зачем они нужны
Amnezia VPN — это клиент с открытым исходным кодом, который позволяет подключаться к VPN-серверам через несколько протоколов, включая собственный AmneziaWG. Туннель — это зашифрованный канал между вашим устройством и сервером, через который проходит трафик. В отличие от обычного VPN, Amnezia предлагает гибкую настройку: вы можете направлять через туннель весь трафик или только его часть, а также разворачивать собственный сервер на VPS.
Основная особенность Amnezia — использование протокола AmneziaWG, который является форком WireGuard с дополнительными механизмами обфускации. Это делает его более устойчивым к блокировкам по DPI, что особенно актуально в странах с жёсткой интернет-цензурой. Кроме того, Amnezia поддерживает и другие протоколы, такие как OpenVPN, WireGuard, IPSec, а также Shadowsocks и XRay, что позволяет подобрать оптимальный вариант для конкретных условий.
Туннели в Amnezia могут быть организованы двумя способами: через готовые серверы Amnezia Free/Premium или через собственный self-hosted сервер. В первом случае вы получаете быстрое подключение без настройки, но с ограничениями (например, недоступно раздельное туннелирование по IP в Free). Во втором — полный контроль над конфигурацией, но требуется аренда VPS и базовая работа с Linux.
Понимание того, как работают туннели, помогает правильно выбирать режимы маршрутизации и избегать типичных ошибок, таких как утечка трафика или неработающие исключения.
Протокол AmneziaWG: версии и совместимость
AmneziaWG — это модифицированная версия WireGuard, которая добавляет обфускацию к пакетам, делая их неотличимыми от случайного трафика. Это позволяет обходить блокировки, которые используют анализ сигнатур протоколов. На данный момент существуют три версии: v1.0 (Legacy), v1.5 и v2.0. Каждая следующая версия улучшает обфускацию и производительность.
Важно понимать совместимость: например, роутеры Keenetic поддерживают только AmneziaWG v1.0 (начиная с прошивки 4.2, полная поддержка — с 4.3.4). Поэтому при настройке self-hosted сервера для использования с Keenetic необходимо разворачивать контейнер именно с v1.0. В клиенте Amnezia VPN версии 4.8.10.0 это ещё возможно, но в более новых версиях разработчики перешли на v1.5/v2.0, что создаёт ограничения.
Для обычного использования на компьютерах и смартфонах рекомендуется использовать последнюю версию AmneziaWG, так как она обеспечивает лучшую защиту от блокировок. Однако если вы планируете подключать роутер Keenetic, придётся либо использовать старую версию клиента для развёртывания сервера, либо искать альтернативные способы настройки.
При выборе протокола также учитывайте, что AmneziaWG работает только через IPv4, поддержка IPv6 отсутствует. Это важно для раздельного туннелирования, так как списки IP-адресов должны быть в формате IPv4.
Раздельное туннелирование: что это и зачем нужно
Раздельное туннелирование (split tunneling) — это функция, которая позволяет разделять трафик: часть приложений или IP-адресов работает через VPN, а остальная часть — напрямую. Это полезно в нескольких сценариях:
- Локальные сервисы: банк-клиент, госуслуги, локальная сеть — они могут требовать реальный IP и работать некорректно через VPN.
- Скорость: тяжёлый трафик (загрузки, торренты) можно пустить напрямую, чтобы не перегружать VPN-сервер.
- Приватность: через VPN можно направить только чувствительные приложения (браузер, мессенджер), оставив остальной трафик как есть.
- Публичный Wi-Fi: шифруете только те приложения, где важна безопасность.
В Amnezia раздельное туннелирование реализовано по двум осям: по приложениям и по IP-адресам/подсетям. Каждая ось может работать в двух режимах: «только выбранные» (include) или «все, кроме выбранных» (exclude). Это даёт гибкость, но требует внимательности: легко перепутать режимы и получить неожиданный результат.
Важно понимать, что раздельное туннелирование настраивается только на клиенте. Сервер не знает, какой трафик идёт в обход туннеля, — решение принимает таблица маршрутов на устройстве. Поэтому одна и та же конфигурация на разных устройствах может вести себя по-разному.
Раздельное туннелирование по IP-адресам: как настроить
Раздельное туннелирование по IP-адресам работает на уровне маршрутизации: вы указываете конкретные IP-адреса или подсети (в формате CIDR), которые должны идти через VPN или в обход него. Это универсальный метод, который работает для любых приложений, так как все они обращаются к IP-адресам.
Режим «Только адреса из списка должны открываться через VPN» — рекомендуемый способ для большинства случаев. Чтобы настроить его, нужно:
- Перейти на сайт iplist.opencck.org, выбрать формат Amnezia и тип данных IPv4 (CIDR).
- Отметить нужные сайты или разделы (например, Discord, YouTube).
- Сохранить файл ip-list.json.
- В приложении AmneziaVPN открыть настройки раздельного туннелирования сайтов, выбрать режим «Только адреса из списка должны открываться через VPN».
- Импортировать файл через меню ⋮ (три точки), выбрав «Заменить список» или «Добавить к существующим».
- Включить раздельное туннелирование и подключиться к VPN.
Режим «Адреса из списка не должны открываться через VPN» — используется, когда нужно исключить из VPN локальные сети или отдельные сайты. Для исключения локальных сетей добавьте стандартные подсети: 192.168.0.0/16, 172.16.0.0/12, 10.0.0.0/8, 169.254.0.0/16, 100.64.0.0/10, 224.0.0.0/4.
Важно: если вы добавляете домен (например, youtube.com), Amnezia резолвит его в один IP-адрес, который не обновляется автоматически. Для крупных сервисов с тысячами IP-адресов это недостаточно — нужно использовать списки подсетей с iplist.opencck.org. Также учтите, что широкие подсети могут захватывать IP-адреса несвязанных сервисов, что приведёт к нежелательному трафику через VPN.
Раздельное туннелирование по приложениям: особенности платформ
Раздельное туннелирование по приложениям фильтрует трафик по программе-источнику. Это удобно, так как не нужно разбираться с IP-адресами. Однако доступность этой функции зависит от платформы:
- Android: доступны оба режима — «только выбранные приложения через VPN» и «все, кроме выбранных». Можно одновременно использовать и разделение по приложениям, и по IP.
- Windows: доступен только режим исключений — выбранные приложения работают без VPN. Режим «только выбранные через VPN» недоступен.
- iOS / macOS / Linux: разделение по приложениям вообще недоступно, только по IP-адресам.
На Windows для добавления приложения нужно указать исполняемый файл (.exe). Чтобы найти нужный файл, используйте программу AppNetworkCounter от NirSoft — она показывает все процессы, выходящие в интернет, и путь к файлу. Если после добавления приложение всё равно работает через VPN, возможно, оно использует дополнительные файлы — поищите информацию в интернете по запросу «split tunneling название_приложения».
Часто в раздельное туннелирование добавляют торрент-клиенты (так как торрент-трафик ограничен на всех локациях Amnezia, кроме Швейцарии), дополнительные браузеры для прямого выхода в интернет, игровые сервисы (Steam, Epic Games) для максимальной скорости загрузки, а также альтернативные VPN-клиенты для корпоративных сетей.
Обратите внимание: приложения из Microsoft Store и некоторые игры с античитом (например, Valorant, League of Legends) не поддерживают обход VPN через раздельное туннелирование по приложениям. В таких случаях используйте разделение по IP-адресам.
Настройка собственного VPN-сервера на VPS
Self-hosted сервер даёт полный контроль над VPN и позволяет подключать неограниченное количество устройств. Для развёртывания потребуется VPS с Linux (например, Ubuntu 22.04) и клиент Amnezia VPN версии 4.8.10.0 (для поддержки AmneziaWG v1.0, если нужен Keenetic).
Шаги по развёртыванию:
- Подключитесь к серверу по SSH:
ssh root@11.22.33.44. - Обновите систему:
sudo apt update && sudo apt upgrade -y. - Убедитесь, что ваш пользователь состоит в группе sudo (проверьте /etc/group).
- Запустите Amnezia VPN, нажмите «+» и выберите «Self-hosted VPN».
- Введите реквизиты сервера, выберите «Ручная» настройку и протокол AmneziaWG.
- Нажмите «Установить» и дождитесь завершения. Если возникнет ошибка, установите Docker вручную:
sudo apt install docker -yиdocker pull amneziavpn/amnezia-wg. - После установки проверьте контейнер:
docker ps. - В клиенте переименуйте сервер, создайте учётные записи для устройств (например, KN-ROUTER для роутера).
Важно: если у вас уже есть другие VPN-подключения, убедитесь, что подсеть VPN-адресов не пересекается с существующими. Изменить подсеть можно в настройках сервера: «AmneziaWG» → «AmneziaWG настройки сервера» → «Подсеть VPN-адресов».
После развёртывания вы можете подключаться к серверу с любого устройства, используя конфигурационный файл, QR-код или ключ в виде текста.
Подключение роутера Keenetic к AmneziaVPN
Роутеры Keenetic поддерживают AmneziaWG v1.0 начиная с прошивки 4.3.4. Это позволяет организовать доступ к домашней сети через VPN-сервер, что полезно для удалённой работы или доступа к устройствам внутри локальной сети.
Схема подключения: все устройства (включая роутер) подключаются к VPN-серверу в режиме клиента. Внешние клиенты, подключившись к VPN-серверу, получают доступ к устройствам в домашней сети через роутер.
Настройка роутера:
- Убедитесь, что прошивка Keenetic обновлена до версии 4.3.4 или выше.
- В веб-интерфейсе роутера перейдите в раздел «Интернет» → «Другие подключения» → «WireGuard».
- Добавьте новое подключение, используя конфигурацию, созданную в AmneziaVPN для роутера (учётная запись KN-ROUTER).
- Укажите параметры AmneziaWG (ключи, endpoint, подсеть).
- Настройте маршрутизацию: добавьте правило, чтобы трафик к VPN-подсети шёл через туннель.
- Разрешите доступ к устройствам внутренней сети через VPN (например, через файрвол).
Важно: диапазон IP-адресов, выдаваемых VPN-сервером, не должен пересекаться с диапазоном локальной сети роутера. Если пересечение есть, измените подсеть на сервере.
После настройки вы сможете подключаться к домашним устройствам (например, к экспериментальному стенду) из любой точки мира через VPN-сервер.
Проверка и устранение неполадок
Если раздельное туннелирование не работает, чаще всего причина в перепутанной логике списка (include/exclude) или в том, что VPN не переподключили после изменений. Проверьте:
- Внешний IP: в приложении, которое должно идти через VPN, откройте сайт проверки IP — адрес должен принадлежать вашему серверу. В приложении, оставленном напрямую, IP должен быть вашим реальным.
- Домены/адреса: в режиме по адресам проверьте, что запрос к адресу из списка идёт через VPN, а к прочим — напрямую.
- Переподключение: после правки списка обязательно отключите и снова включите VPN.
Типичные проблемы:
| Симптом | Причина | Решение | |---------|---------|---------| | Через VPN идёт не то приложение | Перепутана логика списка | Переключите режим на противоположный | | Изменения не применились | VPN не переподключён | Переподключите VPN | | Нужного приложения нет в списке | Приложение не установлено/не распознано | Обновите список; на десктопе добавьте по .exe | | Раздела split tunneling нет в меню | Устаревший клиент или iOS | Обновите клиент с amnezia.org | | Канал не поднимается | Проблема с подключением/сервером | Проверьте коды ошибок (1100, 1108, 300/305) |
Если проблема не в разделении, а в самом подключении, обратитесь к документации по кодам ошибок Amnezia.
Ограничения и важные замечания
При использовании Amnezia VPN и раздельного туннелирования учитывайте следующие ограничения:
- IPv6 не поддерживается: все настройки раздельного туннелирования работают только с IPv4.
- Amnezia Free: в бесплатной версии раздельное туннелирование по IP-адресам недоступно.
- iOS: разделение по приложениям невозможно из-за ограничений системы; доступно только по IP.
- Windows: режим «только выбранные приложения через VPN» недоступен, только исключения.
- Совместимость с другими VPN: при использовании AmneziaVPN с AnyConnect или OpenConnect корректная работа не гарантируется.
- Торренты: на всех локациях Amnezia, кроме Швейцарии, торрент-трафик ограничен. Для обхода используйте раздельное туннелирование.
- Широкие подсети: при использовании списков IP-подсетей для крупных сервисов (YouTube, Discord) могут захватываться IP-адреса несвязанных сайтов. Это может привести к нежелательному трафику через VPN.
Также помните, что раздельное туннелирование настраивается только на клиенте, и сервер не знает о существовании исключений. Поэтому при использовании одного и того же конфигурационного файла на разных устройствах поведение может отличаться.
Скачивайте клиент Amnezia только с официального сайта amnezia.org или из официального репозитория GitHub, чтобы избежать подделок с вредоносным кодом.
Вопросы и ответы
Что такое AmneziaWG и чем он отличается от WireGuard?
AmneziaWG — это форк WireGuard с добавленной обфускацией трафика. Он делает пакеты неотличимыми от случайных данных, что помогает обходить блокировки по DPI. В отличие от стандартного WireGuard, AmneziaWG имеет несколько версий (v1.0, v1.5, v2.0), каждая из которых улучшает защиту. Однако не все устройства поддерживают все версии: например, роутеры Keenetic работают только с v1.0.
Как включить раздельное туннелирование в Amnezia VPN?
Откройте настройки Amnezia, найдите раздел «Раздельное туннелирование» (Split tunneling). Выберите режим: по приложениям или по IP-адресам. Затем задайте логику списка: «только выбранные» (include) или «все, кроме выбранных» (exclude). Добавьте нужные приложения или адреса, сохраните изменения и переподключите VPN. Точные названия пунктов могут отличаться в зависимости от версии клиента.
Почему раздельное туннелирование не работает и трафик идёт не туда?
Чаще всего причина в перепутанной логике списка: вы включили «только выбранные», ожидая «все, кроме выбранных», или наоборот. Также проверьте, что VPN переподключён после изменений — без этого старые правила остаются в силе. Убедитесь, что нужное приложение действительно добавлено в список, и что у вас актуальная версия клиента с amnezia.org.
Можно ли использовать Amnezia VPN на роутере Keenetic?
Да, роутеры Keenetic поддерживают AmneziaWG v1.0 начиная с прошивки 4.3.4. Для этого нужно развернуть self-hosted сервер с AmneziaWG v1.0 (например, с помощью Amnezia VPN 4.8.10.0) и настроить подключение в веб-интерфейсе роутера. Это позволяет организовать доступ к домашней сети через VPN-сервер.
Какие платформы поддерживают раздельное туннелирование по приложениям?
Разделение по приложениям доступно на Android (оба режима) и Windows (только режим исключений). На iOS, macOS и Linux эта функция недоступна — там можно использовать только разделение по IP-адресам. На Android и Windows можно одновременно использовать оба типа разделения.
Как исключить локальные сети из VPN в Amnezia?
В режиме «Адреса из списка не должны открываться через VPN» добавьте стандартные подсети локальных сетей: 192.168.0.0/16, 172.16.0.0/12, 10.0.0.0/8, 169.254.0.0/16, 100.64.0.0/10, 224.0.0.0/4. Это позволит обращаться к локальным устройствам напрямую, минуя VPN.
Что делать, если нужного приложения нет в списке для раздельного туннелирования?
На Windows вы можете добавить приложение вручную, указав путь к исполняемому файлу (.exe). Используйте программу AppNetworkCounter, чтобы найти путь. Если приложение не отображается, возможно, оно использует дополнительные файлы — поищите информацию в интернете по запросу «split tunneling название_приложения». На Android список приложений обычно обновляется автоматически.