SynologyにネイティブのCloudFlare DDNS機能を追加する方法

Synology NASにネイティブのCloudFlare DDNS機能を追加するための詳細なガイド

)システムのネイティブDDNS機能はCloudFlareをサポートしていませんが、オープンソースのスクリプトを使用して簡単にCloudFlareをDDNSプロバイダーとして追加できるため、(DDNS)を使用すると、パブリックIPが変更されたときにNASがドメイン名レコードを自動的に更新します。これはDSM 7.x以降に適用され、操作は簡単ですが、このプロセス全体はサードパーティ製のプラグインを必要とせず、DSM DDNSインターフェースで直接設定できます。以下は、信頼できるチュートリアルに基づいた完全な手順です。

前提条件

  1. CloudFlareアカウントとドメイン: CloudFlare に追加され、CloudFlare の NS サーバーを使用しているドメインがあることを確認してください。
  2. 得る: CloudFlare ダッシュボードにログインし、ドメインの概要ページに移動して、「ゾーン ID」(Zoom ID とも呼ばれ、通常は 023e105f4ecef8ad9ca31a8372d0c353 などの 32 桁の 16 進文字列) をコピーします。
  3. 作成する
    • アクセス CloudFlare APIトークンページ
    • 「トークンの作成」をクリックし、「ゾーンの編集」DNS テンプレートを選択します。
    • 権限をデフォルトに設定し (ゾーン: DNS > 編集)、「含める > 特定のゾーン」を選択します (ドメイン名を指定します)。
    • 生成後、トークンをコピーします (注: トークンは「デプロイメント」セクションで取得できますが、「API キー」では取得できません)。
  4. Synology SSHを有効にする
    • DSM コントロール パネル > ターミナルと SNMP に移動し、「SSH サービスを有効にする」をチェックします (デフォルトのポートは 22 です)。
    • Windows 用の PuTTY、Xshell、OpenSSH などの SSH ツールを準備します。
  5. 予防: NAS設定をバックアップします。APIトークンは秘密にしておく必要があります。DDNSのサブドメインを作成し、CloudFlare DNSにAレコードを追加することをお勧めします((オレンジ色のクラウドアイコンが灰色になっている状態)初期 IP アドレスは任意に入力できます。

ステップ1: SSH経由でスクリプトをインストールする

  1. SSH を使用して NAS に接続します。
    • ホスト: NAS IP アドレス、ポート: 22。
    • ユーザー名: DSM 管理者アカウント、パスワード: DSM ログイン パスワード。
    • ログイン後、プロンプトは admin@NASName:~$ のようになります。
  2. ルートユーザーに切り替えます。
    • 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 を検出し、プロバイダーとして追加し、DDNS サービスを再起動します (有効になるまでに数分かかる場合があります)。

  4. ルートを終了して SSH を実行します。
    • root を終了したい場合は exit と入力し、SSH を終了したい場合は exit と入力します。

警告するスクリプトは実行中にシステムファイル(/etc.defaults/ddns_provider.conf など)を変更します。DSM のアップグレードによって上書きされる可能性があります。アップグレード前に /etc/ddns_provider.conf をバックアップすることをお勧めします。スクリプトでエラーが発生した場合は、ネットワーク接続を確認するか、スクリプトを手動でダウンロードして貼り付けてください。

ステップ2: DSMでDDNSを設定する

  1. DSMコントロールパネルを開く > > DDNS。
  2. [追加]ボタンをクリックします。
  3. 設定を入力します:
    • サービスプロバイダー:「CloudFlare」を選択します(スクリプトが追加された後に表示されます)。
    • ホスト名: サブドメイン (例: nas.example.com) を入力し、対応する A レコードが CloudFlare DNS に追加されていることを確認します (プロキシはオフ)。
    • ユーザー名/メールアドレス: ゾーンIDを貼り付けます。
    • パスワード/キー: API トークンを貼り付けます。
    • 外部アドレス:「現在の IP アドレスを使用する」または「自動」を選択します。
  4. 「接続テスト」をクリックして確認します(「接続成功」と表示されます)。
  5. 「適用」をクリックして保存し、有効にします。

ステップ3: 検証とテスト

  1. CloudFlare DNS ページで、サブドメインの A レコード IP がパブリック IP に更新されているかどうかを確認します (現在の IP を確認するには、curl ifconfig.me を使用します)。
  2. 外部アクセステスト:ブラウザを使用して http://nas.example.com:5000(DSM のデフォルトポート)にアクセスします。DSM のログインページが表示されます。
  3. IP 変更テスト: IP 変更をシミュレートし (またはオペレーターが再起動するまで待機し)、数分後にレコードが更新されるかどうかを確認します。

よくある質問と注意事項

  • スクリプトの失敗: DSMバージョンのアップデートによりスクリプトが無効になった場合は、インストールコマンドを再実行するか、GitHubリポジトリを参照してください。 timothymiller/synology-cloudflare-ddns 更新します。
  • プロキシ問題: CloudFlare プロキシ (Orange Cloud) は実際の IP を隠すため、DDNS には適していません。オフにする必要があります。
  • 安全: APIトークンはDNS編集権限のみに制限されています。複数のドメイン名をお持ちの場合は、専用のトークンを作成してください。
  • 代替方法スクリプトを使用したくない場合は、Docker を使用して CloudFlare DDNS コンテナを実行したり、DNS-O-Matic などのサードパーティ プロバイダーを使用したりできますが、ネイティブ スクリプトが最も簡単です。

上記の手順に従うことで、SynologyにネイティブのCloudFlare DDNSを実装し、無料で信頼性の高いダイナミックDNSを利用できます。特定のエラーが発生した場合は、DSMログ(コントロールパネル > ログセンター)を確認することをお勧めします。

使用シナリオ

外部ネットワークとドメイン名があり、CloudFlareでホストされています。DDNS解決が必要なのですが、ddns-goは使いたくありません。

使い方

Synologyの設定

  1. SynologyにSSHで接続し、ルートユーザーに切り替えて実行します。
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スクリプトをSynologyシステムに追加して貼り付けます。
     >> /etc.defaults/ddns_provider.conf << 終了
    

    次に貼り付けます

    [Cloudflare] モジュールパス=/sbin/cloudflareddns.sh クエリURL=https://www.cloudflare.com ウェブサイト=https://www.cloudflare.com
    

    最後のペースト

    終了
    

    保存するだけ

Cloudflareパラメータを取得する

  1. リージョンIDを取得します。
  2. 編集可能APIキー

DDNSの設定

  • ホスト名は設定するセカンダリドメイン名です
  • ユーザー名/メールセクション地域ID
  • パスワード/キー入力APIキー

保存して有効にします。

 

 

スコア

手紙への返信

メールアドレスが変更されることはありません。 支払い欄に必須の項目は必須です