[技術] 架設VPN Server於無實體IP區域網路路由
以Tailscale架設VPN Server於無實體IP之區域網路路由器
序
本文僅供實驗用目的,本人不對損壞任何硬體設備、喪失保固資格等行為負責,請完全了解
自身行為對設備造成的影響後再進行操作。
個人計畫前往中國工作,想試著在家裡架設個VPN Server來翻牆享受下自由的網路,原本計
畫於Router使用DDNS服務並架設內建的OpenVPN Server,但嘗試後發現自家網路(以4G LTE
作網路分享)並無實體IP而不可行,後嘗試以安裝ZeroTier或Tailscale於路由器上的方式
來避開無實體IP的問題,最終選用Tailscale來完成。本文將介紹
●佈署伺服器環境介紹
●安裝Asuswrt-Merlin韌體於Asus RT-AX68U路由器
●於AX68U上安裝Entware
●於AX68U上安裝Tailscale
●Tailscale的執行與設定
本人家中使用Netgear M1設備將4G LTE網路轉為RJ45乙太網路線,接入RT-AX68U WAN接口後
分享出Wi-Fi。本文以介紹如何設定RT-AX68U為主,Netgear M1設定為IP Passthrough,僅
輸出有線網路給RT-AX68U,不作Wi-Fi分享,不使用Tethering功能。
本文沒有什麼操作過程中的截圖,可以參考文章中連結,後續視本文反應,未來有機會要重
複設定時我再對內容截圖。
消歧義與名詞解釋
●本文提及之IP皆指IPv4
●實體IP:public IP,從網際網路中連線時真正使用的IP
●虛擬IP:private IP,進入區域網路後,於內部網路使用的IP。以4G LTE來說,一般各家
電信商給到的IP皆是虛擬IP,常見的虛擬IP開頭為10.開頭、100.開頭、172.開頭、192.168
開頭
●區域網路:LAN,內部網路,區域網路內使用虛擬IP,所有區域網路內的設備共用一個實
體IP。一般而言在區域網路內的某個設備架設伺服器是可行的,需要在區域網路中對外連線
的設備上設定Port Forwarding,將特定port的流量全部導到架設server的設備,但4G LTE
對外連線的設備是由電信商管理,電信商不會幫你設定Port Forwarding,因此一般要架設
自己的server會需要辦家用有線網路(如光纖、ADSL,或稱固網),擁有自己的實體IP,管
理自己的設備
●DDNS:解決實體IP是浮動IP而非固定IP的問題,但本文不會用到,因為我連實體IP都沒有
一、架構介紹
網路架構
https://i.imgur.com/yl2tTiH.jpg
我計畫中的VPN連線方法
https://i.imgur.com/71KdCJI.jpg
二、Asuswrt-Merlin
Asuswrt-Merlin為一修改過的Asus路由器韌體,可於其網站上查詢是否有使用的路由器型號
的韌體,這種韌體會提供一些額外的功能。
刷入韌體的方法:於Asuswrt-Merlin網站上下載好對應路由器型號的韌體後,連線到自家路
由器管理網頁(如192.168.50.1)→系統管理→韌體更新,上傳Asuswrt-Merlin韌體後開始
更新。
參考:https://www.asuswrt-merlin.net/
三、Entware
於路由器管理網頁→系統管理→系統設定下的服務,啟動SSH連線,選擇LAN only,設定一S
SH連接埠。透過PC以SSH連線到路由器,例如使用PuTTY,於PuTTY上輸入路由器 IP address
與設定的port,以路由器登入帳密登入。
於路由器上插上一個USB disk,要將USB disk做格式化並使用合適的Format(ext2/ext3/ex
t4),參考下方的YouTube連結,完成後拔除USB disk並重新插回路由器,可以在路由器管
理網頁看看是不是有讀到USB disk或是於putty上輸入df -T確認是不是有讀到這個USB disk
,一般來說路徑為/dev/sda1,格式會為ext3。
輸入amtm,首次進入會要選擇Theme,隨便選,進入後輸入i來顯示所有script,接著輸入ep
來安裝Entware,一路照著說明輸入後就安裝好了
SSH連線可參考https://www.vermax.cn/334.html前半部分,後半部分提及zerotier,在本
文中沒有使用到zerotier,與Tailscale能做的事情類似,但zerotier可能設定較複雜,我
也沒搞出來。
USB disk格式化與使用amtm部分可以參考https://youtu.be/ykMxnWvwbog
時間2:06-6:15,
影片最後也有安裝Entware可以參考。
四、Tailscale
安裝完Entware後,於PuTTY輸入opkg install tailscale即會自動開始安裝。
五、Tailscale的設定與執行
首先以PC瀏覽器在Tailscale網頁上註冊服務,Tailscale顯示說要兩台以上的設備連線到Ta
ilscale,在一台欲連線至VPN的設備上安裝Tailscale並登入即可建立一個連線。
接下來要設定路由器登入到Tailscale,首先先安裝screen,在PuTTY上輸入opkg install s
creen,安裝完成後輸入screen開啟一個新的輸入頁,關於screen的功能可以參考網路資源
,不使用screen的話在PuTTY關掉後tailscale服務也會關掉。
輸入tailscaled -state \opt\bin\tailscaled &
輸入tailscale up --advertise-exit-node --reset
回應會顯示一個網址要登入
在PC瀏覽器上輸入網址,以同樣的帳號登入Tailscale
於Tailscale管理網頁上將路由器設為exit node
在欲連線至VPN的設備上設exit node為路由器即完成VPN連線功能,可以嘗試透過IP查詢網
站確認是否有完成VPN連線。
Tailscale的使用可以參考https://post.smzdm.com/p/ad2kw7xx/ ,但我使用的是exit nod
e功能。
六、結果
透過Speedtest by Ookla測速,結果網路速度偏慢,延遲也較高、浮動大,但至少是一個堪
用的VPN Server,小流量看看網站還行,透過家人於日本測試連線也確認確實可用,看影片
網站也可行,但是否能作為於中國穩定翻牆的手段尚不確定,得看我未來的使用體驗了。
尚有一問題是每次路由器重啟要重新連SSH進去開Tailscale,類似電腦重新開機要開啟一些
軟體,懂Linux可以設定自動化的腳本,但我也沒弄,有興趣可以自行研究。
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.200.8.22 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Network/M.1636899863.A.67D.html
→
11/15 04:56,
3年前
, 1F
11/15 04:56, 1F
→
11/15 04:56,
3年前
, 2F
11/15 04:56, 2F
→
11/15 04:59,
3年前
, 3F
11/15 04:59, 3F
→
11/15 05:06,
3年前
, 4F
11/15 05:06, 4F
→
11/15 10:17,
3年前
, 5F
11/15 10:17, 5F
→
11/15 11:00,
3年前
, 6F
11/15 11:00, 6F
→
11/15 11:00,
3年前
, 7F
11/15 11:00, 7F
→
11/15 11:00,
3年前
, 8F
11/15 11:00, 8F
→
11/15 11:20,
3年前
, 9F
11/15 11:20, 9F
→
11/15 11:27,
3年前
, 10F
11/15 11:27, 10F
→
11/15 11:28,
3年前
, 11F
11/15 11:28, 11F
→
11/15 11:28,
3年前
, 12F
11/15 11:28, 12F
→
11/15 11:29,
3年前
, 13F
11/15 11:29, 13F
→
11/15 11:29,
3年前
, 14F
11/15 11:29, 14F
推
11/15 11:30,
3年前
, 15F
11/15 11:30, 15F
→
11/15 11:30,
3年前
, 16F
11/15 11:30, 16F
→
11/15 11:31,
3年前
, 17F
11/15 11:31, 17F
→
11/15 11:32,
3年前
, 18F
11/15 11:32, 18F
推
11/16 19:49,
3年前
, 19F
11/16 19:49, 19F
→
11/17 02:21,
3年前
, 20F
11/17 02:21, 20F
推
11/18 11:38,
3年前
, 21F
11/18 11:38, 21F
→
11/18 11:40,
3年前
, 22F
11/18 11:40, 22F
→
11/18 11:41,
3年前
, 23F
11/18 11:41, 23F
Network 近期熱門文章
PTT數位生活區 即時熱門文章