Центр Диагностики & База Системных Ошибок

Решения для Windows Server, Active Directory, 1С, СУБД, Linux, Cisco, MikroTik и IP-телефонии.

⚠️ Важная информация Все материалы, инструкции, команды и скрипты предоставлены исключительно в ознакомительных целях. Их применение может повлиять на работу операционной системы, баз данных и сетевого оборудования. Перед выполнением действий обязательно создайте резервную копию. При отсутствии необходимой квалификации обратитесь к ИТ-специалистам.

MikroTik WireGuard Error: peer allowed-ips mismatch — исправление маршрутизации

Обновлено: 24.08.2026  ·  Официальная база знаний
  • В журнале появляется wireguard,error packet dropped: peer allowed-ips mismatch.
  • Рукопожатие (Handshake) проходит успешно, но трафик не проходит внутрь туннеля или теряется в одну сторону.
  • Пакеты из локальной сети клиента сбрасываются интерфейсом WireGuard на маршрутизаторе.
  • Невозможно добавить одинаковые подсети в allowed-address для двух разных пиров.

1. Понимание модели Cryptokey Routing

WireGuard маршрутизирует трафик на основе криптографических ключей. Список allowed-address выполняет две функции:

  • Определяет, какие IP-адреса источника (Src IP) разрешено принимать от данного пира.
  • Определяет, какому пиру отправлять пакет с соответствующим IP-адресом назначения (Dst IP).

2. Корректировка Allowed-Address на стороне Сервера

Убедитесь, что для пира разрешен как его внутренний IP туннеля, так и его локальная подсеть (если требуется доступ к LAN):

/interface wireguard peers
set [find comment="Client-1"] allowed-address=10.0.0.2/32,192.168.20.0/24

3. Корректировка Allowed-Address на стороне Клиента

Если через туннель должен идти весь трафик, укажите 0.0.0.0/0, либо перечислите только целевые корпоративные подсети:

/interface wireguard peers
set [find comment="To-Server"] allowed-address=0.0.0.0/0

4. Проверка пересечения подсетей (Overlap Conflicts)

В рамках одного WireGuard интерфейса одна и та же подсеть не может быть назначена двум разным пирам:

/interface wireguard peers print detail

5. Проверка статических маршрутов в таблице маршрутизации

/ip route
add dst-address=192.168.20.0/24 gateway=wireguard1 routing-table=main
Практический опыт инженера: Запомните золотое правило WireGuard: запись в таблице маршрутизации (/ip route) отправляет пакет в интерфейс, но именно Allowed-IPs решает, какому конкретно пиру этот пакет будет зашифрован.

Частые вопросы (FAQ)

Почему при указании allowed-address=0.0.0.0/0 для нескольких пиров возникает сбой?

В WireGuard на одном интерфейсе маршрут 0.0.0.0/0 может принадлежать только одному пиру. Если требуется несколько шлюзов по умолчанию, необходимо создать отдельные интерфейсы WireGuard (wireguard1, wireguard2).

Что произойдет, если клиент отправляет пакет с IP-адресом, не входящим в allowed-address?

Ядро WireGuard мгновенно отбросит такой пакет без генерации ответа ICMP как не прошедший криптографическую проверку источника (Source IP Check).

Нужно ли настраивать NAT/Masquerade для WireGuard трафика?

Если на удаленной стороне не прописан обратный маршрут в подсеть источника, необходимо настроить '/ip firewall nat add chain=srcnat out-interface=wireguard1 action=masquerade'.

Как разрешить доступ ко всей локальной сети за MikroTik?

На клиенте в AllowedIPs добавьте подсеть LAN сервера (например, 192.168.1.0/24), а на сервере в Firewall Filter разрешите Forward между wireguard1 и интерфейсом моста (bridge).