Как лучше соединить два роутера с динамическими ip по Wireguard, используя VPS сервер в качестве сервера с белым ip?
По вводным: что имеем. Есть два роутера кинетик. Сейчас они оба подключаются к Vps, на котором установлен Wireguard по этому скриптуhttps://github.com/Nyr/wireguard-installСейчас ситуация такая: и Запрет. Тоесть выход в интернет осуществляется через запрет на удаленном сервере. Теперь хочу убрать запрет и использовать vps просто как сервер с белым ip. Чтобы один роутер подключился к другому и через него выходил в интернет. Роутеры я настрою, нужен совет, как настроить wireguard на vps. В принципе на wireguard свет клином не сошолся. Можно и другой протокол. Роутеры умеют во все основные протоколы. Просто я чайник и с wireguard есть простые скриптовые решения.
Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.
Пока нет других ответов. Будьте первым, кто поможет автору.
Ответить на вопрос
Вам нужен не “сервер, через который весь интернет выходит”, а центральный WireGuard-хаб с белым IP, через который две сети видят друг друга. VPS в такой схеме не должен быть default gateway для всего трафика, если вы этого не хотите. Он просто маршрутизирует подсети между двумя роутерами.
Пример: роутер A имеет локальную сеть 192.168.10.0/24, роутер B — 192.168.20.0/24, VPS WireGuard — 10.50.0.1, роутер A — 10.50.0.2, роутер B — 10.50.0.3. На VPS в wg0.conf peers должны иметь AllowedIPs не только WG-адрес, но и LAN-подсеть за этим роутером.
[Interface] Address = 10.50.0.1/24 ListenPort = 51820 PrivateKey = SERVER_PRIVATE_KEY [Peer] PublicKey = ROUTER_A_PUBLIC_KEY AllowedIPs = 10.50.0.2/32, 192.168.10.0/24 [Peer] PublicKey = ROUTER_B_PUBLIC_KEY AllowedIPs = 10.50.0.3/32, 192.168.20.0/24
На роутере A для peer VPS указываете AllowedIPs = 10.50.0.0/24, 192.168.20.0/24. На роутере B — 10.50.0.0/24, 192.168.10.0/24. Не ставьте 0.0.0.0/0, если не хотите гнать весь интернет через VPS.
На VPS включите маршрутизацию:
sysctl -w net.ipv4.ip_forward=1
NAT между двумя вашими LAN обычно не нужен, если на роутерах правильно прописаны маршруты. Но если Keenetic не маршрутизирует удалённую подсеть как надо, можно временно включить NAT на VPS, хотя это хуже для прозрачности. Правильнее добиться route-based схемы.
Важные условия: локальные сети роутеров не должны совпадать; на каждом роутере должен быть маршрут в сеть второго роутера через WireGuard; firewall должен разрешать трафик между WG и LAN. Если динамические IP у роутеров, это не проблема: они сами инициируют подключение к VPS с белым IP, а PersistentKeepalive 25 помогает держать NAT-сессию.
Итого: VPS — hub, оба Keenetic — peers, AllowedIPs описывают реальные LAN-подсети, 0.0.0.0/0 не используете. Тогда один роутер сможет ходить в сеть второго, а интернет останется через локального провайдера.