📡 Что мы строили
Связать три сети через VPN:
- Центр: VPN-сервер pfSense (10.88.33.0/24, 172.30.99.1)
- Офис Строгино: Keenetic за pfSense (192.165.10.0/24)
- Офис Жуково: UDM (192.165.40.0/24, 172.30.99.140)
- Транзитная VPN-сеть: 172.30.99.0/24
🔧 Основные действующие лица
| Устройство | Роль | IP в VPN | Локальная сеть |
|---|---|---|---|
| pfSense (центр) | Сервер WireGuard | 172.30.99.1 | 10.88.33.0/24 |
| UDM (Жуково) | Клиент WireGuard | 172.30.99.140 | 192.165.40.0/24 |
| Keenetic (Строгино) | Клиент WireGuard за pfSense | 172.30.99.11 | 192.165.10.0/24 |
🗺️ Маршрут наших мучений
Шаг 1. Базовые настройки WireGuard на UDM
На UDM создали WireGuard-клиента:
- Endpoint: 188.127.243.55:8279 (внешний IP pfSense)
- Внутренний IP: 172.30.99.140/24
- DNS: 172.30.99.1 (pfSense внутри VPN)
Шаг 2. Настройка AllowedIPs на pfSense
В Peer для UDM прописываем:
В Peer для Keenetic (Строгино):
Шаг 3. Правила файрвола на UDM (главная боль 🔥)
Создали несколько правил, но работает только одно:
Шаг 4. Статический маршрут на UDM
Добавили маршрут до офиса Строгино:
Шаг 5. Проблема с ICMP Redirect от pfSense
При пинге с Keenetic (172.30.99.11) на устройство в Жуково (192.165.40.213) получали:
Причина: pfSense говорил Keenetic'у «шпи пакеты напрямую на UDM (172.30.99.140)», но Keenetic не мог пинговать UDM, потому что на UDM не было разрешения для ICMP от 172.30.99.11.
Шаг 6. Решение проблемы Redirect
Вариант А (рабочий): Добавить на UDM правило, разрешающее ICMP от всей подсети 172.30.99.0/24:
Вариант Б (альтернативный): Отключить ICMP Redirect на pfSense:
Шаг 7. Неожиданный финал
После всех плясок с бубном оказалось, что правило ykhyjk (ICMP от 172.30.99.1) вообще не нужно — его отключение ничего не сломало, а пинги продолжали работать.
✅ Финальная конфигурация
На pfSense (сервер, центр):
- Порт UDP 8279 открыт на WAN
- В Peer UDM: AllowedIPs = 172.30.99.140/32, 192.165.40.0/24, 10.88.33.0/24
- В Peer Keenetic: AllowedIPs = 172.30.99.11/32, 192.165.10.0/24, 10.88.33.0/24, 192.165.40.0/24
- На интерфейсе WireGuard: правило Pass для трафика между всеми сетями
- ICMP Redirect: оставлен включённым (не критично после настройки UDM)
На UDM (Жуково):
- WireGuard подключен (статус: Подключено)
- Статический маршрут: 192.165.10.0/24 → 172.30.99.1 (wireguardtopfsense)
- Статический маршрут: 10.88.33.0/24 → 172.30.99.1 (wireguardtopfsense)
- Правило файрвола (единственное рабочее): Allow VPN to LAN all (Source: Внешняя зона, Destination: Внутренние, 192.165.40.0/24)
На Keenetic (Строгино):
- WireGuard: AllowedIPs = 10.88.33.0/24, 192.165.0.0/16, 172.30.99.0/24
- Статический маршрут: 192.165.40.0/24 → 172.30.99.140 (UDM) - опционально
🎯 Результат
✅ UDM пингует офис Строгино (192.165.10.1)
✅ pfSense пингует UDM (172.30.99.140) и устройство в Жуково (192.165.40.213)
✅ Keenetic (Строгино) пингует устройство в Жуково (192.165.40.213)
✅ Устройство в Жуково пингует Keenetic (192.165.10.1)
✅ ICMP Redirect больше не мешает
💡 Главные выводы (из реального опыта)
- AllowedIPs должны быть прописаны на всех пирах и включать все сети с обеих сторон. Иначе пакеты не будут уходить в туннель.
- На UDM правила с конкретным IP-источником могут не работать. Всегда используйте подсети (/24), даже если источник один.
- ICMP Redirect от pfSense — не ошибка, а подсказка. Он появляется, когда есть более прямой путь. Решается либо настройкой этого пути, либо отключением Redirect.
- Не создавайте лишних правил. Иногда одно широкое правило между зонами решает все проблемы.
- Проверяйте пинг от каждого узла до каждого. Это быстро локализует проблему.
- На Keenetic в AllowedIPs обязательно добавлять 172.30.99.0/24, иначе он не сможет общаться с другими пирами в VPN-сети.
🔍 Полезные команды для проверки
📚 Словарик терминов
| Термин | Значение |
|---|---|
| ICMP Redirect | Сообщение от роутера: «есть более прямой путь, шли туда» |
| AllowedIPs | В WireGuard — список сетей, которые доступны через этого пира |
| UBIOS | Система файрвола на UDM (цепочки iptables с префиксом UBIOS_) |
| Зоны (Firewall Zones) | Группировка интерфейсов на UDM для правил файрвола |
Комментарии
Пока нет комментариев. Будьте первым!