国内の DNS アウトソースサービスとして、 "Dozens" (ダズンズ) というサービスがある。
"Dozens"
http://dozens.jp/
"クラウド時代に対応した DNS サービス" を謳っており、GooglAps や EC2、GAE などを独自ドメインで利用する場合などにとくに強みを発揮するらしい。
無料の Free プランも用意されていて、12 レコードから利用可能。
さらに、月額 \1,000 の Basic プランからは TTL を 1分/15分/2時間 のいずれかに変更可能である。
ダイナミック DNS 的な活用もできる便利な DNS サービスである。
さてこの Doznes、今時代らしく、RESTFull な Web API を介して、ゾーンやレコードの追加/取得/変更/削除が可能である。
Dozens ドキュメント - REST API リファレンス
https://sites.google.com/a/dozens.jp/docs/
API を公開頂いているので、これまた大変便利なところであるが、いざこの API を叩こうとすると、多少とはいえ、コードを書かねばならない。
プラットフォームを Ruby に選んだ場合は、RubyGems で、この Dozens REST API の Ruby クライアントが公開されているとのこと。
"RubyGemsでDozensのパッケージが公開されました"
http://blog.dozens.jp/post/7572862669/rubygems-dozens
Rubyist やるなぁ! と思い、自分の主力プラットフォームは .NET なので、じゃぁ .NET 版のクライアントライブラリを書いてみようと思い立った。
ということで、その成果がこちら。
Dozens API Client for .NET
http://dozensapiclient.codeplex.com/
CodePlex 上で Ms-PL なオープンソースとして公開している。
.NET Framework 3.5 を基盤としたクラスライブラリなので、C# や VB はもちろん、F#(F# スクリプト含む)や Windows PowerShell など、様々な .NET 言語から利用可能。
NuGet パッケージとしても公開しているので、
http://nuget.org/List/Packages/DozensAPIClient
たとえば Visual Studio 上から NuGet Package Manager を使って、自分のプロジェクトに Dozens API Client for .NET を追加することも容易である。
さらに、.NET Framework の COM 相互運用機能のおかげで、VBScript や JScript といった WSH (Windows Script Host ) 環境からも利用可能となった。
以下に、F# スクリプト、C#、PowerShell、VBScript から Dozens API Client for .NET を利用する手順の動画を公開。
F# スクリプト
C#
Windows PowerShell
VBScript
以上、DNS サービス Dozens ともども、上記 Dozens API Client for .NET もご活用頂ければ、作り手冥利に尽きる。
2011/07/29 追記
調子に乗って、
Microsoft Small Basic 用の拡張ライブラリまで作ってみた。
Dozens API Client for Small Basic - CodePlex
http://dozens4smallbasic.codeplex.com/
なぜ Small Basic?? と思う方は、下記投稿など参照されたし。
第56回CLR/H勉強会LT - Small Basic を実務で使ってみませんか?
http://devadjust.exblog.jp/13258395/