I have some minor sites running on the basement OpenSolaris box, and since our IP address changes regularly, I use ddclient to notify DynDNS of the changes. It was working just fine on the old Debian box, but of course OpenSolaris does things differently, and the ddclient package doesn’t come with all the bits you need to make it work.

Step one: download the ddclient package from Sourceforge, and follow the instructions in the README as to where to install it. Easy enough, done.

Step two: go to the DynDNS site, log in to the account, go to the Support Tools section of the website, and click on the “Update Client Configurator”. This takes you to a page that will automatically generate the configuration file for ddclient for your account. This is one of the reasons I like DynDNS, by the way, they think of little useful tools like this.

Step three: make the configuration changes in the ddclient.conf file, and try running the ddclient Perl script to see if it works, using ddclient -daemon=0 -debug -verbose -noquiet to get all the error messages. One tip: if you have spaces in your password, surround it with single quotes, not double quotes. The latter don’t work.

Step four: the hardest for someone new to OpenSolaris is to figure out how to run the daemon. It turns out that Solaris has a “Services Management Facility” (SMF). The specific instructions to follow, once you’ve figured out the basic concepts, are at Chris Gerhard’s ddclient meets SMF. Mind you, I did need to read the documentation on Managing Services to find out where to put the file (/var/svc/manifest). Just as well Sun lets lots of people blog, it certainly makes it easier to find information. I do wish they could figure out how to give their standard documentation memorable URIs though.

Now I just have to wait until our local IP address changes to see if it works. [Update: yup, it works.]

### 7 Responses to “OpenSolaris and ddclient”

1. Hi,
When I ran
ddclient -daemon=0 -debug -verbose -noquiet
as you suggested, I got the following error:

FATAL: On Debian, the package libio-socket-ssl-perl must be installed.

Could you share how you installed the perl module on your opensolaris box?

Thanks you!
-Ilya

• Hi Ilya, sorry it’s taken a while to reply. I’ll email this to you as well.

I didn’t do anything special to install Perl as I think it’s on the system by default. The only extra package I installed was the web stack package, again taking the defaults. The version I have (using OpenSolaris 2008.11) is 5.8.4, in /usr/bin/perl.

2. Thank you Lauren.
I did have perl installed, but not webstack and maybe the module is part of webstack..
FYI:
I followed this post to install the IO::Socket::SSL module:
And it works great for me now.
Thank you.
-Ilya

3. […] 参考文章：http://www.laurenwood.org/anyway/2009/03/opensolaris-and-ddclient/ Posted on January 8, 2010 at 22:17 by paul · Permalink In: In My Opinion, Open Source · Tagged with: NAS, OpenSolaris, zfs […]

4. Thanks so much for these instructions. I just moved to opensolaris and you have saved me from a very steep learning curve.

Thankyou

5. Running
ddclient -daemon=0 -debug -verbose -noquiet
gives me the following Usage error:
Usage: ddclient {start|stop|restart|status}

Am I missing something?

6. If you decide to upgrade your box– it is mostly an incomplete perl setup that prevents ddclient from working. Compiling the perl IO-Socket-SSL module and installing it made ddclient run happily– then as above having the daemon run as a unified type of service through SMF.