普段、自宅サーバー(Windows10)のIPアドレスを DiCE を使って MyDNS.JP に通知しているけど、突然 MyDNS.JP が HTTP-BASIC でのIPアドレス通知を反映しなくなってしまった。
このままでは手動で通知する羽目になってしまうので、HTTP-DIRECT で通知できるように DiCE のプラグインを書き換えてみた。
通常、DiCE は MyDNS.JP に対して HTTP-BASIC で更新しているので、
http://<U>:<P>@www.mydns.jp:80/login.html
<U> MasterID
<P> Password
を送信している。
これで正常に更新されたようなメッセージが表示されるものの、実際には更新されておらず、MyDNS のログにも残っていない。
試しにインターネットブラウザでログインしても、IPアドレスは更新されなかった。
そこで、他の更新方法である HTTP-DIRECT で更新してみると、HTTP-DIRECT では正常に更新される事が分かった。
HTTP-DIRECT の場合は、
http://www.mydns.jp/directip.html?MID=<U>&PWD=<P>&IPV4ADDR=<I>
<U> MasterID
<P> Password
<I> IPアドレス
を送信すれば良いので、そのまま DiCE の MyDNS.JP プラグインを書き換える事にする。
具体的には、DiCE の plug-in フォルダにある、MyDNS.JP.plg をテキストエディタで開いて、
[Updater]
Method=GET
Script=http://<U>:<P>@www.mydns.jp:80/login.html
の3行を、
[Updater]
Method=GET
Script=http://www.mydns.jp/directip.html?MID=<U>&PWD=<P>&IPV4ADDR=<I>
に書き換えて上書き保存するだけ。
Windows10の場合は、更に
Encode=EUC
を
Encode=UTF-8
に書き換えた方が良いかも知れない。
DiCE の再起動もお忘れなく。
これで、DiCE を使って HTTP-DIRECT で MyDNS.JP の更新ができるようになった。
一時的な不具合なのかも知れないけど、しばらくこれでいってみよう。