Net::DNS::RR::DELEG(3)

NAME
Net::DNS::RR::DELEG - DNS DELEG resource record

SYNOPSIS
        use Net::DNS;
        $rr = Net::DNS::RR->new('zone DELEG DIRECT=nameserver IPv4=192.0.2.1');
        $rr = Net::DNS::RR->new('zone DELEG DIRECT IPv6=2001:db8::53');
        $rr = Net::DNS::RR->new('zone DELEG INCLUDE=targetname');

DESCRIPTION
The DNS DELEG resource record set, wherever it appears, advertises the authoritative nameservers and transport parameters to be used to resolve queries for data at the owner name or any subordinate thereof.

The DELEG RRset is authoritative data within the delegating zone and must not appear at the apex of the subordinate zone.

The DELEG class is derived from, and inherits properties of, the Net::DNS::RR::SVCB class.

METHODS
The available methods are those inherited from the base class augmented by the type-specific methods defined in this package.

Use of undocumented package features or direct access to internal data structures is discouraged and could result in program termination or other unpredictable behaviour.

  DIRECT
        example. DELEG DIRECT=nameserver
        example. DELEG DIRECT=nameserver IPv6=2001:db8::53
        example. DELEG DIRECT IPv4=192.0.2.1 IPv6=2001:db8::53
        $nameserver = $rr->targetname;

Specifies the nameserver domain name, which may be absent, and sets DIRECT mode (non-zero SvcPriority).

  INCLUDE
        example. DELEG INCLUDE=targetname
        $targetname = $rr->targetname;

Specifies the location of an external nameserver configuration and sets INCLUDE mode (zero SvcPriority).

  priority
        example. DELEG DIRECT=nameserver priority=123
        $priority = $rr->priority;

Gets or sets the priority value for the DELEG record. An exception will be raised for any attempt to set a non-zero priority for INCLUDE.

  targetname
        $target = $rr->targetname;

Returns the target domain name or the undefined value if not specified.

  IPv4, ipv4
        example. DELEG DIRECT IPv4=192.0.2.1
        @ip = $rr->IPv4;

Sets or gets the list of IP addresses.

  IPv6, ipv6
        example. DELEG DIRECT IPv6=2001:db8::53
        @ip = $rr->IPv6;

Sets or gets the list of IP addresses.

COPYRIGHT
Copyright (c)2025 Dick Franks.

All rights reserved.

Package template (c)2009,2012 O.M.Kolkman and R.W.Franks.

LICENSE
Permission to use, copy, modify, and distribute this software and its documentation for any purpose and without fee is hereby granted, provided that the original copyright notices appear in all copies and that both copyright notice and this permission notice appear in supporting documentation, and that the name of the author not be used in advertising or publicity pertaining to distribution of the software without specific prior written permission.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

SEE ALSO
perl Net::DNS Net::DNS::RR Net::DNS::RR::SVCB

draft-ietf-deleg

RFC9460 <https://iana.org/go/rfc9460>

Service Parameter Keys <https://iana.org/assignments/dns-svcb>