1

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

У меня есть устройство на основе Ubuntu с двумя беспроводными интерфейсами (wlan0 и wlan1), а также физическим сетевым интерфейсом (eth0), который подключен к Интернету. Я также планирую подключиться к vpn (openvpn к провайдеру vpn, который мне сначала придется купить), который, вероятно, будет tun0 или что-то в этом роде. Я хочу, чтобы любой трафик с устройств, подключенных к wlan1, направлялся через vpn, а весь трафик на wlan0 направлялся напрямую в Интернет.

Вот мои вопросы: а) это вообще возможно? б) если (а == да), как бы я это сделал?

Мне нужно надежное решение, поэтому, пожалуйста, не делайте грязных хаков, если это возможно.

Заранее спасибо, пэр

1 ответ1

2

Это делается с помощью политики на основе маршрутизации.

Обычно решения о маршрутизации принимаются на основе сети назначения, однако при маршрутизации на основе политик вы можете маршрутизировать на основе всех видов аспектов соединения. Ваш сценарий прост: если входящий интерфейс wlan1 то маршрут по умолчанию должен быть вне tun0

Во-первых, мы создали новую таблицу маршрутизации под названием "vpn" (или как вам угодно):

echo "200 vpn" >> /etc/iproute2/rt_tables

Или вы можете отредактировать этот файл и добавить 200 vpn в конец.

Далее нам нужно добавить правило:

sudo ip rule add iif wlan1 lookup vpn

Это говорит «если входящий интерфейс - wlan1 тогда используйте таблицу маршрутизации с именем" vpn ", а не обычную.

Затем мы добавляем маршрут по умолчанию в таблицу маршрутизации vpn:

sudo ip route add default dev tun0 table vpn
sudo ip route flush cache

Это говорит о том, что все, что использует таблицу маршрутизации с именем "vpn", будет использовать интерфейс tun0 в качестве шлюза по умолчанию. Затем мы тщательно очищаем кэш маршрутов.

Вы можете использовать эту команду для просмотра таблицы маршрутизации vpn:

sudo ip route list table vpn

Теперь это всего лишь случай запуска этих команд, возможно, в виде сценария после активации vpn. Я почти уверен, что у openvpn есть сценарий пост-ап, к которому вы можете добавить их.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .