ダイナミック DNS

提供: ArchWiki
移動先: 案内検索

Dynamic DNS あるいは DDNS はインターネット上の絶えず変化する IP アドレスを指し示す DNS をリアルタイムに更新する手法です。ダイナミック DNS は固定 IP が存在しないリソースに恒久的なドメイン名を割り当てるのに使われます。DDNS を使用するには、DDNS プロバイダで登録を行なって、さらに、IP アドレスが変わったときにプロバイダに新しい IP を通知するように自動更新ツールを設定する必要があります。

更新ツール

ルーター

DDNS を必要とするデバイスがルーターを通している場合、まずルーターだけで DDNS サービスを更新することができないか確認してください。使用できるサービスは限られますが、ルーターを使うことにはメリットが複数存在します: セットアップが簡単であり、メンテナンスの必要がほとんどありません。そしてダウンタイムがなくなります (ルーターが落ちた場合、インターネットに接続自体ができなくなります)。

ddclient

ddclient は多数の DDNS サービスに対応しているため、ルーターが使えない場合は DDNS を更新するための推奨ツールとなります。ddclient は systemd にも対応しています。

インストールした後、デフォルトの設定ファイル /etc/ddclient/ddclient.conf を編集して使用する DDNS プロバイダをセットアップしてください (ファイルには多数の例が記載されています)。設定したら ddclient.service起動有効化してください。

ddclient 対応のサービスの一部を以下に挙げます。examplesprotocols にはさらに多くのプロバイダが載っています。

ddclient に対応しているサービス
サービス名 費用 利用可能なレコード ホストネーム数 設定のノート 他のツール
ChangeIP 無料あるいは有料 A, AAAA, CNAME, MX, サブドメイン 7つまで無料
DNSdynamic 無料
Duck DNS 無料 duckdnsAUR
Dynu 無料あるいは有料 4つまで無料、有料で500まで サンプル
FreeDNS 無料あるいは有料 CNAME, A, AAAA, MX, NS, TXT, LOC, RP, HINFO, SRV 5つまで無料 afraid-dyndns-uvAUR, petrifiedAUR
No-IP 無料あるいは有料 3つまで無料、有料で25以上 noip プロトコル、dynupdate.no-ip.com サーバーを使用 noipAUR
Now-DNS 無料 A, AAAA 無制限 dyndns2 プロトコルを使用、サーバー: now-dns.com/update
nsupdate.info 無料かつオープンソース A, AAAA dyndns2 プロトコルを使用 inadyn-forkAUR
ノート: no-ip の無料ユーザーは30日ごとにドメインを手動で確認する必要があります。有料ユーザーはドメイン確認が不要です。詳しくは Why is My Hostname Pending Deletion? を参照。

外部ウェブサイトから IP アドレスを確認

ddclient が IP アドレスを検出できない場合、whatismyip.org などの外部ウェブサイトから IP アドレスを取得するように ddclient を設定できます。設定ファイルに以下のように追加してください:

/etc/ddclient/ddclient.conf
# use whatismyip.org to determine IP address
use=web
web=whatismyip.org

ネットワークが立ち上がった後に ddclient を起動

ddclient で IP を更新できない場合、おそらくネットワークが立ち上がる前に ddclient のプロセスが起動しているのが原因です。修正するには、ユニットファイルを編集して network-online.target に依存するようにしてください:

# systemctl edit ddclient.service
[Unit]
After=network-online.target
Wants=network-online.target

network-online.target に追加の設定が必要かもしれません。[1] を参照してください。

他のツール

複数のプロバイダで使用することができる他の DDNS 更新ツールとして inadyn-mtAUR (対応しているプロバイダ) と ndyndnsAUR (DynDNS と Namecheap が対応) が存在します。

他のプロバイダ

以下の DDNS プロバイダは ddclient に対応していないため、特殊なツールを使ったりカスタムスクリプトで IP を更新する必要があります。コマンドラインで IP を更新できる場合、cronsystemd/タイマーなどのツールを利用して更新を自動化することができます。

duiadns

Duiadns.org は無料のサービスです。duiadnsAUR[リンク切れ: アーカイブ: aur-mirror] で自動化が可能。

FreeDns.io

FreeDns.io は無料で A, AAAA, DNS レコードを提供します。CNAME, TXT, MX レコードはプレミアムメンバーになる必要があります。HTTP API を利用して IP を更新することができます (1時間あたり60回までの制限あり)。複数のサンプルスクリプト が用意されています。

Now-DNS

Now-DNS.com は簡単にセットアップができる無料サービスです。

System-NS

System-NS はコマンドラインによる更新ができる無料サービスです。公式のドキュメント を参照してください。

Loopia.se

ネームサーバーとして loopia.se を使う場合、公式ドキュメント に書かれているように curl で DNS レコードを更新することができます。