玄箱 Debian で DDNS の更新設定 + wget(家サーバー)

Webサーバーを外部から見れるようにDDNSを定期的に更新するスクリプトを設定します。

今回は、家サーバーで提供されているddns-update.txtを使用します。家サーバーからddns-update.txtをダウンロードし 次の部分を修正します。

$DDNS_UPDATE     = "https://ieserver.net/cgi-bin/dip.cgi";

$ACCOUNT         = "【家サーバーのユーザー名】";
$DOMAIN          = "【家サーバーのサブドメイン名】";
$PASSWORD        = "【家サーバーのパスワード】";

変更したスクリプトをddns-update.plという名前で次の場所に保存します。

# cd /usr/local/ddns/

2007/11/20 追加: 家サーバ提供のスクリプトで、httpsを指定するとアドレス取得部分で失敗します。 これはサーバの認証局を照合し、失敗しているためのようです。 そこで、「--no-check-certificate」オプションを追加して証明書サーバを調査しないようにします。

$STATUS = `wget -q --no-check-certificate -O - '$DDNS_UPDATE?・・・

ddns-update.plを実行するには、perlとwgetが必要なためwgetをインストールします。

$ su
Password:(rootのパスワードを入力)
# aptitude update
# aptitude install wget

wgetのインストールが完了したら、スクリプトの実行設定を行います。

グローバルIPアドレスが変わった場合、DDNSを更新する必要があるためcronにて 定期的に実行するよう設定します。

次の例では、/etc/crontabに30分毎に実行するよう設定しています。以下の行を追加します。

*/30 * * * * root perl /usr/local/ddns/ddns-update.pl