1Net::DNS::RR::NSEC3(3)User Contributed Perl DocumentationNet::DNS::RR::NSEC3(3)
2
3
4

NAME

6       Net::DNS::RR::NSEC3 - DNS NSEC3 resource record
7

SYNOPSIS

9           use Net::DNS;
10           $rr = Net::DNS::RR->new('name NSEC3 algorithm flags iterations salt hnxtname');
11

DESCRIPTION

13       Class for DNSSEC NSEC3 resource records.
14
15       The NSEC3 Resource Record (RR) provides authenticated denial of
16       existence for DNS Resource Record Sets.
17
18       The NSEC3 RR lists RR types present at the original owner name of the
19       NSEC3 RR.  It includes the next hashed owner name in the hash order of
20       the zone.  The complete set of NSEC3 RRs in a zone indicates which
21       RRSets exist for the original owner name of the RR and form a chain of
22       hashed owner names in the zone.
23

METHODS

25       The available methods are those inherited from the base class augmented
26       by the type-specific methods defined in this package.
27
28       Use of undocumented package features or direct access to internal data
29       structures is discouraged and could result in program termination or
30       other unpredictable behaviour.
31
32   algorithm
33           $algorithm = $rr->algorithm;
34           $rr->algorithm( $algorithm );
35
36       The Hash Algorithm field is represented as an unsigned decimal integer.
37       The value has a maximum of 255.
38
39       algorithm() may also be invoked as a class method or simple function to
40       perform mnemonic and numeric code translation.
41
42   flags
43           $flags = $rr->flags;
44           $rr->flags( $flags );
45
46       The Flags field is an unsigned decimal integer interpreted as eight
47       concatenated Boolean values.
48
49       optout
50            $rr->optout(1);
51
52            if ( $rr->optout ) {
53                   ...
54            }
55
56           Boolean Opt Out flag.
57
58   iterations
59           $iterations = $rr->iterations;
60           $rr->iterations( $iterations );
61
62       The Iterations field is represented as an unsigned decimal integer.
63       The value is between 0 and 65535, inclusive.
64
65   salt
66           $salt = $rr->salt;
67           $rr->salt( $salt );
68
69       The Salt field is represented as a contiguous sequence of hexadecimal
70       digits. A "-" (unquoted) is used in string format to indicate that the
71       salt field is absent.
72
73   saltbin
74           $saltbin = $rr->saltbin;
75           $rr->saltbin( $saltbin );
76
77       The Salt field as a sequence of octets.
78
79   hnxtname
80           $hnxtname = $rr->hnxtname;
81           $rr->hnxtname( $hnxtname );
82
83       The Next Hashed Owner Name field points to the next node that has
84       authoritative data or contains a delegation point NS RRset.
85
86   typelist
87           @typelist = $rr->typelist;
88           $typelist = $rr->typelist;
89           $rr->typelist( @typelist );
90
91       typelist() identifies the RRset types that exist at the domain name
92       matched by the NSEC3 RR.  When called in scalar context, the list is
93       interpolated into a string.
94
95   typemap
96           $exists = $rr->typemap($rrtype);
97
98       typemap() returns a Boolean true value if the specified RRtype occurs
99       in the type bitmap of the NSEC3 record.
100
101   match
102           $matched = $rr->match( 'example.foo' );
103
104       match() returns a Boolean true value if the hash of the domain name
105       argument matches the hashed owner name of the NSEC3 RR.
106
107   covers
108           $covered = $rr->covers( 'example.foo' );
109
110       covers() returns a Boolean true value if the hash of the domain name
111       argument, or ancestor of that name, falls between the owner name and
112       the next hashed owner name of the NSEC3 RR.
113
114   encloser, nextcloser, wildcard
115           $encloser = $rr->encloser( 'example.foo' );
116           print "encloser: $encloser\n" if $encloser;
117
118       encloser() returns the name of a provable encloser of the query name
119       argument obtained from the NSEC3 RR.
120
121       nextcloser() returns the next closer name, which is one label longer
122       than the closest encloser.  This is only valid after encloser() has
123       returned a valid domain name.
124
125       wildcard() returns the unexpanded wildcard name from which the next
126       closer name was possibly synthesised.  This is only valid after
127       encloser() has returned a valid domain name.
128
130       Copyright (c)2017,2018 Dick Franks
131
132       Portions Copyright (c)2007,2008 NLnet Labs.  Author Olaf M. Kolkman
133
134       All rights reserved.
135
136       Package template (c)2009,2012 O.M.Kolkman and R.W.Franks.
137

LICENSE

139       Permission to use, copy, modify, and distribute this software and its
140       documentation for any purpose and without fee is hereby granted,
141       provided that the original copyright notices appear in all copies and
142       that both copyright notice and this permission notice appear in
143       supporting documentation, and that the name of the author not be used
144       in advertising or publicity pertaining to distribution of the software
145       without specific prior written permission.
146
147       THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
148       OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
149       MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
150       IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
151       CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
152       TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
153       SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
154

SEE ALSO

156       perl, Net::DNS, Net::DNS::RR, RFC5155, RFC9077
157
158       Hash Algorithms <http://www.iana.org/assignments/dnssec-
159       nsec3-parameters>
160
161
162
163perl v5.34.1                      2022-06-08            Net::DNS::RR::NSEC3(3)
Impressum