引言
在*nix系統下要分享區網很簡單,但在windows下就不是一件容易的事情。主要原因是目前資訊太少,這邊先就初步可以連線的方式介紹。
網路設定
首先由於預設OpenVPN的網路都是公有網路,公有網路下無法直接使用網路芳鄰使用分享區網,要先改成私有網路。
但OpenVPN產生的網卡有些特殊,無法使用常規方式(藉由控制台)來改變,因此我們要使用 Regedit
設定私有網路
本步驟操作在 OpenVPN 的 server 端及 client端都要完成
step.1
開始->執行-> regedit
開啟登入編輯程式
step.2
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkList\Profiles
根據上述路徑指示依序點到Profiles內點開,會看到如下圖
點開 Profiles 內,會有許多一長串數字英文組合,這些是目前你有連線過得網卡設定,依序點開根據 ProfileName
尋找你的OpenVPN網卡,以我的為例叫 OpenVPN Wintun
找到之後往上看有個 Category
觀察他的資料結尾是不是 (1),不是的話 點擊 Category
兩下,把數值資料改為1
P.S.1 Category的值,0代表公共網路,1代表私有網路,2則是區域網路,通常選擇私有網路連線上問題會比較少,但可能會有資安疑慮,故要慎選要分享的client
P.S.2 你要分享的區網也務必要設定成私有網路,可以在這個步驟一併設定,只要找ProfileName
是平常連線的那個名稱就是了
接著重開機即可完成
這時可以測試一下,先在client端連線VPN後
進入cmd或powershell
ping server端在區網下的 ip
注意:這邊最好找與server不同區域網路的client測試才準確
例如: server端vpn的ip是 10.8.1.1,區網IP是192.168.3.13ping 192.168.3.13
順利得到回應的話表示差不多了,如果連不到要檢查一下兩邊防火牆設置有沒有問題
開啟區網分享服務
開始->執行-> services.msc
開啟服務管理
在名稱那邊尋找 Routing and Remote Access
並確認他是執行中
如果沒有執行,點2下進去後點選啟動,沒有問題的話記得在啟動類型那邊選自動
網卡網路分享
再來就是關鍵的步驟,以下步驟只要在 server 端執行即可
step.1
確認server端的OpenVPN連線 __已關閉__,這很重要
step.2
開始->執行-> control
進入控制台
網路和網際網路 -> 網路和共用中心 -> 左邊的 變更介面卡設定
step.3
選擇要分享的區域網路,按右鍵 -> 內容 -> 選共用分頁
勾選 允許其他網路使用者透過這台電腦的網際網路來連線(N)
並在下方 家用網路連線(H)
選擇你的OpenVPN網卡
按下確定後關閉
step.4
server端OpenVPN啟動連線,至此設定應該完成
一樣在這邊先找一台與server不同區網的client端做測試
首先要確定 client 端的ovpn 有設定把push區網的網關
假設server端的區網ip是 192.168.3.13
確保client端的ovpn有如下設定push "route 192.168.3.0 255.255.255.0 vpn_gateway"
接著我們client連線vpn後執行進入cmd或powershell
首先一樣先ping server端的區網IP
確認有回應後,接著嘗試ping server端區網的其他電腦
一樣有回應,就可以試試看網路芳鄰
記得這邊只能用手動打IP來進行網芳連線,無法使用 server name 或是直接在網路芳鄰看見
例如我要連線的電腦是 192.168.3.10
在檔案總管的位置列打 \\192.168.3.10
如果連線成功,大功告成
注意事項
- 如果server端需要重新開機,務必要先中斷OpenVPN連線,再關機。
- 如果有設定自動重開,即使重開機後你發現網路分享設定依舊,但不知為何無法連線到區網其他電腦,代表連線中斷。這時要重新做上面網路分享設定的動作,其中step.3要做2次,第一次先取消勾選
允許其他網路使用者透過這台電腦的網際網路來連線(N)
,按下確定關閉設定視窗後等待1~2秒後,再重新來一次step.3設定,接著在打開OpenVPN連線才會正常
以上