Добрый день. Я хочу свою локальную сеть соединить с двумя другими локальными сетями через VPN. VPN крутится на выделенном linux сервере, настроить маршрутизацию на роутере я не могу.
Более детальное описание. У меня есть локальная сеть. Есть маршрутизатор на который у меня нет полного доступа и я не могу настроить на нем маршрутизацию (маршрутизатор МГТС - есть доступ к iptables, но нет доступа к ip route). Я хочу сделать так, чтобы появилась возможность маршрутизировать траффик. Есть сервер Linux, на котором крутится, 2 VPN клиента - один VPN для соседней локальной сети, второй VPN для другой локальной сети. На сервере есть одна сетевая карта. Для обычных клиентов вопрос решился просто - я запускаю на своем Linux сервере DHCP и добавляю соответсвующие VPN маршруты в DHCP - все хорошо. Но для клиентов Android это не работает - у них используется только default gateway из DHCP. Поэтому я хочу, чтобы весь ip траффик от Android клиентов проходил через мой сервер Linux на котором бы я все правильно маршрутизировал (то есть мой Linux сервер будет использоваться как default gateway для Android клиентов). Большинство инструкций описывают как настроить NAT на сервере, причем как правило с 2 сетевыми картами. А как сделать маршрутизацию если карта одна. Хотелось бы именно нормальную маршрутизатию. Если пакет предназначен для обного из VPN, то он бы маршрутизировался в VPN. Если нет, то «магически уходил бы» на роутер.
Я попробовал тупо включить на Linux сервере net.ipv4.ip_forward=1 и использовать его в качестве шлюза по умолчанию на клиенте. Но это не сработало. Трафик в VPN маршрутизируется, на сервер ничего не уходит.
Можно, конечно, закостылить и сделать вид, что сервер находится в другой подсети. Допустим роутер 192.168.1.1/24 Linux Сервер 192.168.1.2 VPN1: 192.168.2.0, VPN2: 192.168.3.0
Вешаем на один адаптер сервера 2 интерфейса - eth0, eth0:0. Первый интерфейс делаем 192.168.1.2/25. Добавляем второй интерфейс серверу eth0:0 и назначаем ему IP 192.168.1.128/25. Android клиенту даем адрес 192.168.1.129 и шлюзом по умолчанию назначаем 192.168.1.128. Во-первых это какая-то дичь (почему 2 IP на один интерфейс), а во-вторых не уверен, что это будет работать потому что роутер, например, будет считать всю сеть 192.168.1.0/24 локальной и как он будет отправлять ответ клиенту - напрямую ли. NAT на Linux сервере делать тоже не хочется - хочется, чтобы роутер видел настоящих клиентов.
Кто-нибудь знает, как это правильно и просто сделать? Или хотя бы подсказать где именно рыть.