
Quoting Russell Coker (russell@coker.com.au):
Does anyone know of a good way of monitoring this? I have experimented with monitoring the output of the "whois" command, but they are quite aggressive about blocking multiple connections from the same IP address.
Yes, albeit some TLDs have uninformative whois output or other problems. In http://linuxmafia.com/pub/linux/network/, you will find both domain-check (various numbered versions thereof) and d-check. Both are Perl scripts for this purpose. To this day, every Sunday I get e-mail via a cron job that runs domain-check against a set of about three dozen domains (mine, friends', and those of institutions I care about) to tell me which of them are within 90 days of expiration (and if any are past expiration). You'll also find a shell script called domain-check.ryan, the ur-implementation that started all this. (Master index for this directory is the http://linuxmafia.com/pub/linux/network/00index.txt file.) In 2007, when I was contributing editor to _Linux Gazette_ (now defunct), I wrote an article called 'Preventing Domain Expiration'[1], that talked about the utility of running Ryan Matteson's 'domain-check' shell script and being warned about pending expirations. Unfortunately, Ryan's work didn't handle important TLDs (such as .org) and presented maintenance difficulties, so Perl coder Ben Okopnik, with some help from me, wrote Ben's replacement Perl implementation of domain-check, the one that is present in many versions. In the years since then, Ben has EOLed said code. It has now accumulated a few problems, solely on account of new TLDs whose whois output it cannot parse, or changed behaviour at incumbent TLDs. I checked with my friend Jesse Monroy, who (FWIW) absolutely hated Ben's coding style, and decided to write his own from-scratch Perl replacement, which is what d-check is. As I say in 00index.txt, Jesse's upstream repo is: https://github.com/jessemonroy650/d-check My various template, example, and cron script files, although tuned for Ben's domain-check, may be of use and can be found in that same directory.
All I want is a way of discovering when my domains will expire which doesn't depend on receiving email from Melbourne IT or similar.
Done. Yr. welcome. [1] http://linuxmafia.com/~rick/preventing-expiration.html Warning: Article talks mostly about _Ryan's_ domain-check, because Ben's was just then newly written and a bit raw. However, please take care to avoid Ryan's shell-script implementation of the idea, as it's a quite flawed implementation compared to _both_ Ben's and Jesse's Perl versions.