Subject: Re: [govpn-devel] help

From: Sergey Matveev <[email-masked]>
Date: Wed, 28 Feb 2018 21:56:59 +0300

Приветствую!

*** [email-masked] [2018-02-28 14:50]:
>прошу Вашей помощи в настройке роутинга на клиенте Ubuntu 17,

У вас имеется:

* WiFi шлюз с NAT-ом с адресом внутри сети 192.168.1.1
* За этим шлюзом у вас есть удалённый сервер 212.8.234.1
* При установлении соединения вашего клиента с сервером начинает
  работать tap10 интерфейс у которого 172.16/x сеть

Если вы просто скажете что теперь ваш маршрут по-умолчанию это не
192.168.1.1, а 172.16.0.1, то компьютер не знает как в этом случае
отсылать пакеты до удалённого сервера. Делают обычно так:

* явно руками добавляют знание о том, как ходить до удалённого GoVPN
  сервера:

    ip route add 212.8.234.1/32 via 192.168.1.1

* удаляют/заменяют маршрут по-умолчанию на адрес который находится
  "внутри" GoVPN туннеля:

    ip route delete default
    ip route add default via 172.16.0.1

Чтобы туннель работал вам нужно уметь ходить до сервера. Первый маршрут
даёт это знание. Все остальные пакеты (не до 212.8.234.1 будут идти по
маршруту по-умолчанию, то есть отправляться до 172.16.0.1 который внутри
туннеля. Соответственно весь трафик пойдёт через этот туннель.

Само собой на противоположной стороне (отвечающей за 172.16.0.1) нужно
что-нибудь типа NAT поднять (в Linux, насколько помню, делается iptables
и MASQUARADE правилами) чтобы локальный адрес 172.16.0.1 "выходил" в
Интернет.

За точность синтаксиса команд не отвечаю -- под рукой GNU/Linux нет,
делаю по памяти. Но суть понятно: что-то через шлюз такой-то. Обратите
внимание что вам не надо добавлять всю сеть 212.8.234.1/24, а достаточно
только этот один компьютер 212.8.234.1/32 на котором сервер.

-- 
Sergey Matveev (http://www.stargrave.org/)
OpenPGP: CF60 E89A 5923 1E76 E263  6422 AE1A 8109 E498 57EF