Google DomainsのDDNSを、ddclientで更新する方法・設定です。
環境(VirtualBox仮想サーバー)
- Ubuntu Server 18.04
- CPU 1コア
- RAM 1024MB
- NIC ブリッジ接続
ddclientのインストール
まず普通にUbuntu Serverをインストールして使えるようにしておく。
ddclientをインストール
$ sudo apt update
$ sudo apt upgrade -y
$ sudo apt auutoremove
$ sudo apt install -y ddclient
インストール中に設定ウィザードが表示される。このウィザードではGoogle Domains用の設定はできなので適当に飛ばしていく。
update protocolの選択画面はEscキーでスキップできた
Google Domainsの設定
Google Domainsのダッシュボードで設定したいドメインを選び、DNS設定を開く
合成レコードでダイナミックDNSを選択
追加したいサブドメインを入力して追加する。もしドメインごとDDNS化したければ「@」を入力すると良いらしい。
追加したサブドメインを展開すると、DDNS設定用のユーザー名とパスワードが表示されるので控えておく。
ddclientの設定
ddclient.confをお好みのテキストエディターで編集する。ここではnanoを使う。
$ sudo nano /etc/ddclient.conf
Google Domainsのサポートページを参考に、少し追加で書き加える
ddclient.conf
daemon=60
ssl=yes
use=web
protocol=googledomains
login=generated_username
password=generated_password
your_subdomain.your_domain.tld
- login, passwordには先ほどGoogle Domainsで取得したユーザー名とパスワードを設定する
- daemon=60
- 60秒間隔でIPの変化をチェックし、必要に応じて更新する
- use=web
- ルーターを使用している場合に、プライベートIPではなくグローバルIPを検出してサーバーに通知するための設定
また2つ以上のサブドメインを同時に更新したい場合は、つなげて書き足せばOK
ddclient.conf
daemon=60
ssl=yes
use=web
protocol=googledomains
login=generated_username_01
password=generated_password_01
your_subdomain_01.your_domain.tld
ssl=yes
use=web
protocol=googledomains
login=generated_username_02
password=generated_password_02
your_subdomain_02.your_domain.tld
次にデーモンとして動作させるための設定を行う
※デーモン:Windowsでいうサービスのようなもの。OS起動時に自動で立ち上がり、バックグラウンドで動作し続ける。
$ sudo nano /etc/default/ddclient
daemon_intervalをddclient.confで設定した秒数に、run_ipupをfalseに、run_daemonをtrueに変更する
/etc/default/ddclient
# Configuration for ddclient scripts
# generated from debconf on Thu Jan 16 05:14:29 UTC 2020
#
# /etc/default/ddclient
# Set to "true" if ddclient should be run every time DHCP client ('dhclient'
# from package isc-dhcp-client) updates the systems IP address.
run_dhclient="false"
# Set to "true" if ddclient should be run every time a new ppp connection is
# established. This might be useful, if you are using dial-on-demand.
run_ipup="false"
# Set to "true" if ddclient should run in daemon mode
# If this is changed to true, run_ipup and run_dhclient must be set to false.
run_daemon="true"
# Set the time interval between the updates of the dynamic DNS name in seconds.
# This option only takes effect if the ddclient runs in daemon mode.
daemon_interval="60"
デーモンとして動作させる
デーモンを起動
$ sudo service ddclient restart
1回だけ手動で実行する場合はこちら
$ sudo ddclient -daemon=0 -verbose^
コメント
コメントを投稿