Сервер wireguard не видит локальную сеть, как решить проблему?
Приветствую. Имеется сервер VDS сервер с Ubuntu и Wireguard установлен. Проблема в том, что я хочу связать две локальные сети, но wg0 пингуется, а локальная сеть — нет. На сервере пробовал добавить маршрут, не помогает. В чем может быть проблема ?
Понял вашу задачу: вы хотите объединить две **локальные сети через WireGuard** (site-to-site), но у вас сейчас **только пингуется интерфейс wg0**, а доступ к локальным подсетям не работает. Судя по вашему конфигу, проблема связана с **маршрутизацией и NAT**. Давайте разберём по шагам.
1. `AllowedIPs = 0.0.0.0/0` — это **маршрут всего трафика через WireGuard**, что используется для VPN “к Интернету через сервер”, а не для подключения локальных сетей.
2. `PostUp` делает **маскарадинг для eth0** (т.е. NAT на интернет), что тоже не нужно, если цель — соединение двух локальных сетей напрямую.
3. **Нет маршрутов к локальным сетям** на стороне VDS или клиентской стороны.
---
### 2️⃣ Пример правильной настройки site-to-site
Допустим:
* **Сеть A (на сервере VDS)**: 192.168.1.0/24
* **Сеть B (на клиенте)**: 192.168.2.0/24
* **WireGuard туннель**: 10.10.10.0/24
2. **Маршруты на локальных машинах**:
Например, на машине в сети 192.168.1.0/24 нужно добавить маршрут к 192.168.2.0/24 через туннель 10.10.10.2:
```bash
sudo ip route add 192.168.2.0/24 via 10.10.10.2 dev wg0
```
И на другой стороне зеркально.
3. **NAT (MASQUERADE)** нужен только если вы хотите выход в интернет через туннель, а для site-to-site **лучше без NAT**, чтобы пакеты видели реальные локальные IP.
---
Если хотите, я могу прямо написать **готовый рабочий конфиг для вашего случая с VDS + локальная сеть**, где будет всё: маршруты, iptables, IP forwarding — чтобы после запуска можно было пинговать локальные сети напрямую.
Это не проблема. Это нормальное поведение. Для решения задачи нужно обеспечить или маршрутизацию на всех узлах сети по пути пакетов и их пересылку между сетевыми интерфейсами, или обеспечить трансляцию адресов NAT на в локальную сеть.