印刷用表示へ切り替え 通常表示へ切り替え 更新履歴を表示 更新履歴を隠す
Linux ddclient 3.8.1 の設定

ddclient をバージョンアップしたら,「期限切れで削除するよ」というメールが届くようになってしまった。ダイナミック DNS の更新がうまくいっていないようだ。設定を見直すことにした。

■ ■ ■

はじめに

ダイナミック DNS のサービスを利用するのに,自宅の Linux サーバで ddclient を利用して IP アドレスの自動更新を行なっている。利用しているダイナミック DNS のサービスは,当初は DynDNS だったが (nlog(n): ダイナミックDNSに登録),2011年8月に Dyndns.org は Dyn.com に統合され,サービスを提供するサイトの名前が変わっている (Welcome To The New Dyn.com! - Dyn)。

さて,先日 ddclient をバージョンアップしたところ (それまでの設定は nlog(n): ddclient 3.6.3 の設定),「30日間使っていないアカウントは削除するよ」というメールが届くようになってしまった。どうやら更新がうまくいかなくなってしまったようだ。とりあえず Web でサインインして寿命を30日間延ばしておく。

ddclient は,バージョン 3.6.7-2 から設定ファイルの書式が変更になったそうだ (ddclientの導入と設定 | MINTのblog)。これで原因が判明した。

ddclient 3.8.1 の設定

動作環境

動作環境は,Vine Linux 4.2 (kernel 2.6.16),ddclient 3.8.1 である。ddclient の最新版は ddclient からダウンロードできる。ddclient は Perl スクリプトである。

デフォルトの環境

ddclient のデフォルトの環境は以下の通り。

用途 ディレクトリ / ファイル
実行ファイル /usr/sbin/ddclient
設定ファイル /etc/ddclient/ddclient.conf
起動スクリプト /etc/init.d/ddclient
PID /var/run/ddclient.pid
キャッシュファイル /var/cache/ddclient/ddclient.cache

起動スクリプトのサンプルは tarball に同梱されている。Vine Linux であれば,sample-etc_rc.d_init.d_ddclient.redhat なので,これを /etc/init.d/ddclient として保存し使用する。

ddclient.conf の設定

旧バージョンからの変更点は,server と protocol の行末の「,」や「\」を書いてはいけなくなったということである (ddclientの導入と設定 | MINTのblog)。

このサーバの設定は以下の通り。

daemon=300                              # check every 300 seconds
syslog=yes                              # log update msgs to syslog
mail=root                               # mail all msgs to root
mail-failure=root                       # mail failed update msgs to root
pid=/var/run/ddclient.pid               # record PID in file.
ssl=yes                                 # use ssl-support.  Works with
                                        # ssl-library

use=web, web=checkip.dyndns.org/, web-skip='IP Address' # found after IP Address
protocol=dyndns2                        # default protocol
login=LoginName                         # default login
password=Password                       # default password
wildcard=yes                            # add wildcard CNAME?
max-interval=20d                        # force update interval

SSL で接続したい場合は「ssl=yes」とする。この場合は Perl モジュール IO::Socket::SSL をインストールしておく必要がある (Linux Update Client: ddclient - Dyn)。

IP アドレスが変わったかどうかのチェック間隔は300秒で (daemon=300),もし変わらなければ Dyn.com には更新しに行かないようになっている。変わったかどうかは,現在の自分の IP アドレスと,保存してあるキャッシュ (/var/cache/ddclient) を比較することで判断される。

IP アドレスが変わらなくても Dyn.com には更新しに行く必要があり,これは max-interval で設定される。デフォルトは 25 日 (max-interval=25d) だが,前回,うちにはなぜか 25 日目にメールが届いてしまったので 20 日 (max-interval=20d) として明示的に設定している。これを短い期間にすると,無駄なアクセスが増えることになり,Dyn.com のサーバに負荷をかけることになるので,ほどほどにしておく。

2013年5月29日追記:
Dyn.com のサービスをフリーのまま受け続けるには一定期間ごとに Web サーバへのログインが必要になりました (nlog(n): Dyn.com への自動ログインを Zabbix で)。

Posted by n at 2012-05-29 23:51 | Edit | Comments (0) | Trackback(0)
Trackbacks

  • 「手違いで複数トラックバックを送ってしまった!」という場合でも気にしないでください (重複分はこちらで勝手に削除させていただきます)
  • タイムアウトエラーは,こちらのサーバの処理能力不足が原因です (詳細は トラックバック送信時のエラー をご覧ください)
  • トラックバックする記事には,この記事へのリンクを含めてください(詳細は 迷惑トラックバック対策 をご覧ください)
Comments
Post a comment
  • 電子メールアドレスは必須ですが,表示されません (気になる場合は「メールアドレスのような」文字列でもOKです)
  • URL を入力した場合はリンクが張られます
  • コメント欄内ではタグは使えません
  • コメント欄内に URL を記入した場合は自動的にリンクに変換されます
  • コメント欄内の改行はそのまま改行となります
  • 「Confirmation Code」に表示されている数字を入力してください (迷惑コメント対策です)


(必須, 表示されます)


(必須, 表示されません)


(任意, リンクされます)


Confirmation Code (必須)


Remember info (R)?