能不能用VPN实现游戏代理?
要求指定的应用程序走VPN通道,其他程序不走VPN?
VPN支持这种方式吗?以前对VPN觉得是不是登录后,所有的网络数据包都走的VPN线路了。。?

解决方案 »

  1.   

    是不是表达得不清楚...
    有没有懂vpn的朋友解惑啊?感激不尽!
      

  2.   


    如果你知道游戏服务器的所有IP段(一般游戏都不只是一个游戏服务器,而且不少不同的IP),是可以实现的,特别是游戏服务器是域名的话,这比较容易实现。
      

  3.   

    如何只允许应用程序A走VPN线路,而其他程序还是按照正常的方式,不走vpn线路呢?
      

  4.   

    你没看清楚我说的。你只能是知道要过VPN的程序要访问的目标服务器,才可以这样做,如果你无法确定程序要访问的目标服务器的IP或IP段的话,不行。
      

  5.   

    程序要访问的VPN目标服务器ip可以确定。
    请问是vpn中具体哪个实现呢?IPsec?pptp?L2TP?GRE?
    我看了linux的pptp代码,里面到最后居然直接调的系统的pppd程序。pppd连接一旦建立,链路层就全走的这个tunnel了吧?能通过hook指定单一的应用程序吗?或者用spi能钩到吗?通过直接改ip头的方式。
    socks5能实现,其他几个有没有能实现的啊?还是说用与socks5同样的方法采用这几个vpn协议都能实现?指定单一程序的话就靠hook就可以?
      

  6.   

    就是简单的VPN拨入不使用默认路由,自己再将VPN程序要访问的IP段加入到VPN路由就搞定,简单得很。
      

  7.   

    要做的不是VPN服务器端。
    实现VPN客户端指定应用程序走VPN连接,其他的客户端应用程序不走。比如,我开个游戏,走VPN线路,同时不影响我用IE上网,IE上网不走VPN线路。
      

  8.   

    暂时放弃了用VPN,还是用hook + socks5解决吧。
      

  9.   


    那就根本不用自己写了。随便安装个sockscap32/e-border/proxycap等的东西就能挂游戏,让游戏经过socks5代理。
      

  10.   

    那就根本不用自己写了。随便安装个sockscap32/e-border/proxycap等的东西就能挂游戏,让游戏经过socks5代理。
      

  11.   

    问题不是用什么。是要了解其中的hook技术。这种通过共享进程空间来将injector载入目标应用程序的地址空间的方式。看了下freecap的源码。其是使用了win api hook。关于如何载入,它通过自身,先初始化injector,接着创建对应应用程序进程。接下来由于是子进程,父进程已知载入的injector的首指令偏移地址,对应子进程的injector偏移地址,接下来通过汇编,将子进程eip指向injector。从而唤醒injector,达到指定单一应用程序的Winsock2对应几个API被injector hook住。