mydns.jp へのアドレス通知スクリプト
自宅サーバのハードディスクがとんだ。屋根までとんだ。
MyDNS.JP を使っていたけれど
「一ヶ月以上全くIPアドレスの更新がない、もしくはログインも無いという場合は、登録データそのものを自動的に破棄します」
でも忙しくて代替えサーバをたてる余裕がない。
mydns への IP通知スクリプトもなくなってしまったので
急遽 書き下ろした。またロストすると困るので備忘録として残しておく。
mydns にIPを通知する方法はいくつもあるが、今回は pop3 で通知するスクリプトにした。
とりあえず Raspberry Pi3 で動くように imap_open とかも使わず簡単に・・・
pop3.php
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
<?php $host = "mail.mydns.jp"; $port = 110; $user = "マスターID"; $pass = "パスワード"; $con = fsockopen($host, $port, $err, $errno); if (!$con) { echo "Error:sockopen error."; return; } fputs($con, "USER {$user}\r\n"); $buf = fgets($con, 512); if (substr($buf, 0, 3) != '+OK') { echo "Error:user error."; return; } fputs($con, "PASS {$pass}\r\n"); $buf = fgets($con, 512); if (substr($buf, 0, 3) != '+OK') { echo "Error:password error."; } |
これを cron とかに指定してやればいい。
1 |
0 0 * * * php pop3.php |
みたいな感じ。