Несколько конфигураций OpenVPN

Несколько конфигураций OpenVPN

У меня есть настройка OpenVPN для маршрутизации всего трафика через VPN. Мне интересно, есть ли способ переключить, будет ли маршрутизироваться весь трафик или только трафик, предназначенный для этой сети для каждого клиента.

Например, если я нахожусь в ненадежной сети, я хочу, чтобы весь мой трафик направлялся через VPN. Однако позже, когда я буду в надежной сети, я могу просто захотеть иметь доступ по SSH к машинам, но не хочу, чтобы весь трафик направлялся, так как это будет неоправданно медленно.

Это возможно?

решение1

Если сервер публикует для вас маршрут по умолчанию, вы можете его игнорировать, например,

route delete default tun0

и вы можете восстановить маршрут по умолчанию, который был до подключения VPN, аналогичным образом.

С другой стороны, если сервер не публикует такой маршрут, вы можете выбрать маршрутизацию всего вашего трафика через VPN, хотя в этом случае вам нужно будет убедиться, что (a) VPN-сервер способен справиться с этим и знает, как транслировать сетевые адреса/маршрутизировать ваш трафик в Интернет и обрабатывать ответы, и (b) убедиться, что у вас нет нескольких маршрутов по умолчанию и что вы по-прежнему можете достичь конечной точки VPN.

Короче говоря, если вы контролируете своего клиента, вы контролируетев частностиего таблицы маршрутизации, и вы можете настроить их так, как вам нравится. Маршрутизацияменьшек серверу, чем хотелось бы, проще; маршрутизацияболеечем это может потребоваться, требует его сотрудничества или, по крайней мере, его возможностей; но и то, и другое возможно.

решение2

Основываясь на идее удаления маршрута, предложенной @MadHatter, я создал псевдоним, который по сути делает следующее:

sudo openvpn --config /path/to/config --route-nopull
sudo ip route add x.x.x.x/24 dev tun0

Где x.x.x.x/24находится путь внутренней сети, к которой вы подключаетесь через VPN.

Теперь я могу использовать этот псевдоним, когда хочу, чтобы через VPN передавался только трафик внутренней сети, и использовать конфигурацию без него, --route-nopullесли хочу, чтобы весь трафик направлялся через VPN.

Связанный контент