21 lines
552 B
Perl
Executable File
21 lines
552 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";
|
|
my $master ||= '198.251.79.234 2607:f1c0:86e:b66f:6b86:babb:c367:b0dc';
|
|
|
|
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->add($host, $master, '_vhosts');
|