20 lines
469 B
Perl
Executable File
20 lines
469 B
Perl
Executable File
#!/usr/bin/perl
|
|
|
|
use strict;
|
|
use warnings;
|
|
use Martnet::DDNS;
|
|
use Regexp::Common qw/net/;
|
|
|
|
my $host = shift || die "No vhost provided";
|
|
my $master = shift || die "No master DNS IP provided";
|
|
|
|
die "Hostname must end in a dot"
|
|
unless ($host =~ /^[a-zA-Z0-9\.]+\.$/);
|
|
|
|
my $regex = $RE{net}{IPv4} . '|' . $RE{net}{IPv6};
|
|
die "Master must be an IPv4 or IPv6 address"
|
|
unless ($master =~ /^$regex$/);
|
|
|
|
my $ddns = Martnet::DDNS->new();
|
|
$ddns->addvhost($host, $master);
|