無需公網IP 使用 Cloudflare Tunnel 內網穿透

事到如今,已經很少有運營商願意免費給你公網 IP 了。 CGNAT 早已是常態,當然從好的一方面來看,至少它隱藏了你的真實 IP,一定程度上讓你家裡的路由器/NAS 免受直接的黑客攻擊。

不過如果我想要將 NAS 上的一些服務公開方便出門的時候使用,就成了一個頭疼的問題。最簡單的方法可能就是花錢從運營商那裡買一個靜態 IP,但有的運營商也只提供動態公網IP,還得用 DDNS。用 Cloudflare 隧道可能是另一個還算不錯的選擇。

注意,根據我自己的經驗和網上觀察,國內使用的速度不是很理想,但也不至於到不能用的程度,可能具體還得根據你當地網絡狀態來看。得試試才知道

簡單介紹一下

網上對 Cloudflare 的隧道介紹已經很多了,簡單來說就是它會在你內網跑一個 cloudflared 進程/服務,這個客戶端會和 Cloudflare 服務器通信綁定,然後你在 Cloudflare 設置好解析後,一切訪問到這個域名的請求,就會自動通過這個客戶端轉發到你家裡的內網……就是這麼簡單!

一些配置要點

這裡就不再贅述具體配置,網上能找到的教程很多,只是有些略有過時。

  1. 雲耀斑 配置的入口,tunnel 不再顯示在 access 分類,而是旁邊的 network 分類裡;
  2. cloudflared 的配置現在可以一鍵生成,不論是各個平台直接使用還是 docker 啟動,無需編輯複雜的文件了
  3. 配置解析的時候先選 https,在高級設置中勾選忽略 tls 證書驗證,然後再切換到 http,(我相信沒人在內網使用https公共證書吧?)
  4. 通信協議默認是 quic,但據說國內的話切換成 http2 會大大降低丟包率,不妨一試。

螢火蟲III + pico 踩坑

我主要是用來運行我自己日常用的記賬系統的,這裡遇到一個奇怪的bug,pico這個客戶端無論如何也無法通過 token 去 firefly iii 進行驗證,明明單獨使用這兩個都已經可以通過公網訪問。最後我取消了 firefly iii 的域名解析,讓 pico 通過本地 192.168.xxx 的地址成功驗證了。不過奇怪的時直接使用 docker 內網的地址就不行,儘管我已經在 docker compose 中設置了它們使用同一個內網。

本文由 落格博客 原創撰寫:落格博客 » 無需公網IP 使用 Cloudflare Tunnel 內網穿透

轉載請保留出處和原文鏈接:https://www.logcg.com/archives/3917.html

關於作者

R0uter

如非聲明,本人所著文章均為原創手打,轉載請註明本頁面鏈接和我的名字。