Enum kubizone_common::Type

source ·
pub enum Type {
Show 47 variants A, AAAA, AFSDB, APL, CAA, CDNSKEY, CDS, CERT, CNAME, CSYNC, DHCID, DLV, DNAME, DNSKEY, DS, EUI48, EUI64, HINFO, HIP, HTTPS, IPSECKEY, KEY, KX, LOC, MX, NAPTR, NS, NSEC, NSEC3, NSEC3PARAM, OPENPGPKEY, PTR, RRSIG, RP, SIG, SMIMEA, SOA, SRV, SSHFP, SVCB, TA, TKEY, TLSA, TSIG, TXT, URI, ZONEMD,
}
Expand description

Domain Name System type.

Variants§

§

A

Address record

Returns a 32-bit IPv4 address, most commonly used to map hostnames to an IP address of the host, but it is also used for DNSBLs, storing subnet masks in RFC 1101, etc.

1035

§

AAAA

IPv6 address record

Returns a 128-bit IPv6 address, most commonly used to map hostnames to an IP address of the host.

3596

§

AFSDB

AFS database record

Location of database servers of an AFS cell. This record is commonly used by AFS clients to contact AFS cells outside their local domain. A subtype of this record is used by the obsolete DCE/DFS file system.

1183

§

APL

Address Prefix List

Specify lists of address ranges, e.g. in CIDR format, for various address families. Experimental.

3123

§

CAA

Certification Authority Authorization

DNS Certification Authority Authorization, constraining acceptable CAs for a host/domain

6844

§

CDNSKEY

Child copy of DNSKEY record, for transfer to parent

7344

§

CDS

Child DS

Child copy of DS record, for transfer to parent

7344

§

CERT

Certificate record

Stores PKIX, SPKI, PGP, etc.

4398

§

CNAME

Canonical name record

Alias of one name to another: the DNS lookup will continue by retrying the lookup with the new name.

1035

§

CSYNC

Child-to-Parent Synchronization

Specify a synchronization mechanism between a child and a parent DNS zone. Typical example is declaring the same NS records in the parent and the child zone

7477

§

DHCID

DHCP identifier

Used in conjunction with the FQDN option to DHCP

4701

§

DLV

DNSSEC Lookaside Validation record

For publishing DNSSEC trust anchors outside of the DNS delegation chain. Uses the same format as the DS record. RFC 5074 describes a way of using these records.

4431

§

DNAME

Delegation name record

Alias for a name and all its subnames, unlike CNAME, which is an alias for only the exact name. Like a CNAME record, the DNS lookup will continue by retrying the lookup with the new name.

6672

§

DNSKEY

DNS Key record

The key record used in DNSSEC. Uses the same format as the KEY record.

4034

§

DS

Delegation signer

The record used to identify the DNSSEC signing key of a delegated zone

4034

§

EUI48

MAC address (EUI-48)

A 48-bit IEEE Extended Unique Identifier.

7043

§

EUI64

MAC address (EUI-64)

A 64-bit IEEE Extended Unique Identifier.

7043

§

HINFO

Host Information

Providing Minimal-Sized Responses to DNS Queries That Have QTYPE=ANY

8482

§

HIP

Host Identity Protocol

Method of separating the end-point identifier and locator roles of IP addresses.

8005

§

HTTPS

HTTPS Binding

RR that improves performance for clients that need to resolve many resources to access a domain.

9460

§

IPSECKEY

IPsec Key

Key record that can be used with IPsec

4025

§

KEY

Key record

Used only for SIG(0) (RFC 2931) and TKEY (RFC 2930).[5] RFC 3445 eliminated their use for application keys and limited their use to DNSSEC.[6] RFC 3755 designates DNSKEY as the replacement within DNSSEC.[7] RFC 4025 designates IPSECKEY as the replacement for use with IPsec.[8]

2535 2930

§

KX

Key Exchanger record

Used with some cryptographic systems (not including DNSSEC) to identify a key management agent for the associated domain-name. Note that this has nothing to do with DNS Security. It is Informational status, rather than being on the IETF standards-track. It has always had limited deployment, but is still in use.

2230

§

LOC

Location record

Specifies a geographical location associated with a domain name

1876

§

MX

Mail exchange record

List of mail exchange servers that accept email for a domain

1035 7505

§

NAPTR

Naming Authority Pointer

Allows regular-expression-based rewriting of domain names which can then be used as URIs, further domain names to lookups, etc.

3403

§

NS

Name server record

Delegates a DNS zone to use the given authoritative name servers

1035

§

NSEC

Next Secure record

Part of DNSSEC—used to prove a name does not exist. Uses the same format as the (obsolete) NXT record.

4034

§

NSEC3

Next Secure record version 3

An extension to DNSSEC that allows proof of nonexistence for a name without permitting zonewalking

5155

§

NSEC3PARAM

NSEC3 parameters

Parameter record for use with NSEC3

5155

§

OPENPGPKEY

OpenPGP public key record

A DNS-based Authentication of Named Entities (DANE) method for publishing and locating OpenPGP public keys in DNS for a specific email address using an OPENPGPKEY DNS resource record.

7929

§

PTR

PTR Resource Record

Pointer to a canonical name. Unlike a CNAME, DNS processing stops and just the name is returned. The most common use is for implementing reverse DNS lookups, but other uses include such things as DNS-SD.

1035

§

RRSIG

DNSSEC signature

Signature for a DNSSEC-secured record set. Uses the same format as the SIG record.

4034

§

RP

Responsible Person

Information about the responsible person(s) for the domain. Usually an email address with the @ replaced by a .

1183

§

SIG

Signature

Signature record used in SIG(0) (RFC 2931) and TKEY (RFC 2930).[7] RFC 3755 designated RRSIG as the replacement for SIG for use within DNSSEC.[7]

2535

§

SMIMEA

S/MIME cert association

Associates an S/MIME certificate with a domain name for sender authentication.

8162

§

SOA

Start of [a zone of] authority record

Specifies authoritative information about a DNS zone, including the primary name server, the email of the domain administrator, the domain serial number, and several timers relating to refreshing the zone.

1035 2308

§

SRV

Service locator

Generalized service location record, used for newer protocols instead of creating protocol-specific records such as MX.

2782

§

SSHFP

SSH Public Key Fingerprint

Resource record for publishing SSH public host key fingerprints in the DNS, in order to aid in verifying the authenticity of the host. RFC 6594 defines ECC SSH keys and SHA-256 hashes. See the IANA SSHFP RR parameters registry for details.

4255

§

SVCB

Service Binding

RR that improves performance for clients that need to resolve many resources to access a domain.

9460

§

TA

DNSSEC Trust Authorities

Part of a deployment proposal for DNSSEC without a signed DNS root. See the IANA database and Weiler Spec for details. Uses the same format as the DS record.

§

TKEY

Transaction Key record

A method of providing keying material to be used with TSIG that is encrypted under the public key in an accompanying KEY RR.[12]

2930

§

TLSA

TLSA certificate association

A record for DANE. RFC 6698 defines “The TLSA DNS resource record is used to associate a TLS server certificate or public key with the domain name where the record is found, thus forming a ‘TLSA certificate association’”.

6698

§

TSIG

Transaction Signature

Can be used to authenticate dynamic updates as coming from an approved client, or to authenticate responses as coming from an approved recursive name server[13] similar to DNSSEC.

2845

§

TXT

Text record

Originally for arbitrary human-readable text in a DNS record. Since the early 1990s, however, this record more often carries machine-readable data, such as specified by RFC 1464, opportunistic encryption, Sender Policy Framework, DKIM, DMARC, DNS-SD, etc.

1035

§

URI

Uniform Resource Identifier

Can be used for publishing mappings from hostnames to URIs.

7553

§

ZONEMD

Message Digests for DNS Zones

Provides a cryptographic message digest over DNS zone data at rest.

8976

Implementations§

source§

impl Type

source

pub fn is_a(&self) -> bool

source

pub fn is_aaaa(&self) -> bool

source

pub fn is_afsdb(&self) -> bool

source

pub fn is_apl(&self) -> bool

source

pub fn is_caa(&self) -> bool

source

pub fn is_cdnskey(&self) -> bool

source

pub fn is_cds(&self) -> bool

source

pub fn is_cert(&self) -> bool

source

pub fn is_cname(&self) -> bool

source

pub fn is_csync(&self) -> bool

source

pub fn is_dhcid(&self) -> bool

source

pub fn is_dlv(&self) -> bool

source

pub fn is_dname(&self) -> bool

source

pub fn is_dnskey(&self) -> bool

source

pub fn is_ds(&self) -> bool

source

pub fn is_eui48(&self) -> bool

source

pub fn is_eui64(&self) -> bool

source

pub fn is_hinfo(&self) -> bool

source

pub fn is_hip(&self) -> bool

source

pub fn is_https(&self) -> bool

source

pub fn is_ipseckey(&self) -> bool

source

pub fn is_key(&self) -> bool

source

pub fn is_kx(&self) -> bool

source

pub fn is_loc(&self) -> bool

source

pub fn is_mx(&self) -> bool

source

pub fn is_naptr(&self) -> bool

source

pub fn is_ns(&self) -> bool

source

pub fn is_nsec(&self) -> bool

source

pub fn is_nsec3(&self) -> bool

source

pub fn is_nsec3param(&self) -> bool

source

pub fn is_openpgpkey(&self) -> bool

source

pub fn is_ptr(&self) -> bool

source

pub fn is_rrsig(&self) -> bool

source

pub fn is_rp(&self) -> bool

source

pub fn is_sig(&self) -> bool

source

pub fn is_smimea(&self) -> bool

source

pub fn is_soa(&self) -> bool

source

pub fn is_srv(&self) -> bool

source

pub fn is_sshfp(&self) -> bool

source

pub fn is_svcb(&self) -> bool

source

pub fn is_ta(&self) -> bool

source

pub fn is_tkey(&self) -> bool

source

pub fn is_tlsa(&self) -> bool

source

pub fn is_tsig(&self) -> bool

source

pub fn is_txt(&self) -> bool

source

pub fn is_uri(&self) -> bool

source

pub fn is_zonemd(&self) -> bool

Trait Implementations§

source§

impl Clone for Type

source§

fn clone(&self) -> Type

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for Type

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Default for Type

source§

fn default() -> Type

Returns the “default value” for a type. Read more
source§

impl<'de> Deserialize<'de> for Type

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Display for Type

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Hash for Type

source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
source§

impl JsonSchema for Type

source§

fn schema_name() -> String

The name of the generated JSON Schema. Read more
source§

fn schema_id() -> Cow<'static, str>

Returns a string that uniquely identifies the schema produced by this type. Read more
source§

fn json_schema(gen: &mut SchemaGenerator) -> Schema

Generates a JSON Schema for this type. Read more
source§

fn is_referenceable() -> bool

Whether JSON Schemas generated for this type should be re-used where possible using the $ref keyword. Read more
source§

impl Ord for Type

source§

fn cmp(&self, other: &Type) -> Ordering

This method returns an Ordering between self and other. Read more
1.21.0 · source§

fn max(self, other: Self) -> Self
where Self: Sized,

Compares and returns the maximum of two values. Read more
1.21.0 · source§

fn min(self, other: Self) -> Self
where Self: Sized,

Compares and returns the minimum of two values. Read more
1.50.0 · source§

fn clamp(self, min: Self, max: Self) -> Self
where Self: Sized + PartialOrd,

Restrict a value to a certain interval. Read more
source§

impl PartialEq for Type

source§

fn eq(&self, other: &Type) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl PartialOrd for Type

source§

fn partial_cmp(&self, other: &Type) -> Option<Ordering>

This method returns an ordering between self and other values if one exists. Read more
1.0.0 · source§

fn lt(&self, other: &Rhs) -> bool

This method tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · source§

fn le(&self, other: &Rhs) -> bool

This method tests less than or equal to (for self and other) and is used by the <= operator. Read more
1.0.0 · source§

fn gt(&self, other: &Rhs) -> bool

This method tests greater than (for self and other) and is used by the > operator. Read more
1.0.0 · source§

fn ge(&self, other: &Rhs) -> bool

This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more
source§

impl Serialize for Type

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more
source§

impl Copy for Type

source§

impl Eq for Type

source§

impl StructuralPartialEq for Type

Auto Trait Implementations§

§

impl Freeze for Type

§

impl RefUnwindSafe for Type

§

impl Send for Type

§

impl Sync for Type

§

impl Unpin for Type

§

impl UnwindSafe for Type

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where T: Copy,

source§

unsafe fn clone_to_uninit(&self, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
source§

impl<T> CloneToUninit for T
where T: Clone,

source§

default unsafe fn clone_to_uninit(&self, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
source§

impl<T> DynClone for T
where T: Clone,

source§

fn __clone_box(&self, _: Private) -> *mut ()

source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T> ToString for T
where T: Display + ?Sized,

source§

default fn to_string(&self) -> String

Converts the given value to a String. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,