Ubuntu Server 19.10に DDNSのno-ip2クライアントを導入し、再起動時に自動起動可能にした。
自宅環境でWEBサーバ運用を行う場合は、昨今は常時接続とは言え、プロバイダのメンテナンス等でIPアドレスが変更されるケースもある。
また停電やブレーカが落ちた場合など、意図せずブロードバンドルータが再起動するケースがある。
そのため、IPアドレスが変更になってもDDNSサービスを継続利用可能なようにクライアントアプリを稼働させておくと良い。
以下は筆者の環境で利用するno-ipサービスの手順であり、備忘として残しておく。尚、今回は全てrootユーザで作業を行っている。
必要なソフトウェアの入手
# cd /usr/local/src/
# wget http://www.no-ip.com/client/linux/noip-duc-linux.tar.gz
# tar xf noip-duc-linux.tar.gz
# cd noip-2.1.9-1/
# make install
この後、no-ip.comのユーザアカウント情報(メールアドレス)とログインパスワードを聞かれるのでそれに応答すると終了する。
以下コマンドで起動可能。
# /usr/local/bin/noip2
以下の自動起動を行う場合は、上記プロセスをkillしておく必要がある。
プロセスIDを検索。
# ps ax|grep noip2
該当プロセスをkill(終了)する。
kill -9 xxxxx
再起動後も自動起動できるようにする
しかし、このままの状態ではOS再起動時に自動起動せず、手動で起動する必要があるため、自動起動するように設定を行う。
以下ファイルを作成し、編集する。
# vi /lib/systemd/system/no-ip2.service
設定内容は以下
[Unit]
Description = noip2 daemon
[Service]
ExecStart = /usr/local/bin/noip2
Restart = always
Type = forking
[Install]
WantedBy = multi-user.target
設定ファイル作成後、以下コマンドでdisable状態であるが確認可能である。
# systemctl list-unit-files --type=service|grep no-ip
no-ip2.service disabled
サービスの起動
以下で自動起動となるよう設定する。disableをenableへ
# systemctl enable no-ip2
上記実施後、以下コマンドでenableであることを確認できる。
# systemctl list-unit-files --type=service|grep no-ip
no-ip2.service enabled
以下でサービスを起動する。
# systemctl start no-ip2
正常稼働したか、ステータスを確認してみる。
# systemctl status no-ip2
正常に起動すれば以下の表示になる。
● no-ip2.service - No-IP2 Daemon Client
Loaded: loaded (/lib/systemd/system/no-ip2.service; enabled; vendor preset: enabled)
Active: active (running) since Fri 2020-03-20 16:02:54 JST; 1s ago
Process: 2718 ExecStart=/usr/local/bin/noip2 (code=exited, status=0/SUCCESS)
Main PID: 2722 (noip2)
Tasks: 1 (limit: 4915)
Memory: 580.0K
CGroup: /system.slice/no-ip2.service
└─2722 /usr/local/bin/noip2
なんと、以前も似たようなエントリしていたわい。
まぁ今回は設定ファイルのパスが異なるけどもね。