VPN-X简介_VPN-X个人资料_VPN-X微博_百科网
A-A+

VPN-X简介_VPN-X个人资料_VPN-X微博

2018-05-17 02:09:40 科学百科 阅读 1 次
VPN-X
VPN-X典型网络部署图 VPN-X是一个跨平台的P2P/SSL/TLSVPN解决方案.

原理
VPN-X目前应用TUN与TAP技术来完成虚拟网卡(封装以太网数据-传递以太网数据-恢复以太网数据).在未来的版本中可能不依赖TUN/TAP技术,还可以使用其它技术来完成以太网数据的封装.

传输方式上VPN-X可以选用以下协议:UDP,TCP,JavaSSL(JSSE),OpenSSL。VPN-X支援在同一进程中使用上述协议。至于穿越NAT方面,VPN-X支持UDP穿越NAT,而不支持其它协议穿越NAT。

兼容性
得益于Java跨平台特性,目前VPN-X可在MicrosoftWindows2000以上、Linux、MacOSX等系统之上运行。但是值得注意的是,在Linux平台上需要内核支持TUN/TAP模块;MacOSX也需要第三方提供的驱动。这并非VPN-X特有的操作,hamachi等软件目前也需要类似的操作。幸运的是VPN-XMacOSX版本目前已经集成这些驱动,用户不用再理会那些安装驱动的命令行了.

VPN-X支持两种加密模式:对称加密
VPN-X建立UDP及TCP传输通道时会利用对称加密技术来对数据进行加密解密.该加密方式适合普通用户加密要求

非对称加密,即公钥私钥机制.
VPN-X建立SSL传输通道时会利用SSL自带的非对称加密技术来加密解密.该加密方式适合企业级的应用及对加密有特殊要求的用户.目前VPN-X可以支持JavaSSL和OpenSSL.注意对OpenSSL支持将在VPN-X3.0中完成,目前还在Alpha测试.VPN-X3.0支持SSL2,SSL23,SSL3,TLS1.0,DTLS1.0.

争论
Java性能一直是争论的焦点。由Java实现的VPN,目前主流是基于浏览器的,比如SSL-Explorer等。VPN-X则使用了VPN的另一种实现方式,即使用TUN/TAP。VPN-X亦受Java的速度影响,但是VPN-X核心是使用JNI技术来完成Java和C语言对接,这样可以改善VPN的性能表现。
VPN技术主要可以解决两个问题:

安全性(SSL/TLS可以解决这个问题)
将Internet转换成局域网。这一转换涉及到速度问题,但是Java并非网络传输的主要瓶颈。相比之下,Internet目前的传输速度在性能上的影响更大,所以Java在VPN的应用上还是可以进一步延伸,而不是只停留在浏览器的应用上。