module iana-dns-class-rr-type { yang-version 1.1; namespace "urn:ietf:params:xml:ns:yang:iana-dns-class-rr-type"; prefix dnsct; organization "Internet Assigned Numbers Authority (IANA)"; contact " Internet Assigned Numbers Authority Postal: ICANN 12025 Waterfront Drive, Suite 300 Los Angeles, CA 90094 Tel: +1 424 254 5300 "; description "This YANG module translates IANA registries 'DNS CLASSes' and 'Resource Record (RR) TYPEs' to YANG-derived types. Copyright (c) 2021 IETF Trust and the persons identified as authors of the code. All rights reserved. Redistribution and use in source and binary forms, with or without modification, is permitted pursuant to, and subject to the license terms contained in, the Simplified BSD License set forth in Section 4.c of the IETF Trust's Legal Provisions Relating to IETF Documents (https://trustee.ietf.org/license-info). This version of this YANG module was generated from the corresponding IANA registries using an XSLT stylesheet from Appendix A of RFC 9108 (https://www.rfc-editor.org/info/rfc9108); see the RFC itself for full legal notices."; reference "IANA 'Domain Name System (DNS) Parameters' registry https://www.iana.org/assignments/dns-parameters"; revision 2023-04-25 { description "Updated reference for 64 and 65."; } revision 2022-05-30 { description "Updated description, reference for 64 and 65."; } revision 2021-08-31 { description "Initial revision."; reference "RFC 9108: YANG Types for DNS Classes and Resource Record Types"; } /* Typedefs */ typedef dns-class-name { type enumeration { enum IN { value 1; description "Internet (IN)"; reference "RFC 1035"; } enum CH { value 3; description "Chaos (CH)"; reference "D. Moon, 'Chaosnet', A.I. Memo 628, Massachusetts Institute of Technology Artificial Intelligence Laboratory, June 1981."; } enum HS { value 4; description "Hesiod (HS)"; reference "Dyer, S., and F. Hsu, 'Hesiod', Project Athena Technical Plan - Name Service, April 1987."; } enum NONE { value 254; description "QCLASS NONE"; reference "RFC 2136"; } enum ANY { value 255; description "QCLASS * (ANY)"; reference "RFC 1035"; } } description "This enumeration type defines mnemonic names and corresponding numeric values of DNS classes."; reference "RFC 6895: Domain Name System (DNS) IANA Considerations"; } typedef dns-class { type union { type uint16; type dns-class-name; } description "This type allows reference to a DNS class using either the assigned mnemonic name or numeric value."; } typedef rr-type-name { type enumeration { enum A { value 1; description "a host address"; reference "RFC 1035"; } enum NS { value 2; description "an authoritative name server"; reference "RFC 1035"; } enum MD { value 3; status obsolete; description "a mail destination (OBSOLETE - use MX)"; reference "RFC 1035"; } enum MF { value 4; status obsolete; description "a mail forwarder (OBSOLETE - use MX)"; reference "RFC 1035"; } enum CNAME { value 5; description "the canonical name for an alias"; reference "RFC 1035"; } enum SOA { value 6; description "marks the start of a zone of authority"; reference "RFC 1035"; } enum MB { value 7; description "a mailbox domain name (EXPERIMENTAL)"; reference "RFC 1035"; } enum MG { value 8; description "a mail group member (EXPERIMENTAL)"; reference "RFC 1035"; } enum MR { value 9; description "a mail rename domain name (EXPERIMENTAL)"; reference "RFC 1035"; } enum NULL { value 10; description "a null RR (EXPERIMENTAL)"; reference "RFC 1035"; } enum WKS { value 11; description "a well known service description"; reference "RFC 1035"; } enum PTR { value 12; description "a domain name pointer"; reference "RFC 1035"; } enum HINFO { value 13; description "host information"; reference "RFC 1035"; } enum MINFO { value 14; description "mailbox or mail list information"; reference "RFC 1035"; } enum MX { value 15; description "mail exchange"; reference "RFC 1035"; } enum TXT { value 16; description "text strings"; reference "RFC 1035"; } enum RP { value 17; description "for Responsible Person"; reference "RFC 1183"; } enum AFSDB { value 18; description "for AFS Data Base location"; reference "- RFC 1183 - RFC 5864"; } enum X25 { value 19; description "for X.25 PSDN address"; reference "RFC 1183"; } enum ISDN { value 20; description "for ISDN address"; reference "RFC 1183"; } enum RT { value 21; description "for Route Through"; reference "RFC 1183"; } enum NSAP { value 22; description "for NSAP address, NSAP style A record"; reference "RFC 1706"; } enum NSAP-PTR { value 23; description "for domain name pointer, NSAP style"; reference "- RFC 1348 - RFC 1637 - RFC 1706"; } enum SIG { value 24; description "for security signature"; reference "- RFC 2535 - RFC 2536 - RFC 2537 - RFC 2931 - RFC 3008 - RFC 3110 - RFC 3755 - RFC 4034"; } enum KEY { value 25; description "for security key"; reference "- RFC 2535 - RFC 2536 - RFC 2537 - RFC 2539 - RFC 3008 - RFC 3110 - RFC 3755 - RFC 4034"; } enum PX { value 26; description "X.400 mail mapping information"; reference "RFC 2163"; } enum GPOS { value 27; description "Geographical Position"; reference "RFC 1712"; } enum AAAA { value 28; description "IP6 Address"; reference "RFC 3596"; } enum LOC { value 29; description "Location Information"; reference "RFC 1876"; } enum NXT { value 30; status obsolete; description "Next Domain (OBSOLETE)"; reference "- RFC 2535 - RFC 3755"; } enum EID { value 31; description "Endpoint Identifier"; reference "- Michael Patton - http://ana-3.lcs.mit.edu/~jnc/nimrod/dns.txt"; } enum NIMLOC { value 32; description "Nimrod Locator"; reference "- Michael Patton - http://ana-3.lcs.mit.edu/~jnc/nimrod/dns.txt"; } enum SRV { value 33; description "Server Selection"; reference "RFC 2782"; } enum ATMA { value 34; description "ATM Address"; reference "http://www.broadband-forum.org/ftp/pub/approved-specs/af-dans-0152.000.pdf"; } enum NAPTR { value 35; description "Naming Authority Pointer"; reference "- RFC 2168 - RFC 2915 - RFC 3403"; } enum KX { value 36; description "Key Exchanger"; reference "RFC 2230"; } enum CERT { value 37; description "CERT"; reference "RFC 4398"; } enum A6 { value 38; status obsolete; description "A6 (OBSOLETE - use AAAA)"; reference "- RFC 2874 - RFC 3226 - RFC 6563"; } enum DNAME { value 39; description "DNAME"; reference "RFC 6672"; } enum SINK { value 40; description "SINK"; reference "- Donald E. Eastlake, III - http://tools.ietf.org/html/draft-eastlake-kitchen-sink"; } enum OPT { value 41; description "OPT"; reference "- RFC 3225 - RFC 6891"; } enum APL { value 42; description "APL"; reference "RFC 3123"; } enum DS { value 43; description "Delegation Signer"; reference "- RFC 3658 - RFC 4034"; } enum SSHFP { value 44; description "SSH Key Fingerprint"; reference "RFC 4255"; } enum IPSECKEY { value 45; description "IPSECKEY"; reference "RFC 4025"; } enum RRSIG { value 46; description "RRSIG"; reference "- RFC 3755 - RFC 4034"; } enum NSEC { value 47; description "NSEC"; reference "- RFC 3755 - RFC 4034 - RFC 9077"; } enum DNSKEY { value 48; description "DNSKEY"; reference "- RFC 3755 - RFC 4034"; } enum DHCID { value 49; description "DHCID"; reference "RFC 4701"; } enum NSEC3 { value 50; description "NSEC3"; reference "- RFC 5155 - RFC 9077"; } enum NSEC3PARAM { value 51; description "NSEC3PARAM"; reference "RFC 5155"; } enum TLSA { value 52; description "TLSA"; reference "RFC 6698"; } enum SMIMEA { value 53; description "S/MIME cert association"; reference "RFC 8162"; } enum HIP { value 55; description "Host Identity Protocol"; reference "RFC 8005"; } enum NINFO { value 56; description "NINFO"; reference "Jim Reid "; } enum RKEY { value 57; description "RKEY"; reference "Jim Reid "; } enum TALINK { value 58; description "Trust Anchor LINK"; reference "Wouter Wijngaards "; } enum CDS { value 59; description "Child DS"; reference "RFC 7344"; } enum CDNSKEY { value 60; description "DNSKEY(s) the Child wants reflected in DS"; reference "RFC 7344"; } enum OPENPGPKEY { value 61; description "OpenPGP Key"; reference "RFC 7929"; } enum CSYNC { value 62; description "Child-To-Parent Synchronization"; reference "RFC 7477"; } enum ZONEMD { value 63; description "Message Digest Over Zone Data"; reference "RFC 8976"; } enum SVCB { value 64; description "General Purpose Service Binding"; reference "draft-ietf-dnsop-svcb-https-12"; } enum HTTPS { value 65; description "Service Binding type for use with HTTP"; reference "draft-ietf-dnsop-svcb-https-12"; } enum SPF { value 99; description ""; reference "RFC 7208"; } enum UINFO { value 100; description ""; reference "IANA-Reserved"; } enum UID { value 101; description ""; reference "IANA-Reserved"; } enum GID { value 102; description ""; reference "IANA-Reserved"; } enum UNSPEC { value 103; description ""; reference "IANA-Reserved"; } enum NID { value 104; description ""; reference "RFC 6742"; } enum L32 { value 105; description ""; reference "RFC 6742"; } enum L64 { value 106; description ""; reference "RFC 6742"; } enum LP { value 107; description ""; reference "RFC 6742"; } enum EUI48 { value 108; description "an EUI-48 address"; reference "RFC 7043"; } enum EUI64 { value 109; description "an EUI-64 address"; reference "RFC 7043"; } enum TKEY { value 249; description "Transaction Key"; reference "RFC 2930"; } enum TSIG { value 250; description "Transaction Signature"; reference "RFC 8945"; } enum IXFR { value 251; description "incremental transfer"; reference "RFC 1995"; } enum AXFR { value 252; description "transfer of an entire zone"; reference "- RFC 1035 - RFC 5936"; } enum MAILB { value 253; description "mailbox-related RRs (MB, MG or MR)"; reference "RFC 1035"; } enum MAILA { value 254; status obsolete; description "mail agent RRs (OBSOLETE - see MX)"; reference "RFC 1035"; } enum * { value 255; description "A request for some or all records the server has available"; reference "- RFC 1035 - RFC 6895 - RFC 8482"; } enum URI { value 256; description "URI"; reference "RFC 7553"; } enum CAA { value 257; description "Certification Authority Restriction"; reference "RFC 8659"; } enum AVC { value 258; description "Application Visibility and Control"; reference "Wolfgang Riedel "; } enum DOA { value 259; description "Digital Object Architecture"; reference "draft-durand-doa-over-dns"; } enum AMTRELAY { value 260; description "Automatic Multicast Tunneling Relay"; reference "RFC 8777"; } enum TA { value 32768; description "DNSSEC Trust Authorities"; reference "- Sam Weiler - http://cameo.library.cmu.edu/ - http://www.watson.org/~weiler/INI1999-19.pdf"; } enum DLV { value 32769; status obsolete; description "DNSSEC Lookaside Validation (OBSOLETE)"; reference "- RFC 8749 - RFC 4431"; } } description "This enumeration type defines mnemonic names and corresponding numeric values of DNS resource record types."; reference "- RFC 6895: Domain Name System (DNS) IANA Considerations - RFC 1035: Domain names - implementation and specification"; } typedef rr-type { type union { type uint16; type rr-type-name; } description "This type allows reference to a DNS resource record type using either the assigned mnemonic name or numeric value."; } }