DD-WRT 是路由器的自訂韌體,支援 OpenVPN 通訊協定且適用於多種類型的路由器。 您可在此處 檢查您的路由器是否支援 DD-WRT 韌體,並在此處 了解如何安裝 DD-WRT 韌體。
本教學將說明如何使用 DD-WRT OpenVPN 用戶端 UI,在 DD-WRT 路由器上使用 OpenVPN 連線設定 DD-WRT VPN。
替代設定方法:
1. 在 DD-WRT 管理介面中,前往「設定」> 「基本設定」。 在網路位址伺服器設定 (DHCP)下方,將 NordVPN DNS 位址設定為:
Static DNS 1:103.86.96.100
Static DNS 2:103.86.99.100
Static DNS 3:0.0.0.0(預設值)
Use DNSMasq for DHCP:已選取
Use DNSMasq for DNS:已選取
DHCP-Authoritative:已選取
然後,「儲存」並「套用」設定。
如果正在設定兩台路由器,則第二台路由器的本地 IP 位址應變更為與主要路由器不同的位址。 (本範例的主路由器 IP 為 192.168.1.1,而您正在連線至 NordVPN 伺服器的路由器則可透過 192.168.2.1 來存取)
2. 前往「設定」>「IPv6」。 將 IPv6 狀態設為停用,點選「儲存」,然後「套用設定」。
(建議採取此步驟來確保 IP 不會外洩)
3. 前往「服務」>「VPN」。 在Open VPN 用戶端下方,將「啟動 OpenVPN 用戶端」設為啟用 來查看此設定所需的選項。 接著設定以下內容:
伺服器 IP/名稱:本教學採用了 us936.nordvpn.com,但您應該連線至Nord 帳戶儀表板中伺服器推薦分頁所推薦的伺服器。
請按照以下步驟找出最適合連線的伺服器:
- 登入Nord 帳戶,然後點選「NordVPN。
2. 向下捲動至「進階設定」,並點選「手動設定 NordVPN」。
3. 選擇「推薦伺服器」分頁。 程式會根據您的位置來推薦最適合的伺服器。
4. 按下「進階篩選條件」,就可以進一步選擇「伺服器類型」和「安全協定」來自訂推薦的伺服器。
如欲選擇特定的伺服器,請按照以下步驟操作:
- 在「手動設定 NordVPN」的下方,選擇「OpenVPN 設定檔。
- 使用「搜尋列」進行搜尋,或向下捲動,點選「下載 UDP」或「下載 TCP」進行下載,找到想連線的伺服器。
- 手動連線至OpenVPN和IKEv2時,在「服務憑證」分頁上,您將需要使用使用者名稱及密碼。
Port:1194(或443作為 TCP 通訊協定)
Tunnel Device:TUN
Tunnel Protocol:UDP(或 TCP)
Encryption Cipher:AES-256-CBC
Hash Algorithm:SHA-512
User Pass Authentication:啟用
Username, Password:NordVPN 服務帳密
First Data Cipher:未設定
Second Data Cipher:未設定
Third Data Cipher:未設定
注意:如果沒有使用者名稱和密碼欄位,請填寫其餘欄位並繼續前往步驟3.1
您只要前往Nord 帳戶儀表板,就能找到自己的 NordVPN 服務憑證(服務使用者名稱和服務密碼):
請按照以下步驟找到手動連線設定的服務憑證:
- 登入Nord 帳戶,按一下「NordVPN」,然後在 「手動設定」中點選「服務憑證」。在這裡可以找到手動連線必須用到的使用者名稱和密碼。
進階選項:啟用(這將會啟用其他選項)
TLS 密碼:無
LZO 壓縮:不
NAT:啟用
本指南中未提及的選項,應保留其預設值不變。
3.1. (選用,視步驟 3 而定。)如果沒有使用者名稱和密碼欄位,請前往「系統管理」 > 「指令」,並輸入這段程式碼:
echo "YOURUSERNAME
YOURPASSWORD" > /tmp/openvpncl/user.conf
/usr/bin/killall openvpn
/usr/sbin/openvpn --config /tmp/openvpncl/openvpn.conf --route-up /tmp/openvpncl/route-up.sh --down-pre /tmp/openvpncl/route-down.sh --daemon
請將YOURUSERNAME(您的使用者名稱)和YOURPASSWORD(您的密碼)替換為對應的 NordVPN 服務憑證。 按一下「儲存啟動」,並返回上一個 VPN 分頁。
4. 在「附加組態」欄位中輸入或複製/貼上以下指令:
remote-cert-tls server
remote-random
nobind
tun-mtu 1500
tun-mtu-extra 32
mssfix 1450
persist-key
persist-tun
ping-timer-rem
reneg-sec 0
#log /tmp/vpn.log
#Delete `#` in the line below if your router does not have credentials fields and you followed the 3.1 step
#auth-user-pass /tmp/openvpncl/user.conf
5. 在任何您偏好的文字編輯器中,開啟在步驟 3 下載的 OpenVPN 設定檔(最好是使用 WordPad 或 Notepad++,因為一般的記事本並無正確的格式)。
6. 在文字編輯器中開啟所選伺服器的.ovpn檔案(本範例中為us936_nordvpn_com.udp.ovpn)時,應該看到檔案的 部分(請勿複製 和 標籤):
7. 將其內容複製到CA Cert欄位。 請確保整串指令文字均已貼上,包括
-----BEGIN CERTIFICATE----- and _-----END CERTIFICATE-----_指令行。
8. 現在,請返回設定檔,並向下捲動至部分, 複製 TLS 金鑰的內容:
9. 將內容貼至「TLS Auth Key」欄位。 請確保完整貼上整串指令文字,包括:
-----BEGIN OpenVPN Static key V1----- 和 _-----END OpenVPN Static key V1-----_行。
10. 輸入資料後,請按一下「儲存」,然後「套用設定」。
11. 若要驗證 VPN 是否正常運作,請前往「狀態 」>「OpenVPN」
在「狀態」中,應該可看到訊息顯示「Client: CONNECTED SUCCESS(用戶端:已成功連線)」。
選用 Kill Switch 設定(適用進階使用者):
若要建立 Kill Switch,請前往「系統管理」>「指令」,並輸入這段指令碼:
WAN_IF=`nvram get wan_iface`
iptables -I FORWARD -i br0 -o $WAN_IF -j REJECT --reject-with icmp-host-prohibited
iptables -I FORWARD -i br0 -p tcp -o $WAN_IF -j REJECT --reject-with tcp-reset
iptables -I FORWARD -i br0 -p udp -o $WAN_IF -j REJECT --reject-with udp-reset
選擇「儲存防火牆」,前往「系統管理」>「管理選項」>「重啟路由器」。
關於其他選項,請參閱我們的與 NordVPN 相容的路由器 清單。