#!/usr/bin/perl use strict; use DNS::ZoneParse; my $zonefile = DNS::ZoneParse->new("./zondervan.com"); print "Current A Records \n"; my $a_records = $zonefile->a(); foreach my $record (@$a_records) { print "$record->{name} resolves at $record->{host}\n"; } push (@$a_records, { name => 'new', class => 'IN', host => '127.0.0.7', ttl => '' }); $zonefile->new_serial(); my $soa = $zonefile->soa(); print "serial: ", $soa->{serial}, "\n", "origin: ", $soa->{origin}, "\n", "primary: ", $soa->{primary}, "\n", "refresh: ", $soa->{refresh}, "\n", "retry: ", $soa->{retry}, "\n", "ttl: ", $soa->{ttl}, "\n", "minimumTTL: ", $soa->{minimumTTL}, "\n", "email: ", $soa->{email}, "\n", "expire: ", $soa->{expire}, "\n"; push (@$soa, { refresh => '3600', retry => '600', ttl => '68400', minimumTTL => '1800'}); open NEWZONE, ">./zonefi.new" or die "error"; print NEWZONE $zonefile->output(); close NEWZONE;