Где находится параметр «Отправлять весь трафик через VPN-соединение» в OSX 10.9 Mavericks?

Я пытаюсь изменить настройки VPN-подключения Cisco IPSec, которое было настроено с помощью встроенного VPN-клиента OSX в системных настройках. VPN работает, как и ожидалось, позволяя мне получить доступ к защищенным серверам в моей компании. Я хотел бы получить доступ к другим веб-сайтам в Интернете через эту VPN (youtube, википедия и т. д.). Насколько я могу судить, мой обычный просмотр веб-страниц осуществляется не через VPN.

На этой странице поддержки Apple говорится, что есть параметр «Отправлять весь трафик через VPN-соединение», который можно включить в Apple menu > System Preferences > Network > Advanced > Optionsдиалоговом окне. Однако, когда я выбираю VPN из списка сетевых интерфейсов и нажимаю кнопку «Дополнительно…», вкладки или кнопки «Параметры» нет. Вижу диалог с двумя вкладками, "DNS" и "Прокси". Нигде нет кнопки опций или «Отправить весь трафик через VPN-соединение».

Итак, что дает? Это связано с тем, к какой VPN я подключен (Cisco IPSec)? Это связано с настройками VPN? В любом случае, как я могу направить обычный просмотр через VPN?

Какой тип VPN-подключения. В некоторых случаях весь трафик в любом случае будет отправляться через VPN-соединение (когда оно активно), поэтому этот параметр устарел (и, следовательно, недоступен). Пример: Cisco VPN... без вариантов. VPN (PPTP) ... опция доступна.
@sdmeyers не совсем уверен, какая связь. Все, что я действительно вижу, это «Cicsco IPSec». Где я могу проверить тип настройки? Основываясь на моем (ограниченном) понимании VPN, я считаю, что мой трафик не проходит через него. VPN-сервер находится в США, и когда я смотрю на свой текущий IP-адрес, я вижу, что хост находится не в США, в которой я сейчас нахожусь.
Google «Какой мой IP», чтобы увидеть ваш общедоступный IP-адрес до и после подключения к вашему vpn, здесь он должен отличаться. VPN не изменит ваш локальный IP-адрес.
Клиент Cisco IPSec для Mac, кажется, ведет себя именно так, как хотелось бы - VPN-сервер предоставляет список защищенных маршрутов, и они добавляются в системную таблицу маршрутизации Mac. Однако у меня обратная проблема... У меня есть маршруты 10.xxxx и 172.xxx в моем netstat -rn, но мне почему-то разрешен доступ только к 10, а не к 172.

Ответы (2)

Я предполагаю, что не все VPN-подключения встроенного VPN-клиента в Mac имеют эту опцию.

PPTP и L2TP предлагают вариант: Откройте настройки сети:

введите описание изображения здесь

Выберите ваше VPN-подключение и нажмите кнопку «Дополнительно».

Появится новое окно с тремя флажками под заголовком «Параметры сеанса». Последний из этих флажков — тот, который вам нужен: «перенаправить весь трафик через VPN».

Однако, как вы сказали. Кнопка «Дополнительно» не появляется при использовании Cisco IPSec.

Я нашел эту тему ( https://superuser.com/questions/91191/how-to-force-split-tunnel-routing-on-mac-to-a-cisco-vpn ), которая, возможно, может быть ответом на вашу проблему. (если вы используете его для маршрутизации всего диапазона IP-адресов):

Кто-нибудь знает, как взломать таблицу маршрутизации (на Mac), чтобы победить принудительную маршрутизацию VPN для всего через VPN Cisco? в значительной степени то, что я хочу сделать, это иметь только адреса 10.121. * и 10.122. * через VPN, а все остальное - прямо в Интернет.

Следующее работает для меня. Запустите их после подключения к Cisco VPN. (Я использую встроенный в OS X клиент Cisco, а не фирменный клиент Cisco.)

sudo route -nv add -net 10 -interface utun0
sudo route change default 192.168.0.1

Замените «10» в первой команде на сеть, которая находится на другой стороне туннеля.

Замените «192.168.0.1» на шлюз вашей локальной сети.

Я поместил это в сценарий bash, например:

$ cat vpn.sh 
#!/bin/bash

if [[ $EUID -ne 0 ]]; then
    echo "Run this as root"
    exit 1
fi

route -nv add -net 10 -interface utun0
route change default 192.168.0.1

Я также нашел объяснение, как запустить это автоматически при подключении VPN, но уже поздно в пятницу, и мне не хочется пробовать :)

https://gist.github.com/675916

Редактировать:

С тех пор я ушел с работы, где использовал Cisco VPN, так что это по памяти.

«10» в первой команде — это сеть, которую вы хотите маршрутизировать через VPN. «10» — это сокращение от «10.0.0.0/8». В случае Туан Ань Тран сеть выглядит так: «192.168.5.0/24».

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

Самый простой способ определить шлюз — запустить netstat -rn перед входом в VPN и посмотреть IP-адрес справа от пункта назначения «по умолчанию». Например, вот как это выглядит на моей коробке прямо сейчас:

Internet:
Destination        Gateway            Flags        Refs      Use   Netif Expire
default            10.0.1.1           UGSc           29        0     en1
10.0.1/24          link#5             UCS             3        0     en1
10.0.1.1           0:1e:52:xx:xx:xx   UHLWIi         55   520896     en1    481
10.0.1.51          7c:c5:37:xx:xx:xx   UHLWIi          0     1083     en1    350
10.0.1.52          127.0.0.1          UHS             0        0     lo0

Мой шлюз — 10.0.1.1 — он находится справа от пункта назначения «по умолчанию».

Этот ответ дает противоположное тому, что спрашивали.

VPN-серверы Cisco обычно отправляют список маршрутов в частные сети, поэтому в конечном итоге вы не будете отправлять весь свой трафик через VPN-сервер. Чтобы решить эту проблему, вы можете попробовать предложенные здесь варианты перехода с CiscoVPN на собственную OS X IPSec VPN путем расшифровки паролей, сохраненных в файлах CiscoVPN PCF, или ручной настройки маршрутизации.

Надеюсь, это поможет.