0%

在windows下使用wintun虛擬網卡,加快5倍的速度連線

本篇描述OpenVPN除了原本的TAP虛擬網卡驅動外,在v2.5另外又新增一個 Wintun 虛擬網卡驅動。
使用wireguard讓人最印象深刻的除了設定簡單外,就是驚人的首次連線速度,幾乎是按下去馬上就連線完成。而windows在使用TAP下,往往需要6~8秒才能完成連線。但在改用新的wintun後,可以縮短到不到1秒完成,到底要怎麼做呢?

安裝

安裝畫面3
記得在首次安裝時,在Drivers裡面有個 Wintun 要確認有安裝(硬碟圖示),忘記的也可以重新下載OpenVPN的安裝檔來重新安裝

啟用

可以在client端單獨啟用,並不牽涉到server端的設定及作業系統,但啟用的電腦必須是windows且安裝過 Wintun 驅動程式
只要在client端的.ovpn內加上一行
windows-driver wintun
這樣就完成了,蠻簡單的

效能差異

這邊我做一個簡單的測試,以下都在同一台電腦,連線同一台server

在TAP v4.8 的情況下,完成連線需要 07.53s
在TAP v5.0 的情況下,完成連線需要 06.44s

而在 Wintun 下,完成連線僅需 1s

人客呀!這是多麼驚人的速度呀!

補充:虛擬網卡管理

如果在同一台電腦上需要開多OpenVPN的話,就需要裝多個虛擬網卡,不管是TAP或是Wintun,都可以用這個公用程式達成 tapctl

在管理者模式開啟 Powershell 或是 CMD
進入OpenVPN的程式目錄,位置取決於你安裝在哪裡,依照預設安裝OpenVPN的話是
cd "C:\Program Files\OpenVPN\bin"

條列出所有製造出的網卡
tapctl list
前面 {xxx} 是網卡的uuid碼,後方是網卡名稱

新增TAP網卡
tapctl create --name tap1
該指令會產生一個名為 tap1 的TAP虛擬網卡,命名的部份盡量用英文數字

新增wintun網卡
tapctl create --hwid wintun1
該指令會產生一個名為 wintun1 的 Wintun 虛擬網卡

刪除網卡
兩種虛擬網卡刪除方式都一樣,但總共有兩種刪除方式,用網卡名稱或是uuid
tapctl delete "網卡名稱"
tapctl delete "{網卡uuid}"

_