GhostlyDDnsでCloudflareダイナミックDNSを自動化する
プライバシー重視の.NET 10 CLIツール。動的IPとCloudflare DNSを同期。テレメトリなし、YAML設定、クロスプラットフォーム対応。
GhostlyDDnsはプライバシー重視の.NET 8コマンドラインツールで、既存のCloudflare AおよびAAAAレコードをエッジネットワークのパブリックIPと同期します。Ghostly Toolsの一部で、開発者やクリエイター、自宅サーバー運用者に信頼できるCloudflareダイナミックDNS自動化を提供します。
ランタイムはWANアドレスを監視し、複数のエンドポイントでIPv4・IPv6の変化を検出。更新が必要な場合のみCloudflare APIを呼び出します。Serilogによる診断、指数的バックオフ、安定した終了コードで無人運用の可視性を確保します。
GhostlyIncのGhostly Toolsが提供するGhostlyDDnsは、認証情報を外部SaaSに晒さずにCloudflareの正確な同期を必要とする自宅サーバー向けの軽量自動化レイヤーです。

目次
エディションとライセンス
お使いのOSに合ったGhostlyDDnsビルドを選択してください。Gumroadのライセンスはすべての1.xリリースの生涯アップデートを含み、同じYAML設定が全エディションで利用可能です。
すべてのライセンスにGhostlyDDns 1.xリリースの生涯アップデートが含まれます。
主な特徴
プライバシー重視の運用
テレメトリやアカウント連携、外部制御なしでGhostlyDDnsを自社インフラ上で完全に運用可能です。
変化検知による更新
複数エンドポイントのIP検出、メモリキャッシュ、適切なバックオフで不要なCloudflare API呼び出しを削減します。
クロスプラットフォーム対応
Windows、Linux、ARM64向けの単一ファイル.NET 8バイナリを提供し、同じ設定ファイルをどこでも使えます。
利用例
WANアドレス変更時の手動DNS更新を省き、自宅サーバー運用者や代理店、リモートワーカーの稼働維持を支援します。
- ISPのリース更新後もルーターを遠隔管理に晒さずにホームラボVPNゲートウェイを常時接続可能にします。
- 動的なオフィス接続からアプリを運用しつつ、Cloudflare上でホワイトラベルのクライアントポータルを維持します。
- モバイルフェイルオーバー時もストリーミング受信ドメインを最新に保ち、放送機材やクリエイティブスタジオを守ります。
- 複数顧客ゾーンを単一の軽量自動化エージェントで管理するマネージドサービスプロバイダーを支援します。
CLIコマンド
GhostlyDDns CLIは設定作成、ドライラン、単発実行、継続監視のコマンドを提供。複数のフラグでヘルプも利用可能です。
ghostly-ddns init-config [--path|--p|-p <path>]
ghostly-ddns dry --config|--c|-c <path>
ghostly-ddns once --config|--c|-c <path>
ghostly-ddns run --config|--c|-c <path>
ghostly-ddns --help | --h | -h
ghostly-ddns --version | --v | -v設定スキーマ
すべてのランタイム設定は単一のYAMLファイルに集約。Cloudflare APIトークン、ポーリング間隔、IP検出設定、ログ保持期間、管理レコードを指定。起動時にスキーマ検証し、欠落時は警告を出します。
cloudflare:
api_token: CF_API_TOKEN
update:
interval_seconds: 120
ip_detection:
detect_ipv4: true
detect_ipv6: false
v4_endpoints:
- https://api.ipify.org
- https://ipv4.icanhazip.com
v6_endpoints:
- https://api6.ipify.org
logging:
retention_days: 30
records:
- name: home.example.com
type: A
proxied: true
ttl: autoAPIトークンの存在、最低1レコードの定義、TTLはautoまたは60秒以上、各有効検出器に最低1エンドポイントがあることを検証します。
ログと診断
Serilogで構造化されたコンソール出力と、logsディレクトリに保存されるローテーションファイルログを生成。保持期間はデフォルト30日分でYAML設定で変更可能です。
ログには検出IP、変更なしでスキップした更新、Cloudflareステータスコード、指数バックオフによる再試行が記録され、無人運用に適した状態を保ちます。
導入手順書
LinuxのsystemdタイマーやWindowsタスクスケジューラのテンプレートを同梱し、数分で自動化を標準化できます。
Linux systemdサービス
バイナリを/usr/local/binに配置し、設定を/etc/GhostlyDDnsに置いて専用サービスアカウントで実行します。
[Unit]
Description=GhostlyDDns updater
After=network-online.target
[Service]
Type=simple
ExecStart=/usr/local/bin/ghostly-ddns run --config /etc/GhostlyDDns/config.yaml
Restart=on-failure
RestartSec=15
[Install]
WantedBy=multi-user.targetLinux systemdタイマー
サービスとタイマーを連携し定期実行をスケジュール。Cloudflare接続障害時は指数バックオフで再試行します。
[Unit]
Description=GhostlyDDns schedule
[Timer]
OnUnitActiveSec=120
AccuracySec=1s
Unit=ghostly-ddns.service
[Install]
WantedBy=timers.targetWindowsタスクスケジューラ
公式XMLテンプレートをインポートするか、最高権限で数分ごとにrunコマンドを実行し失敗時に再起動するタスクを作成します。
schtasks /Create ^
/SC MINUTE /MO 5 ^
/TN "GhostlyDDns" ^
/TR "C:\\GhostlyDDns\\ghostly-ddns.exe run --config C:\\GhostlyDDns\\config.yaml" ^
/RL HIGHEST ^
/F- プログラムパス C:\GhostlyDDns\ghostly-ddns.exe
- 引数 run --config C:\GhostlyDDns\config.yaml
- ログは実行ファイル横のlogsディレクトリに出力されます
よくある質問
GhostlyDDnsの機能、Cloudflare要件、運用方法について、導入前に素早く確認できます。
GhostlyDDnsサポート情報
次のステップ
お好みのGhostlyDDnsエディションを選び、Gumroadからバイナリをダウンロード。GhostlyIncの他ツールと共に展開してください。
関連リソース
プライバシー重視のインフラとDNS管理を強化するガイド集です