DynamicDNSを自動更新(ddclient)


Last Update: 2005/01/04
26509 th Visitor

DynamicDNSの自動更新ツール

DynamicDNSを自動更新(ddup) の記事でDynamicDNS(dyndys.org)の自動更新にddupを使う説明をしました。
しかし、より使えるddclientというアプリケーションがあることがわかり、今回はそれを使って自動更新をしたいと思います。

ddclientの特徴は、

などです。

ddclientのインストール、設定

ddclientはいつも通りportsまたはportinstallでインストールします。

> cd /usr/ports/net/ddcilent
> su
# make install clean

または、

> su
# portinstall ddcilent

インストールすると最後にメッセージが出ます。

***********************************************************
Copy

/usr/local/etc/ddclient.conf.sample
to
/usr/local/etc/ddclient.conf

and edit it to fit your needs.

If you would like to run ddclient as a daemon consider
copying

/usr/local/etc/rc.d/ddclient.sh.sample
to
/usr/local/etc/rc.d/ddclient.sh

***********************************************************

ということですので、まずはddclinet.confを設定しましょう。
最初に上記のメッセージのように、サンプルファイルをコピーして編集します。

# cp /usr/local/etc/ddclient.conf.sample /usr/local/etc/ddclient.conf
# chmod 644 /usr/local/etc/ddclient.conf
# vi /usr/local/etc/ddclient.conf

最初にIPアドレスを確認する間隔を設定します。

daemon=300

デフォルトでは300秒毎に確認を行うようになっていますが、このままで良いと思います。
次に/var/log/messagesにログを残すかどうかを設定します。

syslog=yes

デフォルトでは残す設定となっていますので、このままで良いと思います。
残したくない場合は「no」としてください。
実行結果、失敗結果をroot宛にメールで送るときは以下を設定します。

mail=root
mail-failure=root

デフォルトで有効になっていますので、このままで良いと思います。

自分のPCに割り振られたグローバルIPをDynamicDNSに割り当てたい場合は、PCのネットワークインターフェースを指定します。
例えばIntel 82562EMはfxp0ですので、

use=if, if=fxp0

のコメントアウトを外し、ifの後にネットワークアダプタを指定します。
ネットワークアダプタがよく分からない場合は、ifconfigで調べると良いでしょう。

また、グローバルIPがルーターに割り振られている場合は、アクセスしたIPアドレス返してくれるサイト(check.dyndns.org)を利用しますので、

use=web

のコメントアウトを外します。

次にdyndnsのユーザー名、パスワードを指定します。また必要ならばMailExchanger(MX)やバックアップMX、ワイルドカードも指定します。

login=ユーザー名
password=パスワード
mx=MailExchanger
backupmx=バックアップMX
wildcard=yes (必要なければno)

また、ddclientで更新したいDynamicDNSのホスト名も指定します。

## dyndns.org dynamic addresses
##
## (supports variables: wildcard,mx,backupmx)
##
server=members.dyndns.org, \(デフォルトで良い)
protocol=dyndns2 \(デフォルトで良い)
your-dynamic-host.dyndns.org(自分で作成したdyndnsのホスト)

以上で設定は終わりです。

DynamicDNSをddclientで更新する

設定が終わったらddclientが実際に動くか確認しましょう。
まずは手動でddclientを起動します。

# ddclient -daemon=0 -verbose -noquiet

としてSUCCESSと出たら成功です。
次に本当に自分のPCに設定されているか確認しましょう。

# nslookup your-dynamic-host.dyndns.org

nslookupで参照したIPアドレスと、ifconfigで出てくるIPアドレスが一致していればOKです。

動作確認できたら、ddclient.shがOS起動時に実行されるようにします。

# mv /usr/local/etc/rc.d/ddclient.sh.sample /usr/local/etc/rc.d/ddclient.sh

再起動すればddclinetが動いているはずです。

# ps -ax | grep ddclient

としてddclientが表示されればOKです。
ddclientの運用後にログをチェックしたい場合は、

# cat /var/log/messages | grep ddclient | less

のようにして確認すると良いでしょう。


設定


もどるにゅ

トップにもどるにゅ