The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Net::DNS::RR - DNS Resource Record class

SYNOPSIS

use Net::DNS::RR

DESCRIPTION

Net::DNS::RR is the base class for DNS Resource Record (RR) objects. See also the manual pages for each RR type.

METHODS

new

    $rr = new Net::DNS::RR(
        Name    => "foo.bar.com",
        TTL     => 86400,
        Class   => "IN",
        Type    => "A",
        Address => "10.1.2.3",
    );

    $rr = new Net::DNS::RR(
        Name    => "foo.bar.com",
        Type    => "A",
    );

Returns an RR object of the appropriate type, or a Net::DNS::RR object if the type isn't implemented. See the manual pages for each RR type to see what fields the type requires.

The Name and Type fields are required; all others are optional. If omitted, TTL defaults to 0 and Class defaults to IN. Omitting the optional fields is useful for creating the empty RDATA sections required for certain dynamic update operations.

The fields are case-insensitive, but starting each with uppercase is recommended.

print

    $rrobj->print;

Prints the record to the standard output. Calls the string method to get the RR's string representation.

string

    print $rrobj->string, "\n";

Returns a string representation of the RR. Calls the rdatastr method to get the RR-specific data.

rdatastr

    $s = $rrobj->rdatastr;

Returns a string containing RR-specific data. Subclasses will need to implement this method.

name

    $name = $rrobj->name;

Returns the record's domain name.

type

    $type = $rrobj->type;

Returns the record's type.

class

    $class = $rrobj->class;

Returns the record's class.

ttl

    $ttl = $rrobj->ttl;

Returns the record's time-to-live (TTL).

rdlength

    $rdlength = $rrobj->rdlength;

Returns the length of the record's data section.

rdata

    $rdata = $rrobj->rdata

Returns the record's data section as binary data.

BUGS

This version of Net::DNS::RR does no sanity checking on user-created RR objects.

COPYRIGHT

Copyright (c) 1997 Michael Fuhr. All rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

SEE ALSO

perl(1), Net::DNS, Net::DNS::Resolver, Net::DNS::Packet, Net::DNS::Update, Net::DNS::Header, Net::DNS::Question, RFC 1035 Section 4.1.3