标签: vpn

是否可以在Heroku上设置VPN?

是否可以在heroku上使用openVPN设置VPN以保持暂存环境的私密性?如果是这样,任何人都有写或链接?

cloud vpn heroku openvpn

11
推荐指数
1
解决办法
9556
查看次数

Visual Studio 2010 - 崩溃VPN网络变化......任何想法?

很多时候,当我通过断开远程网络来更改VPN状态时,我的VS实例会立即崩溃.

这是我在事件日志中找到的最接近的东西.有人对此有什么想法吗?

Exception: System.Net.NetworkInformation.NetworkInformationException

Message: Invalid access to memory location

StackTrace: at System.Net.NetworkInformation.SystemNetworkInterface.GetAdaptersAddresses(AddressFamily family, FixedInfo fixedInfo) at System.Net.NetworkInformation.SystemNetworkInterface.PostWin2KGetNetworkInterfaces(AddressFamily family) at System.Net.NetworkInformation.SystemNetworkInterface.GetNetworkInterfaces(AddressFamily family) at System.Net.NetworkInformation.SystemNetworkInterface.InternalGetIsNetworkAvailable() at System.Net.NetworkInformation.NetworkChange.AvailabilityChangeListener.ChangedAddress(Object sender, EventArgs eventArgs) at System.Net.NetworkInformation.NetworkChange.AddressChangeListener.AddressChangedCallback(Object stateObject, Boolean signaled) at System.Threading._ThreadPoolWaitOrTimerCallback.PerformWaitOrTimerCallback(Object state, Boolean timedOut)

crash vpn visual-studio-2010

11
推荐指数
1
解决办法
819
查看次数

如何以编程方式连接到VPN?

我有一个VPN连接,我一直在丢失,我需要连接到我们的数据库服务器,但每个第二或第三个连接都失败,因为我丢失了VPN连接.在继续尝试数据库连接之前,我想添加somde代码 - 仅用于DEBUG配置 - 检查VPN连接并在必要时重新连接.

.net c# vpn windows-7

11
推荐指数
1
解决办法
2万
查看次数

Windows Azure VPN - 如何安装/使用Azure Connect

我觉得这里像个白痴.我在Azure中设置了一个简单的Windows虚拟机,需要通过VPN访问12个远程用户(他们都在家工作)才能访问共享驱动器.我认为这将是非常容易的,但我花了几天时间试图解决这个问题.

我有服务器设置,我现在已经意识到(经过几天的搜索)使用RRAS的传统PPTP或L2TP VPN无法正常工作,因为Azure框架会阻止这些协议.我也从帖子中看到过这样一个说使用Azure Connect的帖子,它应该可以满足我们的需求.但是,该文章中对Herve Roggero博客甚至微软自己的Azure支持网站的引用都谈到了我无法使用的功能,屏幕截图看起来与我在Azure控制台上看到的不同.实际上,Microsoft站点帮助文档的使用时间为2到2.5年.认真MS ...更新你的文档!

我的控制台看起来像这个图像(来自Google搜索的示例图像......不是我的真实界面)

但是,文章引用了看起来像这个图像的控制台

我没有使用正确的Azure版本吗?他们是否更新了界面而没有更新文档?底线,如何(使用我拥有的Azure界面)可以使用Azure Connect?我尝试创建虚拟网络,但没有任何内容可以选择使用Windows Azure Connect安装本地端点.我是白痴还是我在这里错过了什么?

vpn azure azure-connect

11
推荐指数
2
解决办法
1万
查看次数

原生Android VPN以编程方式

存在这个问题的变体,但我似乎无法理解某些东西.

如果您在ICS/4.0中的功能结束时阅读,请注意

企业还可以利用平台内置的标准VPN客户端来访问L2TP和IPSec协议.

我的假设是,因为它不在"开发人员"部分下,所以我们没有获得除VpnService API之外的开发人员API访问.我看过ToyVPN,这只是无用的,因为我需要一个真正的IPSec IKEv1 XAuth连接来连接到企业防火墙.

我找到了几个需要root和VPNCilla的解决方案,虽然我没有能够成功建立连接但显然没有.

这是否意味着除非我们在Java中实现协议或使用NDK(如StrongSwan与IKEv2一样),否则实际上无法以编程方式为IPSec IKEv1 XAuth网关/防火墙创建配置文件或连接到IPSec IKEv1 XAuth网关/防火墙?

vpn enterprise android ipsec xauth

11
推荐指数
1
解决办法
2602
查看次数

保护VpnService中的套接字

我正在探索Android的VpnService的功能.目前,我通过在用户空间重建IP堆栈构建了一个非常基本的请求转发器:我从VpnService的输入流中读取IP数据包,解析它们,对于我不想转发的连接,我尝试重新创建那些VPN连接外部的套接字连接.

我已经明白最后一点是通过VpnService.protect()以下方式实现的:

Socket socket = new Socket();
vpnService.protect(socket);
socket.connect(new InetSocketAddress(
        header.getDestinationAddress(),  // From my IP datagram header
        body.getDestinationPort()));     // From the TCP datagram header
Run Code Online (Sandbox Code Playgroud)

不幸的是,这种方法导致VPN接口的环回.

虽然上面的代码只是阻塞并最终超时,但我通过Socket.connect(InetSocketAddress)从一个单独的线程调用来观察环回; 连接直接返回到我的VpnService的输入流,并重复该过程.

不用说,这会导致循环.我觉得这样做的原因是在创建套接字时(以及随后的调用VpnService.protect(Socket)),我还没有设置目标IP和端口.

这似乎确实如此,因为通过覆盖VpnService.protect(Socket)VpnService.protect(int)我的VpnService实现并在两种情况下调用超级都返回false.

如何正确保护套接字连接?

sockets vpn android packet-capture android-4.0-ice-cream-sandwich

11
推荐指数
2
解决办法
8413
查看次数

如何通过框架API或任何其他有效方法找到VPN连接的状态?

至今:

我找到了以下解决方案

  1. 使用Broadcastreceiver

    广播接收器已从ICS弃用

  2. 使用Ping或Traceroute

    这肯定会花费很多时间而且效率不高

  3. 轮询DNS服务器更改

    这肯定会花费很多时间而且效率不高

  4. 使用ip-address

    即使根据网络连接不会花费太多时间,它也可能会有所不同

我的结论:

到目前为止,我发现的所有解决方案要么效率不高,要么不那么可靠.

我的问题:

如果VPN在Android设备中连接,那么android OS必须知道它.

是否有任何公共的android框架API来读取它,因为在本地查找是最有效和最可靠的解决方案?

有没有其他有效和可靠的方法来实现它(比如将C或C plus plus库与NDK集成)?

注意:

我也找不到OpenVPN for Android的任何自定义广播发件人/ AIDL

vpn android android-ndk aidl

11
推荐指数
1
解决办法
4864
查看次数

VPN数据包旁路

我正在创建一个模拟VPN(实际上并不创建与服务器的真实连接)来获取所有传入和传出的网络字节(信息).

现在我可以获取数据包并解析它们.我得到的例子:

IP版本:4标题长度:20总长度:60协议:6源IP:10.0.2.0目标IP:5.20.5.59主机名:clients4.google.com

我想知道我应该怎么做以及如何建立与网站/应用程序的连接(现在它没有连接).

在这个网站:http://www.thegeekstuff.com/2014/06/android-vpn-service/写道,需要做出这些步骤:

  1. 从TUN获取IP数据包.与所有VPN服务相同.
  2. 提取第4层信息.协议类型(例如TCP/UDP)及其有效载荷是必须的.由于TCP中存在握手过程,因此在从其获取实际有效载荷数据之前,我们需要先写回握手数据包.
  3. 选择相应的套接字发送有效负载.由于此步骤正在第4层上进行,因此我们需要保存套接字并尝试稍后获取返回数据.如果有任何返回数据,我们需要将这些数据包传递给TUN.
  4. 从套接字获取数据包,并构建第3层数据包.首先,我们需要构建一个有效的第4层数据包.UDP更容易,因为4字节UDP标头仅包含源地址,源端口,目标地址,目标端口.TCP更复杂,因为它是一个状态
  5. 连接,应正确设置序列号和确认号.然后,使用第4层数据包作为有效载荷,我们需要构建一个有效的第3层数据包.将IP数据包写回TUN.与所有VPN服务相同.

在第2步,我从数据包中获取信息.但是不要轻视它应该如何进一步完成.也许有人可以详细解释我.另外,也许可以告诉我如何获得目的地港口,当我有其IP地址.还有代码:

    public class VPN extends VpnService implements Handler.Callback, Runnable {
    private static final String TAG = "VpnService";

    private String mServerAddress = "127.0.0.1";
    private int mServerPort = 55555;

    private Handler mHandler;
    private Thread mThread;

    private ParcelFileDescriptor mInterface;

    @Override
    public int onStartCommand(Intent intent, int flags, int startId) {
        if (mHandler == null) {
            mHandler = new Handler(this);
        }

        if (mThread != null) {
            mThread.interrupt();
        }
        mThread = new …
Run Code Online (Sandbox Code Playgroud)

java ip vpn parsing android

11
推荐指数
1
解决办法
2555
查看次数

在UWP应用程序中是否可以从IVpnProfile获取ConnectionStatus?

我有以下WinRT代码,可以很好地发现活动的VPN配置文件:

VpnManagementAgent vpn;
auto profiles = vpn.GetProfilesAsync().get();
wprintf(L"Found %d profiles\n", profiles.Size());
for (auto vp : profiles)
{
    wprintf(L"Found profile %s\n", vp.ProfileName().c_str());
}
Run Code Online (Sandbox Code Playgroud)

我想检查ConnectionStatus,但这在IVpnProfile接口上不可用。我尝试添加以下内容无济于事,因为具体的VpnPlugInProfile和VpnNativeProfile类中的ConnectionStatus可用:

VpnPlugInProfile pp = vp.as<VpnPlugInProfile>();
if (pp != nullptr)
    wprintf(L"ConnectionStatus = %d\n", pp.ConnectionStatus());
Run Code Online (Sandbox Code Playgroud)

这只是给出一个无效的句柄错误。

有没有办法从IVpnProfile获取ConnectionStatus?

vpn uwp c++-winrt

11
推荐指数
1
解决办法
259
查看次数

无法在iOS上使用NEVPNManager创建IPSEC连接

我正在尝试在我的iOS应用程序中创建IPSEC VPN连接.

我设置配置的代码如下所示:

-(void)setUpConfig
   NEVPNManager *manager = [NEVPNManager sharedManager];

    int status = manager.connection.status;

    if (status == NEVPNStatusConnected) {
        manager.connection stopVPNTunnel];
    } else {
        [manager loadFromPreferencesWithCompletionHandler:^(NSError *error) {
            NSError *startError;

        if (error) {
            NSLog(@"Load config failed [%@]", error.localizedDescription);
            return;
        }

        NEVPNProtocolIPSec *p = (NEVPNProtocolIPSec *)self.manager.protocol;
        if (!p) {
            p = [[NEVPNProtocolIPSec alloc] init];
        }

        NSString *filePath = [[NSBundle mainBundle] pathForResource:@"base64_encoded_cert" ofType:@"txt"];
        NSString *certBase64String = [NSString stringWithContentsOfFile:filePath encoding:NSUTF8StringEncoding error:NULL];
        NSString *certPassword = @"cert_import_password";

        NSString *vpnUsername = @"myUsername";
        NSString *vpnPassword = @"myPassword";
        NSString …
Run Code Online (Sandbox Code Playgroud)

vpn frameworks objective-c ipsec ios8

10
推荐指数
1
解决办法
5131
查看次数