群暉如何加入原生CloudFlare的DDNS功能

群暉NAS新增原生CloudFlare DDNS功能的詳細指南

)系統原生DDNS功能不支援CloudFlare,但可以透過一個開源腳本輕鬆添加CloudFlare作為DDNS提供者,從而實現(DDNS),讓你的NAS在公網IP變更時自動更新網域記錄。這適用於DSM 7.x以上版本,操作簡單,但需要權限。整個過程無需第三方插件,完成後可在DSM的DDNS介面直接設定。以下是基於可靠教程的完整步驟。

前提準備

  1. CloudFlare帳戶和域名:確保你有一個已加入CloudFlare的域名,並使用CloudFlare的NS伺服器。
  2. 獲取:登入CloudFlare儀表板,進入網域概覽頁面,複製「Zone ID」(也稱為Zoom ID,通常是32位元十六進位字串,如023e105f4ecef8ad9ca31a8372d0c353)。
  3. 創建
    • 訪問 CloudFlare API Tokens頁面
    • 點選“建立令牌”,選擇“Edit zone DNS”範本。
    • 權限設定為預設(Zone: DNS > Edit),區域選擇「Include > Specific zone」(指定你的網域名稱)。
    • 產生後複製Token(注意:Token可在“Deployments”部分找回,但不在“API Keys”中)。
  4. 啟用群暉SSH
    • 在DSM控制台> 終端機和SNMP > 勾選「啟用SSH服務」(連接埠預設22)。
    • 準備SSH工具,如PuTTY、Xshell或Windows的OpenSSH。
  5. 注意事項:備份NAS配置;API Token需保密;建議為DDNS建立子域名,並在CloudFlare DNS中新增A記錄(,即橘色雲圖示為灰色),初始IP可任意填寫。

步驟1: 透過SSH安裝腳本

  1. 使用SSH工具連接NAS:
    • 主機:NAS的IP位址,連接埠:22。
    • 使用者名稱:你的DSM管理員帳戶,密碼:DSM登入密碼。
    • 登入後提示字元如admin@NASName:~$。
  2. 切換到root用戶:
    • 輸入sudo -i(或su root),再輸入管理員密碼(輸入時不顯示字元)。
    • 成功後提示符號變為root@NASName:~#。
  3. 下載並安裝腳本:
    • 執行以下命令下載腳本(這是一個開源的安裝腳本):
      curl -L https://raw.githubusercontent.com/timothymiller/synology-cloudflare-ddns/master/cloudflare.sh -o /sbin/cloudflare
    • 如果下載失敗或HTTP錯誤,請嘗試修改腳本(用vi /sbin/cloudflare編輯第6行,將proxy="true"改為proxy="false")。
    • 賦予執行權限:
      chmod +x /sbin/cloudflare
    • 執行腳本新增CloudFlare到DDNS清單:
      /sbin/cloudflare

      腳本會自動偵測並新增CloudFlare作為提供者,重新啟動DDNS服務(可能需幾分鐘生效)。

  4. 退出root和SSH:
    • 輸入exit退出root,再exit退出SSH。

警告:腳本執行時會修改系統檔案(如/etc.defaults/ddns_provider.conf),若DSM升級可能會覆蓋;建議在升級前備份/etc/ddns_provider.conf。如果腳本報錯,檢查網路或手動下載腳本內容貼上。

步驟2: 在DSM中設定DDNS

  1. 開啟DSM控制台 > > DDNS。
  2. 點擊“新增”按鈕。
  3. 填寫配置:
    • 服務提供者:選擇「CloudFlare」(腳本新增後會出現)。
    • 主機名稱:輸入你的子網域(如nas.example.com),確保在CloudFlare DNS中已新增對應A記錄(代理關閉)。
    • 使用者名稱/電子郵件:貼上Zone ID。
    • 密碼/金鑰:貼上API Token。
    • 外部位址:選擇“使用目前IP位址”或自動。
  4. 點選「測試連線」驗證(應顯示「連線成功」)。
  5. 點擊“應用”儲存並啟用。

步驟3: 驗證和測試

  1. 在CloudFlare DNS頁面檢查子網域的A記錄IP是否更新為你的公用IP(用curl ifconfig.me查目前IP)。
  2. 外部存取測試:用瀏覽器存取http://nas.example.com:5000(DSM預設連接埠),應看到DSM登入頁。
  3. IP變化測試:模擬IP變(或等業者重新啟動),幾分鐘後檢查記錄是否更新。

常見問題與注意

  • 腳本失效:若DSM版本更新導致腳本失效,重新執行安裝指令,或參考GitHub倉庫 timothymiller/synology-cloudflare-ddns 更新。
  • 代理問題:CloudFlare代理(橙雲)會隱藏真實IP,不適合DDNS;必須關閉。
  • 安全性:API Token僅限DNS編輯權限;若多域名,建立專用Token。
  • 替代方法:若不想用腳本,可用Docker執行CloudFlare DDNS容器,或第三方如DNS-O-Matic中轉,但原生腳本最簡潔。

透過以上步驟,你就能在群暉上實現原生CloudFlare DDNS,享受免費、可靠的動態解析。如果遇到特定錯誤,建議檢查DSM日誌(控制面板> 日誌中心)。

使用場景

有外網, 有網域名稱, 網域託管在cloudflare, 需要DDNS解析, 又不太想用ddns-go

使用步驟

配置群暉

  1. SSH連線到群暉, 切換到root用戶, 然後執行
wget https://mirror.czl.net/https://raw.githubusercontent.com/joshuaavalon/SynologyCloudflareDDNS/master/cloudflareddns.sh -O /sbin/cloudflareddns.sh
  1. 給腳本權限
chmod +x /sbin/cloudflareddns.sh
  1. 將cloudflare的ddns腳本加到群暉系統先貼上
    cat >> /etc.defaults/ddns_provider.conf << EOF
    

    然後貼上

    [Cloudflare] modulepath=/sbin/cloudflareddns.sh queryurl=https://www.cloudflare.com website=https://www.cloudflare.com
    

    最後貼上

    EOF
    

    就保存好了

取得Cloudflare 參數

  1. 取得區域ID。
  2. 取得可修改的API KEY

設定DDNS

  • 主機名稱是要設定的二級域名
  • 使用者名稱/電子郵件部分填區域ID
  • 密碼/密鑰填API KEY

儲存啟用即可.

 

 

評分

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *