NAME

Net::Frame::Layer::DNS::RR::SOA - DNS Resource Record SOA rdata type

SYNOPSIS

use Net::Frame::Layer::DNS::RR::SOA;

my $rdata = Net::Frame::Layer::DNS::RR::SOA->new(
   mname   => 'localhost',
   rname   => 'administrator.localhost',
   serial  => 0,
   refresh => 0,
   retry   => 0,
   expire  => 0,
   minimum => 0,
);
$rdata->pack;

print 'RAW: '.$rdata->dump."\n";

# Create RR with rdata
use Net::Frame::Layer::DNS::RR qw(:consts);

my $layer = Net::Frame::Layer::DNS::RR->new(
   type  => NF_DNS_TYPE_SOA
   rdata => $rdata->pack
);
$layer->pack;

DESCRIPTION

This modules implements the encoding and decoding of the DNS Resource Record SOA rdata type object. Users need only use this for encoding. Net::Frame::Layer::DNS::RR calls this as needed to assist in rdata decoding.

See also Net::Frame::Layer for other attributes and methods.

ATTRIBUTES

mname

The name of the name server that was the original or primary source of data for this zone.

rname

A name which specifies the mailbox of the person responsible for this zone.

serial

The version number of the original copy of the zone.

refresh

Time interval before the zone should be refreshed.

retry

Time interval that should elapse before a failed refresh should be retried.

expire

Time value that specifies the upper limit on the time interval that can elapse before the zone is no longer authoritative.

minimum

Minimum TTL that should be exported with any RR from this zone.

The following are inherited attributes. See Net::Frame::Layer for more information.

raw
payload
nextLayer

METHODS

new
new (hash)

Object constructor. You can pass attributes that will overwrite default ones. See SYNOPSIS for default values.

The following are inherited methods. Some of them may be overriden in this layer, and some others may not be meaningful in this layer. See Net::Frame::Layer for more information.

layer
computeLengths
computeChecksums
pack
unpack
encapsulate
getLength
getPayloadLength
print
dump

CONSTANTS

No constants here.

SEE ALSO

Net::Frame::Layer::DNS, Net::Frame::Layer::DNS::RR, Net::Frame::Layer

AUTHOR

Michael Vincent

COPYRIGHT AND LICENSE

Copyright (c) 2012, Michael Vincent

You may distribute this module under the terms of the Artistic license. See LICENSE.Artistic file in the source distribution archive.