Mac OS X Leopardではcronを使って定期的にIPアドレスに変化がないかをチェックしていましたが、新しいOS X 10.8サーバーでは、launchdをつかって定期的にチェックするようにします。
IPアドレスをチェックし、変更があった場合にDDNSの登録を変更するスクリプトは前回のものと同じです。
ただし、以前はhttpで接続していましたが、今回はhttpsで接続するようにしました。
IPアドレスをチェックしてDDNSの登録をアップデートするスクリプトは、ddns-update.plという名前で/usr/local/binにおいています。
置き場に悩みましたが、/Library/LaunchDaemons に jp.dip.triode.ddns.plistを置くことにします。
plistのなかみは…
[xml]
[/xml]
[xml]
[/xml]
で、Working Directoryをrootのホーム/var/rootに変更しています。
/usr/local/bin/ddns-update.pl が作成するファイルは/var/rootにできます。
[xml]
[/xml]
コマンドを実行する間隔を300秒に設定しました。
StartCalenderInterval
で、cronと同じようにスケジューリングすることも可能ですが、今回のケースは単純に時間を待つだけで問題ありません。
launchdへの登録はサーバーを再起動してもよいですが、
[sh]
# launchctl load /Library/LaunchDaemons/jp.dip.triode.ddns.plist
# launchctl start jp.dip.triode.ddns
[/sh]
として開始することができます。
[sh]
# launchctl list | grep jp.dip.triode
– 0 jp.dip.triode.ddns
[/sh]
でロードされているかを確認できます。