Как настроить VPN-подключение программно в MAC? - PullRequest
6 голосов
/ 11 августа 2011

после поиска некоторое время я обнаружил, что единственный лучший источник для программной установки vpn-соединения в Mac - это

http://lists.apple.com/archives/Macnetworkprog/2011/May/msg00032.html

но я был поражен 5-й точкой во время кодирования, которое говорит о kSCNetworkProtocolTypePPP, и такой вещи нет ...

кто-нибудь сделал это, как показано в ссылке выше или есть другой источник ...?

1 Ответ

2 голосов
/ 28 июля 2014

но я был поражен 5-й точкой во время кодирования, которое говорит о kSCNetworkProtocolTypePPP, и такого не существует ...

Нет необходимости извлекать протокол PPP, вы можетеприменить настройки непосредственно к интерфейсу, который вы создали.Если вы создали интерфейс, подобный следующему:

interface = SCNetworkInterfaceCreateWithInterface(bottomInterface, kSCNetworkInterfaceTypePPP);

, вы можете применить параметры PPP напрямую, используя:

SCNetworkInterfaceSetConfiguration(interface, myOptions)

Вам придется применить общий секрет, используя

SCNetworkInterfaceSetExtendedConfiguration(interface, CFSTR("IPSec"), myOptions)

И если вы хотите включить «Отправлять весь трафик через VPN», вам необходимо применить эти настройки, сначала загрузив протокол IPv4:

SCNetworkProtocolRef protocol = SCNetworkServiceCopyProtocol(service, kSCNetworkProtocolTypeIPv4);
SCNetworkProtocolSetConfiguration(protocol, myOptions)

Исходный код, упомянутый в этом ответе, былизвлечено из https://github.com/halo/macosvpn/blob/master/macosvpn/Classes/VPNController.m, где вы можете найти его полностью.

...