Я пытаюсь изменить настройки 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-клиента в 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, или ручной настройки маршрутизации.
Надеюсь, это поможет.
сдмейерс
Пвнозавр
сдмейерс
тишма
netstat -rn
, но мне почему-то разрешен доступ только к 10, а не к 172.