2011年4月19日火曜日

Dynamic DNSみたいなの

11月に引っ越してから、自宅はフレッツになり固定IPアドレスではなくなりました。DNSサーバーやメールサーバーには「さくらのVPS 512」(名前が変わりました)を使っていますが、写真とかビデオを入れるほどの容量は無いので、これらは引き続き自宅サーバーで運用しています。
写真はWebからも見られるようにしているので引越し前は固定IPアドレスでしたが、今回はDynamic DNSにしてみようと思いました。が、自宅サーバーがPPPoEを喋ってるわけではなく、フレッツのCTUが間に入っていて静的NATで外からアクセスできるようにしているため、自宅サーバー自身は自分のグローバルIPアドレスを知ることができません。ということで、NATを介しても使えるDynamicDNSモドキを作ってみました。

プロトコルはもちろん独自設計。自宅サーバーが定期的にUDPでDNSサーバーにリクエストを投げます。DNSサーバーは受信したパケットのソースアドレスを見てDNSをアップデートし、返事を送るって感じです。一応セキュリティにも配慮して、タイムスタンプを入れて再送攻撃を排除したり、HMAC-MD5なパケット認証情報(ICV)を入れて偽リクエストを排除するようになっています。もしコードが欲しい方がいらっしゃいましたらお知らせください。

ちなみに自宅サーバーは昨年7月からEPSON Endeavor NP11を使っていますが、ファンレスながら一度も問題を起こさずに動いています。昨日も引越し以来たまっていた写真を一気に処理させたので、6時間ぐらいフル稼働していましたが問題なかったです。さすがは大手メーカー製って感じです。超小型で低消費電力なので、自宅サーバーにお勧めです。

0 件のコメント:

コメントを投稿