外網連回無公用IP,無法用DDNS的NAS --- frp內網穿透實做。

前言

小家庭4口人住,家中沒有固網,只有1門4G上網吃到飽佈建家中的網路,所以沒有固定IP可用,連浮動IP都沒有,所以連DDNS也無法使用! 只有虛擬IP…

4G路由器是放在2樓的主臥,連接2根在陽台的LTE天線。4G路由器發射2.4G/5G的WiFi信號。

2樓有小米智能排插(陸版)、小米放大器(台版)、安卓電視盒(WiFi連接)。
1樓有小米IH電子鍋(WiFi連接),TP-LINK C7路由器(刷dd-wrt,以Client Bridge模式連接4G路由器),1台自已組裝的NAS、1台桌上型電腦、1台65吋的安卓電視都用網線連到TP-LINK路由器。其他的手機、平板、筆電則用WiFi連接上網。

試過用DDNS設定、路由器轉址、轉PORT… 都沒用,外網一直連不上。因為是自組的NAS,所以也沒有官方的穿透服務連接可用!最後只能用反向代理的方式來連接家中的NAS。

經GOOGLE資料及實做後,花了1個多小時實驗,終於連接成功! 詳細的方式特此記錄,以供有同樣問題的朋友取用!

外網連回無公用IP,無法用DDNS的NAS --- frp內網穿透實做。
準備工作:

1、frp服務器:可自建也可選用免費的服務器,在此建議用免費的服務器即可,GOOGLE一下就可以找到很多免費的frp反向代理服務器。

2、DOMAIN NAME:有自已域名的,可用CNAME增加2級域名,或是申請免費的轉址服務,如NO-IP就可申請3個免費的轉址服務。

3、DOCKER:NAS先加載DOCKER套件。

4、frp客戶端:在DOCKER里搜frp就可以找到映象檔,下載備用。

5、frpc.ini:反向代理連接服務器的設定檔,可自已寫,有的免費服務器網站也可自動生成再下載。

開工第一步:

frp服務器: 請google一下frp免費服務器,就可以搜出很多的結果:


我們選第1個結果進去:


可以發現有很多的免費服務器列表,在各個服務器中我用紅色圈起來處,是更詳細的網址,但沒有超鏈結可點,所以我們自已手動輸入網址,進入該服務器提供者的詳情頁面。



可以看到該服務器提供者有更多的免費服務器可供使用,此頁面包含接下來要設定的域名轉址及寫frpc.ini所需用到的連接端口、地址…等等的資料。


----- 外出,晚點繼續-----
繼續 -- 第二步,域名轉址服務

方式1:有自已的domain name的,到代管的服務商網站,登入並做DNS設定。我有購買美國肥牛的虛擬主機架站使用,所以我以自已的DOMAIN來實做。

到FATCOW網站,登入控制面板,找到DNS管理,按一下托管的DOMAIN NAME,再點選DNS,在MODIFY的地方選則CNAME ALIAS,新增CNAME,指向在第1步找到的frp反向代理服務器。例如我是想登入NAS的控制台及NAS中安裝的ODOO軟体,所以我新增了DSM及ODOO這二個CNAME(名稱隨便取,不限定),並指向frp反向代理服務器,按確定新增後即可退出。

把你新增的CNAME記下來,這要用在frpc.ini,也是以後你在外網要登入NAS的網址,例如我出差在外面,要登入我的NAS,就輸入dsm.xxxxx.com.tw即可,要連入odoo ERP系統,就輸入odoo.xxxxx.com.tw即會出現odoo的登入頁面,非常的方便。



方式2:免費的轉址服務,以no-ip網站為例。

登入no-ip的網站,在控制面板點選DDNS,可看到我已經設定了2個轉址服務用於NAS及ODOO。



新增的方式很簡單,只要點擊CREATE HOSTNAME,就會跳出對話框,我們要做CNAME記錄,所以把record type選到dns alias,在hostname處輸入你自已要的名稱,在target處,輸入frp反向代理服務器的地址。記住你設定的域名,這要用於frpc.ini,也是你以後要登入nas的網址。以我下面的設定為例,我以後要登入nas的網址就是mobile01.ddns.net。都輸入好後,點擊create hostname即可生成一個cname記錄。

※ 要特別注意的是,no-ip免費帳號只有提供3組轉址服務,而且期限是30天,也就是你每30天就要登入重設一次,如有天你忘了去重設,那你從外網就連不回你的nas了!! 得去更新重設後才可連得上!!
第3步 frpc.ini填寫範例

以下是使用其中一個免費反向代理服務器為例:



我們先看服務器的地址是:aliyunsz,waiwang.men,連接端口是6666,密碼是waiwang.men,以上就是我們需的資訊,有這幾個就可以讓你的NAS轉址成功~

上面的服務器地址aliyunsz,waiwang.men,也是我們在第步做domain name的cname記錄所用的。一定要一樣,不然轉到別的地方去了,怎麼也連不上你的nas。

我們可以從網上下載frpc.ini,也可以自已用筆記本填入,其中要注意的是你要轉幾個port,就要寫幾個設定。以我為例,我要連nas及odoo,所以要將nas的端口5000及odoo的端口8069填在frpc.ini中,其中我打星號的是服務器的登入名,隨便取,不要和別人一樣就好! 我要轉2個端口,所以我就有2個設定檔,其中local_ip是你的nas在家中區網的ip位址,local_port是你在家中電腦要登入nas或odoo時所用的端口,我範例以預設的端口,當然你也若以修改成別的端口,但記得你在nas中修改了端口,也得到frpc.ini修改成相對應的端口。

custom_domains要填入你在第二步做轉址時所用的cname記錄,例如mobile01.ddns.net。上面的範例圖片我是用我自已的domain name。
以上的工作準備好了,就可以開始在NAS上做佈署了!!

1、打開套件中心,搜尋docker並安裝套件。(如已安裝docker則跳過此步)


2、docker安裝好了之後,打開file station,在docker的目錄下,新建一個名為frp的子目錄,在frp的子目錄中,我們上傳剛才填寫好的frpc.ini


3、打開docker,在倉庫服務器中搜尋frp,找到oldiy/frpc的映像檔,選擇0.21版並下載 (我試過最新版或0.26版都會出現連接錯誤退出的問題,最來用了0.21版連接很穩定,大家也可以試試其他版本)


4、到docker的映像檔處,找到你剛才下載好的frp映像檔,選中並按佈署,在跳出的對話框選中使用更權限實行容器,並點進階設定,在儲存空間處點新增檔案,選中你剛上傳的frpc.ini,在挂載路徑處,手動填入:/frp/frpc.ini


在進階設定對話框中,點選網路,將下方的與Docker Host使用相同網路打鈎。按下套用,再按下一步,確定,就可以進行frpc客戶端的佈署及與服務器連線了。



5、到docker的容器處,就可以看到你剛才佈署的fprc客戶端,點擊開關就可進行連線了!
驗証:

手機上網,打開瀏覽器,輸入nas端口所用的轉址網圵,例如mobile01.ddns.net。出現NAS的登入頁面


輸入用戶名及密碼後,成功登入了nas


電腦上網,打開瀏覽器,輸入odoo端口所用的轉址網址,出現odoo的登入頁面。



輸入使用者名稱及密碼後,成功登入odoo




到此已成功的設定好反向代理連接,出門在外隨時可以連回家中的NAS做資料存取了!!
以上是小弟摸索試驗了1個多小時研究出來的!!

供入門小白參考設置!! 各位大神就當娛樂,看看就好~
Synology不是有QuickConnect嗎?
alex0705 worte:
Synology不是...(恕刪)


自已組來玩的NAS,沒QC可用!
謝謝樓主,曾經也想要研究,但研究到一半忙別的事就斷了,感謝您整理流程
文章分享
評分
評分
複製連結

今日熱門文章 網友點擊推薦!