世界を動かす技術を、日本語で。

DynIP – RFC 2136、IPv6、DNSSEC、そしてBYODに対応したダイナミックDNS

2026年5月26日原文(dynip.dev)

概要

  • ゾーン作成からデプロイまでの クイックスタートガイド
  • IPアドレスSSL証明書 などの管理方法
  • API自動化 によるゾーン登録や管理
  • APIトークン の発行と管理
  • セキュリティや運用上の 注意事項

クイックスタートガイド

  • ゾーン作成 ・デバイス名を入力 ・ベースドメインを選択 ・「Create Zone」ボタンをクリック

  • 設定取得 ・新しく作成したドメインの横にある「Snippets」ボタンをクリック

  • デプロイ ・デバイスタイプを選択 ・生成された設定ブロックを ルーターのCLI へコピー

  • IPアドレス自動検出 ・IPv4/IPv6(デュアルスタック)は接続状況により 自動検出・自動更新

ドメイン & ツール管理

  • 現在のIPアドレスTSIGシークレットDNSSECSSL証明書 の表示
  • ゾーン名、ロック状態、最新同期時刻、証明書有効期限の確認
  • ドメイン未登録時は「Create one above」で新規作成

クイック同期

  • 「Quick Sync」機能で、選択したゾーンを 現在の外部IPアドレス に即時更新
  • 検出されたネットワークIPを表示(自動検出)

API自動化

  • APIを利用したゾーン登録 ・現在のセッショントークンを使い、/registerエンドポイントへPOSTリクエスト送信 ・例:
    curl -X POST "{{ backendUrl }}/register?subdomain=my-new-router&base_domain={{ baseDomains[0] }}" \
      -H "Authorization: Bearer {{ token }}"
    
    ・セッショントークンはログアウトで失効 ・長期運用には APIトークン 利用推奨

APIトークン管理(Pro+機能)

  • APIトークン はProプランで利用可能

  • 長期間有効なトークンで自動化(監視スクリプト、CIパイプライン、MSP連携)

  • トークンは 読み取り専用 または フルアクセス でスコープ設定可能

  • トークンの発行・失効管理

  • 発行時のみトークン表示。必ず パスワードマネージャーやシークレット管理ツール に保存

    ・トークン名 ・スコープ(読み取り専用/フルアクセス) ・最終使用日時 ・有効期限 ・アクション(失効など)

  • 注意事項 ・トークンは再表示不可。安全な場所へ保存必須(例: 1Password, Bitwarden, CIのシークレット管理)


必要に応じて、各セクションの手順や注意点を確認しながら 効率的なゾーン管理・自動化運用 を実現。

Hackerたちの意見

ダニエルです。スウェーデンでネットワークエンジニアをやってます。DynIPを作った理由は、試したDDNSサービスがどれも2010年代のネットワーク向けに設計されていて、独自のHTTPのみの更新プロトコル、IPv6のサポートが乏しい、DNSSECがない、現代のデバイスに対するサポートが少ないからです。内容は以下の通りです:

  • RFC 2136 / TSIGの更新を第一級のパスとしてサポート。FortiGateのgenericDDNSやMikroTikの/tool dns-updateがネイティブで動作します — カスタムクライアントは不要です。HTTP APIも他のすべてに利用可能です。
  • IPv6のエンドツーエンド。権威あるネームサーバーはIPv6経由でアクセス可能(親の.devゾーンにAAAAグルーが公開されています)、顧客ゾーンはAとAAAAを公開し、プラットフォームはIPv6専用クライアントでも動作します。
  • 選択されたゾーンでDNSSECが利用可能。トグル一つで切り替えられます。
  • サブドメイン委任を通じて独自ドメインを持ち込むことができます。subdomain.yourcompany.comを私たちのネームサーバーにポイントして、通常通り管理してください。
  • 隠れたプライマリアーキテクチャ:スウェーデンとスイスに地理的に分散した二つのセカンダリがTSIGをローカルで検証し、公開トラフィックを受け取らないプライマリに更新を転送します。
  • プライベートAPNに優しい:RFC 1918およびCGNATアドレスをレコードに受け入れます。これにより、プライベートAPN上のセルラーフリートが内部IPを指す安定したホスト名のためにパブリックDNSを利用できます。フリートオペレーションガイドに記載されています。
  • Dockerコンテナ(ghcr.io/33k-org/dynip-updater)を小さく用意していて、docker-compose / Kubernetes / Coolify / Dokployのセットアップに使えます。 背景:25年間のマネージドネットワーキング経験。DDNSは壊れたり、トリックが必要な部分でした。壊れないものが欲しかった。 スタック:PowerDNS 4.8の権威サーバー、FastAPIバックエンド、Postgres、トランザクションメール用のPostfix、外部サーフェスとAPIのトンネルとしてのCloudflare。dynip.devで稼働中。請求にはPaddleを使用。無料プランもあります。アーキテクチャやTSIG同期メカニズム、ゾーンごとのDNSSEC処理、隠れたプライマリアプローチ、その他何でも掘り下げるのは大歓迎です。

RFC 1918およびCGNATアドレスをレコードに受け入れます それって、他人のプライベートサーバー(XSS攻撃を仕掛けたいような)を自分のドメインに入れられるから、セキュリティの問題にならない?なんかそれがセキュリティ的に良くないっていう記憶があるんだけど。

スコール!すごく楽になる感じがする、試してみるのが楽しみ。

共有してくれてありがとう!PowerDNSはどうやって設定したの?シングルインスタンス?それとも複数インスタンス?一つのDBをみんなで共有するのか、それとも複数の権威サーバーで一つの隠れたプライマリを持つのか?

地理的に分散したセカンダリはどうやって動いてるの?同期はどうなってるの?それと、Anycastはあるの?

よくやったね。もうちょっとファイブアイズのトラッキングを減らせるといいな。例えば、unpkgやtailwindcss.comのようなサードパーティのドメインからのインクルードを削除するとか、もちろんCloudflareも排除したいね。

どんなに頑張っても、ホームページに雑な見せ方をすると、印象が悪くなるよね。「専用クライアントなし。ベンダーロックインなし。」っていうのが目に入ったけど、これってAIのパターンなのかな?このサービス、数週間後も続いてるのか気になっちゃう。

参考までに:サイトはFirefox Focus(Android)ではトラッキング保護をオフにしないと動かないよ(デフォルトでオンになってる)。確認用メールのリンクをクリックしたとき、ちょっと混乱した。確認もステータスも何もなかったから。

最初の印象は「また一般的な、雰囲気だけのサービスのクローンかよ」って感じだった。でも、実際には中身がすごく良くて、ネットワーキングに対する深い理解がある人から来てるのが明らかだね。いい仕事してる、頑張って!

ボーナスポイント!RFC 2136、external-dnsと簡単に動作します。何年も前から、オンプレミスでk8s+external-dnsを使って、パブリックホスト上の自己ホストしたミニマルなBINDサーバーで運用しています。

ありがとう!external-dns + RFC 2136は素晴らしい選択ですね。正直、これについてのガイドを書くべきだと思います。フリートオペレーション用のガイドはすでにあるし、k8sパターンは自然な拡張です。

無料プランには長期トークンなしって書いてあるけど、どうやってdyndnsを使うの?

Hacker Newsで議論の続きを見る