コンテンツにスキップ

ダイナミック DNS

提供: ArchWiki
2017年9月30日 (土) 00:46時点におけるKusakata (トーク | 投稿記録)による版 (同期)

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 対応のサービスの一部を以下に挙げます。examples や protocols にはさらに多くのプロバイダが載っています。

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 を更新できる場合、cron や systemd/タイマーなどのツールを利用して更新を自動化することができます。

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 レコードを更新することができます。