VPN-X

VPN-X

VPN-X,網際網路套用技術,VPN-X原理是套用TUN與TAP技術來完成虛擬網卡(封裝乙太網數據-傳遞乙太網數據-恢復乙太網數據). 在未來的版本中可能不依賴TUN/TAP技術,還可以使用其它技術來完成乙太網數據的封裝。

VPN-X典型網路部署圖VPN-X典型網路部署圖
VPN-X是一個跨平台的P2P/SSL/TLSVPN解決方案.

原理
VPN-X目前套用TUNTAP技術來完成虛擬網卡(封裝乙太網數據-傳遞乙太網數據-恢復乙太網數據).在未來的版本中可能不依賴TUN/TAP技術,還可以使用其它技術來完成乙太網數據的封裝.

傳輸方式上VPN-X可以選用以下協定:UDPTCPJavaSSL(JSSE),OpenSSL。VPN-X支援在同一進程中使用上述協定。至於穿越NAT方面,VPN-X支持UDP穿越NAT,而不支持其它協定穿越NAT。

兼容性
得益於Java跨平台特性,目前VPN-X可在MicrosoftWindows2000以上LinuxMacOSX等系統之上運行。但是值得注意的是,在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的套用上還是可以進一步延伸,而不是只停留在瀏覽器的套用上。

相關搜尋

熱門詞條

聯絡我們