在搜索了一段时间后,我发现在mac中以编程方式建立vpn连接的唯一最佳源是
http://lists.apple.com/archives/Macnetworkprog/2011/May/msg00032.html
但是我在第5点发现了关于kSCNetworkProtocolTypePPP的编码,并且没有这样的事情......
有任何人如上面的链接所示,或有任何其他可用的来源......?
小智 2
但我在编码时对第五点感到震惊,其中提到了 kSCNetworkProtocolTypePPP 并且没有这样的事情......
无需获取 PPP 协议,您可以将设置直接应用到您创建的接口。如果你创建的界面是这样的:
interface = SCNetworkInterfaceCreateWithInterface(bottomInterface, kSCNetworkInterfaceTypePPP);
Run Code Online (Sandbox Code Playgroud)
您可以使用以下方式直接应用 PPP 选项:
SCNetworkInterfaceSetConfiguration(interface, myOptions)
Run Code Online (Sandbox Code Playgroud)
您必须使用以下方式应用共享密钥
SCNetworkInterfaceSetExtendedConfiguration(interface, CFSTR("IPSec"), myOptions)
Run Code Online (Sandbox Code Playgroud)
如果您想启用“通过 VPN 发送所有流量”,您需要首先获取 IPv4 协议来应用这些设置:
SCNetworkProtocolRef protocol = SCNetworkServiceCopyProtocol(service, kSCNetworkProtocolTypeIPv4);
SCNetworkProtocolSetConfiguration(protocol, myOptions)
Run Code Online (Sandbox Code Playgroud)
本答案中提到的源代码是从https://github.com/halo/macosvpn/blob/master/macosvpn/Classes/VPNController.m中提取的,您可以在其中完整找到它。
| 归档时间: |
|
| 查看次数: |
2501 次 |
| 最近记录: |