Diceが間違ったIPアドレスでDNSを更新する件、解決しました。

by 管理者
8月 24日 2011 年

題記の件ですが、DiceのIP確認で「IPアドレスチェック」が タイムアウトしていたのが原因でした。

Diceのevent.logが文字化けして見れないので、いつも個別のid000001.log~のログを見ていましたが、

#  nkf /usr/local/bin/DiCE/log/events.log | more

を実行すると、event.logが文字化けしないで見れるようになったため、ようやく理由がわかりました。

こんな事なら、さっさとevent.logを見れるように調査すれば良かった。

 

DiceのIP確認で「IPアドレスチェック」が タイムアウトすると、dice.iniの「CheckIPAddress」に記載されたIPアドレスで更新するようです。

その時、「CheckIPAddress」のアドレスが間違っていると、間違ったIPアドレスでDNSが更新されます。

タイムアウトするときとタイムアウトしないときがあって、成功したり失敗したりするみたいです。

そのため、信頼性の無いDiceのIPアドレスチェックを止めて、外部のスクリプトに変更しました。

# /usr/local/bin/DiCE/diced

:setup
IPアドレスの検出方法を指定してください
(0) 自動検出
(1) ローカルのネットワークアダプタから検出
(2) 外部のスクリプトから検出
<現在:0>
(N)変更しない (P)戻る
>2
-------------------------------------------------
スクリプトのURLを入力してください
<現在:>
(N)変更しない (P)戻る
http://www.dyndns.org/cgi-bin/check_ip.cgi

 

確認の為、dice.iniの「CheckIPAddress」を0.0.0.0に変更して

:ex イベント番号

を実行したところ、正しいIPアドレスでDNSが更新され、dice.iniの「CheckIPAddress」も正しいIPアドレスで更新されました。

ようやく解決しました。

めでたし、めでたし。

 

*** 記事追加 2011/8/25  ***

今まで1年間問題が発生していなかったのに、突然DiceのIPチェックがタイムアウトするようになりました。

思い当たることは、電話番号を2回線使えるように光モデムを変更したこと。

グローバルIPの確認はルータだけでなく、光モデムまで見に行くのでしょうか?

でないとつじつまが合わない。

この記事へのトラックバックURL