Disponibilidad de dominios .CL en Perl
Hace tiempo que no escribo algún artículo, al parecer Twitter es más fácil para redactar ideas a la rápida.
Hoy quería registrar un dominio en NIC Chile, y me di cuenta que está por vencer, de hecho en un mes aproximadamente debería estar libre. Pero en realidad lo mas probable es que me olvide y no alcance a registrarlo cuando quede libre y otra persona me lo “gane”.
Por ésto es que decidí hacer un pequeño script que me ayudara a chequear de forma diaria (gracias a cron) si el dominio está disponible. La idea es que me envíe un e-mail una vez el susodicho esté libre, pero esa parte aún no la hago y tampoco es la idea hacerlo junto, o sea, unix style ;).
El script en cuestión lo publico a continuación, bajo la licencia GPLv3, que puedes encontrar en http://www.gnu.org/licenses/gpl.html. Si quieres hacer uso comercial, contacta conmigo 😉
#!/usr/bin/perl
#
# Check if .CL domain is available or not.
# Author: Jaime Oyarzun K. joyarzun {at} inf dot utfsm dot cl
# Date: 20100418
# License: GPLv3
#
# usage: ./whoisCL.pl [.cl]
#
# Output:
# 0 when domain is not available
# 1 when domain is available
#
# Crashes if connection cannot be established or no argument is given.
#
use IO::Socket;
$sock = new IO::Socket::INET (
PeerAddr => 'whois.nic.cl',
PeerPort => 43,
Proto => 'tcp',
) or die "Connection error!";
if ($#ARGV<0) {
die "Requires one argument: "
};
$domain = $ARGV[0];
print $sock "$domain\n";
$exists = 1;
while ($line = <$sock>) {
chomp($line);
if ($line =~ m/no existe/) {
$exists = 0;
print "1\n";
}
}
if ($exists) {
print "0\n";
}
close($sock);
Espero que a alguien le sirva, quedo atento a los comentarios. Saludos!
Mito.