#!/usr/bin/perl
# Author: Alex Efros <powerman-asdf@yandex.ru>, 2008
# License: Public Domain
#
# dnsNOTIFY: Request slave DNS server BIND to refresh zone from master DNS.

our $VERSION = 2.00;

my ($domain, $slave) = @ARGV;
die "Usage: $0 domain.to.refresh slave.I.P.addr\n" unless $slave;
use Socket; socket(SOCK,AF_INET,SOCK_DGRAM,getprotobyname('udp'));
$to = sockaddr_in(53,pack("C4",split/\./,$slave));
$pkt=pack("nnnnnna*nn",0,0x2400,1,0,0,0,
    join("",map{chr(length).$_}split/\./,$domain)."\00",6,1);
send(SOCK,$pkt,0,$to);
recv(SOCK,$buf,10240,0);

