Маршрутизация и VPN
В связи с тем, что macOS
не принимает таблицу маршрутизации по расширениям протокола DHCP
часто возникает проблема корректировки маршрутов при установки связи по VPN
. Проблема возникает при необходимости использования соединения VPN
в качестве маршрута по-умолчанию (при установки флажка "Отправлять весь трафик через VPN" в настройках соединения).
Для решения можно использовать up
/down
скрипты, вызываемые pppd
: ip-up
и ip-down
. В качестве примера рассмотрим корректировку маршрутов на подсеть 10.0.0.0/8
.
Немного теории
Скрипту ip-up
передаются шесть параметров:
ifname
- название новогоppp
интерфейсаttyname
(у меня пустая строка)ttyspeed
(у меня пустая строка)localip
-ip
, присвоенныйppp
интерфейсуremoteip
-ip
шлюзаoldgateway
-ip
прежнего шлюза по-умолчанию
Эти параметры могут помочь при написании логики работы скрипта.
Изменение маршрутов при подключении VPN
Запускаем терминал. Для удобства запускаем оболочку с правами root-а:
Переходим в каталог /etc/ppp
:
Создаем файл ip-up
:
Жмем клавишу i
(режим вставки) и набираем следующий текст:
Сохраняем файл - Esc
:
w
q
Enter
.
Изменяем права доступа к файлу для того, чтобы разрешить выполнение скрипта:
Теперь при подключении VPN
в таблицу маршрутизации будет добавлена запись на локальные подсети через прежний шлюз.
Изменение маршрутов при отключении VPN
Обратные действия реализуются с помощью скрипта ip-down
.
В том же каталоге /etc/ppp
создаем файл ip-down
:
Изменяем права доступа к файлу для того, чтобы разрешить выполнение скрипта:
Теперь при отключении мы получим начальную таблицу маршрутов.
Last updated
Was this helpful?