Маршрутизация всего трафика через туннель OpenVPN

31493
Filip Ekberg

Я установил сервер OpenVPN в Archlinux и теперь использую графический интерфейс OpenVPN в Windows 7, я могу общаться с другими компьютерами, подключенными через VPN, но я еще не понял, как маршрутизировать весь трафик через туннель.

Как мне это сделать? Я подумал, что мне нужно сделать это route(команда cmd), но я думаю, что мне нужны некоторые указатели здесь.

Я следовал инструкции OpenVPN HowTo по этому вопросу, но она не работает, она просто не подталкивает опцию «заставить клиента пройти через этот шлюз».

А переход с OpenVPN на альтернативу PPTP / IPSec на данный момент не вариант.

11

4 ответа на вопрос

15
Eric Darchis

В Windows Vista и последующих версиях OpenVPN часто необходимо указывать:

route-method exe route-delay 2 

В противном случае маршруты не могут быть установлены.

Тогда я рекомендую не менять маршруты вручную, а использовать выделенный параметр OpenVPN:

redirect-gateway def1 

Между ними есть большая разница: ваш маршрут мешает стандартному, и когда ваш локальный DHCP возобновляет аренду или что-то в этом роде, он может восстановить исходный маршрут по умолчанию и испортить ситуацию. Redirect-gateway def1 скорее устанавливает два маршрута: 0.0.0.0/1 и 127.0.0.0/1. Он оставляет маршрут по умолчанию, является более конкретным, поэтому имеет приоритет над заданным по умолчанию и легко удаляется.

`redirect-gateway def1` помог мне после запуска OpenVPN в качестве администратора. EnigmaRM 9 лет назад 1
Отличное описание чего-то, что я нашел довольно странным на первый взгляд. Спасибо regulatre 8 лет назад 0
2
wawawawa

Установите интерфейс VPN в качестве шлюза def (убедитесь, что он включен) ...

В Linux это будет что-то вроде (abcd - это адрес вашего интерфейса VPN):

sudo ip route заменяет 0.0.0.0/0 через abcd

Или вы можете использовать "/ sbin / route", но синтаксис немного отличается.

Если вы хотите, чтобы это сохранялось при перезагрузке, вы можете добавить его в /etc/rc.local, но вы, вероятно, захотите использовать определенный метод для вашего дистрибутива. Я вижу, что вы используете Arch Linux, поэтому файл, который вы хотите отредактировать для постоянного статического маршрута, добавляется при загрузке /etc/rc.conf. Проверьте здесь для получения дополнительной информации.

Удачи!

=====================

Я просто написал этот ответ, а затем перечитал вопрос ....

Для Windows вы хотите сделать это (из командной строки):

Маршрут добавить 0.0.0.0 маска 0.0.0.0 abcd

или возможно:

изменение маршрута 0.0.0.0 маска 0.0.0.0 abcd

Хотя этот ответ содержит информацию о добавлении маршрутов в Windows (в целом), он намного уступает ответу Erics, учитывая контекст OpenVPN. Shaamaan 5 лет назад 0
1
CGA

В конфигурационном файле OpenVPN вы пытались изменить "redirect-gateway" на "redirect-gateway def1"?

Да, я, как я уже сказал, я сделал то, что сказал HowTo, и это все еще не работает. Filip Ekberg 14 лет назад 0
redirect-gateway должен работать. Можете ли вы опубликовать вывод печати маршрута, а также вывод openvpn клиента. Там вы должны увидеть, будет ли заменен маршрут по умолчанию. Robert Ivanc 13 лет назад 0
1
user36218

Не забудьте сделать:

echo 1 > /proc/sys/net/ipv4/ip_forward