I like dnsexit.com
They have published a wget command line to do the update.  This works will the many little linux routers.  And, it works with the watchcat script (that zip file also contains wget-for-windows).  
I don't use hfs built in ddns update because it could redirect hfs to itself, which makes router port forwarding fail.  It is quite a bit more useful to make the router do the ddns updates.  OpenWRT, Gargoyle, DD-WRT and Tomato can all do ddns update. . . even if your server isn't powered on.