1Net::DNS::RR::NSEC3(3)User Contributed Perl DocumentationNet::DNS::RR::NSEC3(3)
2
3
4
6 Net::DNS::RR::NSEC3 - DNS NSEC3 resource record
7
9 use Net::DNS;
10 $rr = Net::DNS::RR->new('name NSEC3 algorithm flags iterations salt hnxtname');
11
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
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
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
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)