Начните бесплатный 3-дневный пробный период
Зарегистрируйтесь и попробуйте все премиум-функции бесплатно.
*Только для новых пользователей. Один пробный период на пользователя.


WireGuard AllowedIPs связывает IP-префиксы с криптографическим пиром. Для исходящего трафика WireGuard выбирает пира по самому конкретному совпадающему префиксу назначения. Для входящего трафика он принимает расшифрованный пакет, только если внутренний адрес источника входит в префикс, разрешённый передавшему пиру.
Это двустороннее значение составляет основу «криптографической маршрутизации» WireGuard. Оно связано с таблицей маршрутов операционной системы, но не совпадает с ней. Полное руководство по VPN показывает весь путь, а здесь мы разделим решения, чтобы вы не принимали маршрут, правило пира и межсетевой экран за один параметр.
Ключевые выводы
- Исходящий
AllowedIPsсопоставляет внутренний префикс назначения с пиром.- Входящий
AllowedIPsразрешает внутренние префиксы источника для пакетов, расшифрованных от этого пира.- Для пересекающихся записей применяется правило самого длинного префикса: более конкретный побеждает.
0.0.0.0/0и::/0охватывают все назначения IPv4 и IPv6 соответственно, но сами не гарантируют системных маршрутов.wg-quickможет вывести маршруты изAllowedIPs; низкоуровневая таблица пиров и маршрутизация системы остаются разными уровнями.
Руководство wg(8) придаёт AllowedIPs две явные роли. При отправке список определяет адреса назначения, направляемые пиру. При получении он определяет адреса источника, разрешённые от пира.[1] Одна таблица префиксов рассматривается с противоположных сторон.
Допустим, у пира A задано AllowedIPs = 10.0.1.0/24. Когда интерфейс WireGuard получает внутренний пакет для 10.0.1.42, этот префикс может выбрать пира A для шифрования. Если аутентифицированный пакет от A расшифровывается с внутренним источником 10.0.1.42, проверка источника проходит. Заявленный источник 10.0.2.42 ей не соответствует.
Открытый ключ служит опорой связи. Техническое описание WireGuard называет сопоставление открытых ключей и туннельных адресов таблицей криптографической маршрутизации.[2] Успешная расшифровка доказывает, какой настроенный ключ передал пакет; AllowedIPs затем ограничивает внутренние адреса, которые этот ключ вправе представлять.
Это не означает, что пир владеет адресами во всей сети. Только данный интерфейс WireGuard связывает префиксы с пиром для двух конкретных решений.
Когда назначению соответствуют несколько префиксов, WireGuard выбирает самый конкретный. Длина отражает конкретность: /24 фиксирует больше начальных битов, чем /16, а /32 обозначает единственный IPv4-адрес. Для IPv6 действует тот же принцип, где /128 обозначает один адрес.
Пусть у пира A записан 10.0.0.0/8, а у пира B — 10.0.1.0/24. Пакет к 10.0.1.50 подходит обоим, но /24 длиннее, поэтому выбирается B. Назначение 10.2.0.5 подходит только /8 и отправляется A. Это детерминированное правило позволяет осознанное пересечение без зависимости от порядка строк.
Обозначения на схеме: 1 — внутреннее назначение, переданное WireGuard; 2 — поиск в AllowedIPs; 3 — более конкретное совпадение 10.0.1.0/24; 4 — резервное совпадение 0.0.0.0/0. Схема показывает выбор пира внутри WireGuard, а не предшествующий поиск системного маршрута.
| Назначение | Доступные префиксы | Выбранное совпадение |
|---|---|---|
10.0.1.50 | 10.0.0.0/8, 10.0.1.0/24 | 10.0.1.0/24 |
10.2.0.5 | 10.0.0.0/8, 0.0.0.0/0 | 10.0.0.0/8 |
198.51.100.20 | 10.0.0.0/8, 0.0.0.0/0 | 0.0.0.0/0 |
2001:db8::20 | Только записи IPv4 | Совпадения IPv6 нет |
Одинаковый префикс у разных пиров не является полезной балансировкой нагрузки. Конфигурации нужна однозначная связь. Для динамического распределения проектируйте отдельные префиксы или маршрутизирующий уровень вне WireGuard.
Пир полного туннеля часто использует 0.0.0.0/0 для IPv4 и ::/0 для IPv6. Это префиксы по умолчанию: любой адрес соответствующего семейства совпадает, если нет более конкретной ассоциации пира. Они выражают выбор пира, но не обещают корректную настройку DNS, исключений локальной сети, политической маршрутизации или защиты от утечек.
Раздельный туннель перечисляет более узкие назначения, например частную офисную подсеть или один хост. Шифруется к пиру только трафик, который и попал в интерфейс WireGuard, и совпал с префиксом. Имена приложений не записываются в AllowedIPs: исключения по программам требуют политики системы или клиента за пределами поля.
В системе с двумя стеками оба семейства обрабатываются намеренно. Значение IPv4 по умолчанию не соответствует IPv6. Если политика должна защищать оба, потребуются согласованные ассоциации пиров и маршруты обоих семейств. Если IPv6 оставляют снаружи, это должно быть явным решением раздельного туннеля, а не случайным пропуском.
Сравнение протоколов VPN помогает поместить эти механизмы рядом с другими архитектурами. Само поле остаётся списком сетевых префиксов, а не пользовательской командой «все приложения» или «только браузер».
До выбора пира операционная система обычно решает, какой интерфейс получит пакет. Системный маршрут может направить 10.0.1.0/24 в wg0. Лишь после прибытия в wg0 поиск WireGuard по AllowedIPs выбирает криптографического пира. Если системный маршрут ведёт в другое место, WireGuard не увидит пакет, хотя его таблица содержит идеальное совпадение.
Помощник wg-quick(8) намеренно упрощает связь: он выводит маршруты из AllowedIPs всех пиров, добавляет их в систему и отдельно обрабатывает маршрут по умолчанию.[3] Это поведение помощника, а не доказательство, что каждый инструмент WireGuard устанавливает те же записи. wg, NetworkManager, мобильный клиент и собственный сценарий могут по-разному управлять окружающей маршрутизацией.
Разделение создаёт четыре распространённых состояния:
AllowedIPs совпадают: пакет может достичь выбранного пира.Руководство по Endpoint рассматривает последнее внешнее назначение. Если принять Endpoint за маршрут или без понимания внутренней политики добавить публичный адрес сервера в AllowedIPs, можно создать петлю либо непреднамеренно перехватить трафик.
После аутентификации и расшифровки WireGuard проверяет принадлежность внутреннего источника к AllowedIPs отправляющего пира. Так один настроенный пир не может выдать себя за внутренний адрес, назначенный другому. Пир удалённого пользователя, ограниченный 10.0.0.7/32, не внедрит через эту ассоциацию расшифрованный пакет с заявленным источником 10.0.0.8.
Проверка сильна, но узка. Она не анализирует TCP-порты, личности приложений, пользователей, время суток, состояние соединений, доменные имена или право службы принять пакет. Такие правила применяет межсетевой экран хоста или сети. Проверка также не включает автоматически пересылку IP между интерфейсами.
Это не политика DNS. Резолвер может вернуть адрес внутри или вне префикса, но AllowedIPs не выбирает резолвер и не защищает запрос, который система отправила через другой интерфейс. DNS и маршруты проверяются отдельно.
Многие правят AllowedIPs ради одного решения: пускать ли через туннель весь трафик или оставить локальные адреса напрямую. Если цель только в этом, AethoVPN сводит выбор к одному переключателю вместо списка префиксов. Включённый глобальный режим ведёт трафик всех приложений через зашифрованный туннель — тот же итог, что и в примере полного туннеля выше; выключенный пропускает запросы к сайтам вашего региона мимо ретранслятора. Переключите режим и подтвердите реальный путь проверкой IP или маршрута. Начните бесплатный 3-дневный пробный период, чтобы сравнить оба состояния. Правила для отдельных приложений или префиксов по-прежнему требуют собственного пира WireGuard.
Возьмите одно внутреннее назначение и пройдите уровни по очереди. Сначала найдите победивший системный маршрут и подтвердите ожидаемый интерфейс. Затем определите самое длинное совпадение AllowedIPs среди пиров. Только после выбора проверяйте Endpoint, последнее рукопожатие, счётчики и обратный путь.
Для входящей проблемы исследуйте предполагаемый внутренний источник расшифрованного пакета и ассоциацию пира на принимающем интерфейсе. Не «чините» симптом добавлением 0.0.0.0/0 каждому пиру. Слишком широкая запись перехватит исходящие назначения и расширит диапазон источников, которые пир вправе заявлять.
Используйте подконтрольные тестовые префиксы и записывайте оба семейства адресов. Успешный ping доказывает лишь один узкий двусторонний случай, но не все маршруты, программы, DNS и правила экрана. Если отказало одно назначение, сначала сравните его самый длинный префикс с рабочим, а не меняйте ключи и таймер keepalive.
Доставка запроса в нужный пир — только половина обмена. У удалённой системы должен существовать маршрут к внутреннему источнику ответа, а её собственное правило AllowedIPs должно выбрать и разрешить ожидаемого пира. Асимметричная конфигурация может передать запрос, но потерять ответ на другом интерфейсе.
Проверяйте направление отдельно: назначение исходного пакета, источник расшифрованного входящего пакета, затем обратное назначение ответа. Одинаковые слова в конфигурациях двух сторон не гарантируют одинаковые таблицы системы. Сравнивайте фактические маршруты и счётчики.
AllowedIPs связывает внутренние IP-префиксы с пирами открытых ключей WireGuard.wg-quick может установить маршруты из списка, но это отдельный уровень помощника.Не совсем. Поле выбирает исходящего пира по внутреннему назначению и разрешает внутренние источники аутентифицированных входных пакетов. Доступ пользователей и служб требует других правил.
0.0.0.0/0 в AllowedIPs?Префикс совпадает со всеми IPv4-адресами и может сделать пира выбором IPv4 по умолчанию. Системе всё равно нужны согласованные маршруты, а IPv6 обрабатывается отдельно.
::/0 адреса IPv4?Нет. Это префикс по умолчанию для IPv6. Полный туннель с двумя стеками обычно рассматривает и 0.0.0.0/0, и ::/0.
Да, если разная длина создаёт намеренный выбор самого длинного префикса. Для исходящего назначения побеждает более конкретное совпадение.
Он проверяет префикс источника аутентифицированного входящего пакета WireGuard, но не заменяет общий экран для портов, приложений, пользователей и состояния соединений.
Нет. AllowedIPs относится к внутренним префиксам и выбору пира. Endpoint — внешний адрес либо имя и UDP-порт для достижения этого пира.
wg-quick выводит системные маршруты из префиксов для удобства. Это документированное поведение помощника, а таблица пиров WireGuard концептуально остаётся отдельной.
Источники:
wg(8): https://git.zx2c4.com/wireguard-tools/about/src/man/wg.8wg-quick(8): https://git.zx2c4.com/wireguard-tools/about/src/man/wg-quick.8Sources checked 12 сентября 2026 г.
Рекомендуемые статьи:
Зарегистрируйтесь и попробуйте все премиум-функции бесплатно.
*Только для новых пользователей. Один пробный период на пользователя.





