http://www.perlmonks.org?node_id=267565

naChoZ has asked for the wisdom of the Perl Monks concerning the following question:

Could someone help me figure out how to use DNS::ZoneFile? I've tried a few of the different modules for DNS manipulation, but I'm not having much luck. I followed this example and wrote this and tried to just get it to print one zone...

#!/usr/bin/perl -w use strict; use DNS::ZoneFile; my ($ORIGIN,$NEW_ZONE); my $zone=DNS::ZoneFile->new( "../named.master.conf/_dnsmaster", ZONE_ORIGIN=>$ORIGIN, NEW_ZONE=>$NEW_ZONE, ); $zone->printZone( "example.com" );
Running this yields:

> perl Fetchzones.pl Useless use of private variable in void context at /usr/local/lib/perl +5/site_perl/5.6.1/DNS/ZoneFile.pm line 115. Use of implicit split to @_ is deprecated at /usr/local/lib/perl5/site +_perl/5.6.1/DNS/ZoneFile.pm line 220. Use of implicit split to @_ is deprecated at /usr/local/lib/perl5/site +_perl/5.6.1/DNS/ZoneFile.pm line 240. Use of implicit split to @_ is deprecated at /usr/local/lib/perl5/site +_perl/5.6.1/DNS/ZoneFile.pm line 260. Explicit blessing to '' (assuming package main) at /usr/local/lib/perl +5/site_perl/5.6.1/DNS/ZoneFile.pm line 133. Can't locate object method "readZoneFile" via package "main" (perhaps +you forgot to load "main"?) at /usr/local/lib/perl5/site_perl/5.6.1/D +NS/ZoneFile.pm line 139.

Not sure how to interpret this error message...

What I'm trying to accomplish is to make a script to read a bind 8 named.conf file and tell me the filename for each master zone.

~~
naChoZ