Назад | Перейти на главную страницу

OpenSwan и L2TPd, проходящие через вторичный шлюз

Мне нужна помощь с сетевым проектом с использованием Linux (на основе RHEL) и open swan с L2TPd (xl2tpd). Хотя первоначальная настройка работает отлично, я хочу, чтобы мой VPN-трафик проходил через вторичный сетевой интерфейс, у которого есть маршруты, проходящие через сайт к сайту vpn с использованием openswan.

Конечная игра здесь будет подключаться через L2TP / IPsec с моего телефона к клиентскому vpn-серверу. И тогда мой интернет-трафик с моего телефона будет выходить из моей домашней сети и иметь мой домашний IP-адрес WAN. Я пробовал маскировать iptables, SNAT, правила пересылки и даже изменять таблицу маршрутов, но у меня ничего нет.

Я могу сделать это с помощью OpenVPN, но я думаю, что разница в том, что L2TP не может проталкивать маршруты к подключенным клиентам, как это делает OpenVPN.

Моя сеть такая:

Домашняя сеть: 10.0.0.0/24 Облачная сеть: 172.31.90.0/27 eth0 public iface 172.31.95.0/27 eth1 private с подключением к Интернету через мою домашнюю сеть.

Клиентская сеть VPN: 192.168.0.0/24

Я начинаю с подключения к своему vpn-серверу через общедоступный iface, и когда я проверяю свой IP-адрес, я получаю свой общедоступный IP-адрес с облачного сервера, однако я хочу подключиться к vpn-серверу через общедоступный IP-адрес облака и получить доступ к Интернету через моя домашняя сеть.

Оба eth0 и eth1 являются шлюзами по умолчанию. Я читал на форумах, что мне нужно создать «таблицу маршрутов vpn», и я пробовал это, но тоже не сработало. Не уверен, почему обход ppp0-eth1 будет отличаться от того, что скажем, настройка сервера как устройства nat с парой правил пересылки, однако пакеты не обнаруживаются, когда я выполняю пересылку ppp0 eth1, подбираются только правила пост-маршрутизации если я использую маскарад без параметров интерфейса в iptables.

Кроме того, я не могу пинговать IP-адрес eth1 с моего VPN-клиента, что бы я ни пытался, но я могу пинговать eth0 с моего VPN-клиента нормально. Что я здесь делаю не так?

ОБНОВЛЕНИЕ: поскольку eth0 хотел быть основным интерфейсом, что бы я ни делал. Я переместил общедоступный IP-адрес с eth0 на eth1, затем переместил частную сеть с eth1 на eth0. Теперь все работает как положено. Я все еще хочу знать, как я мог этого избежать.

Заранее спасибо.