*こちらだけなのかも知れないのだが、ddns更新してくれない....
▲ 3/3 13:27 にchaperone の更新の実行に失敗しました Error: サーバーに接続できませんでした
と表記される....
windows版DiCEでも同様にエラーが返ってくる有様。唯一更新可能だったのが「お名前.com ダイナミック DNS クライアント」のみ...困った
「お名前.com ダイナミック DNS クライアント」はwindows版のみ......
2013.03.14でも同様に繋がらない....
困った....
現在仕方ないので、仮想化したwindows7にてお名前.com謹製ダイナミック DNS クライアントを動かしている。
.NET Framework互換のMonoを使えば、Linuxで賄えるかな?取敢えずは仮想マシンでDDNS更新中
自宅鯖を運用するうえで、今割り当てられているグローバルIPと購入したホスト/ドメイン名をDNSに登録するのは必須。
DiCEは、その登録/更新を自動的に行ってくれるデーモン。
ここでは自分に割り当てられたIPアドレスをどうやって取得するかを記述。
外部サイトで自分のIPを知る事は簡単だが、外に行かなくても分かる方法がほしかった。
自宅のルータはNEC Aterm。「現在の状態」が示されているページがあり、そこに割り当てられたグローバルIPが記述されている。
この部分を取得してDiCE経由でDDNSへ反映させたいと思った。
てっとり早くweb.chaperone.jpにphpスクリプトを配置させて、そこからNEC Aterm装置に問い合わせ、結果を表示させる方式を採用。
NEC Atermでは
と画面に表示されるので、
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
|
これでIPアドレスが取得できる。
次に、DiCEを準備するのだが、このDiCEを経由してのDDNSデータの更新にはopenssl-0.9.8eが必要なようで
(一部のDDNSサービスに対してのみ?「Error: サーバーに接続できませんでした」と表示される)
yum install openssl098e.i686
としてopenssl-0.9.8eをインストールします。加えこのDiCEは、/lib配下にこのライブラリを見るようなので
ln -s /usr/lib/libcrypto.so.0.9.8e /lib/libcrypto.so
ln -s /usr/lib/libssl.so.0.9.8e /lib/libssl.so
と調整を加えます。
この後、DiCEを展開して、設定を行った。
cd /opt
tar xzf diced01914.tar.gz
cd ./DiCE
./diced
(中略)
:setup (DiCEの環境設定)
IPアドレスの検出方法を指定してください --> 「(2) 外部のスクリプトから検出」を選択
スクリプトのURLを入力してください --> 「http://xxxx.xxx.xxx.xxx/GlobalIP/index.php」と指定
プライベートIPアドレスも検出対象ですか? --> 「n」
IPアドレスの検出をテストしますか? --> 「y IPアドレス」 (IPアドレスが正しく検出されたかを確認)
IPアドレスの検出をテストしますか? --> 「n」
IPアドレスをチェックする間隔を指定してください(分) --> 「5」 (5分ごとに先のスクリプトURLへアクセスします)
前回の更新から一定時間DNS更新処理を行わないように保護時間 --> 「60」
設定を保存しますか? (Y/N) --> 「y」
これでDiCEの環境設定が完了して、次にドメイン名と結びつけてDDNSへ登録します。
:add (イベントの追加)
DynamicDNSサービス名を入力してください --> xxxxx (使用するDDNSサイトを選択します)
ドメイン名を入力してください --> 「chaperone.jp」
ホスト名を入力してください --> 「web」
ログインユーザ名を入力してください --> 「xxxxxxxxx」 (DDNSサイトで発行しているログイン名)
ログインパスワードを入力してください --> 「oooooooo」
登録するIPアドレスを入力してください --> 「(空白のまま)」
このイベントに題名を付けてください --> なんでもいい
実行する頻度を指定してください (番号入力) --> 「(5)IPアドレス変化時」
IPアドレスの変化が無い時に実行する間隔を指定してください --> 「(0)7日毎」
詳細オプションを設定します
[ オフライン ] --> 「(0)No」
このイベントを有効にしますか? (Y/N) --> 「y」
イベントを保存しますか? (Y/N) --> 「y」
このDiCEの起動は /etc/rc.localに
/opt/DiCE/diced -d -l
と記述して、再起動後にも使えるようにした。-dはデーモンモード。-lはログ記述を可能にしている。
ログの書き出し場所は、この場合 /opt/DiCE/log となる。
リモートから自宅鯖を見るには名前を使えば閲覧できるが、自宅内で自宅鯖を見ようとするとエラーになる。
windowsXPとかwindows7のホストファイル(C:\Windows\System32\drivers\etc\hosts)に内部でのIPと外向けの名前を登録すれば解決見たい。
192.168.2.2 web.chaperone.jp
以外にCPUリソースを頂くようで.....
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1457 root 20 0 5628 308 248 S 6.3 0.0 2538:35 diced
1425 root 20 0 265m 10m 6212 S 0.3 0.7 1:46.85 httpd
何もしていなくても、このcpu占有率....まぁー別に構いはしないけど....