Expand description
Support for handling DNS resource records for dialing by EndpointId.
Dialing by EndpointId is supported by iroh endpoints publishing Pkarr records to DNS
servers or the Mainline DHT. This module supports creating and parsing these records.
DNS records are published under the following names:
_iroh.<z32-endpoint-id>.<origin-domain> TXT
-
_irohis the record name as defined byIROH_TXT_NAME. -
<z32-endpoint-id>is the z-base-32 encoding of theEndpointId. -
<origin-domain>is the domain name of the publishing DNS server,N0_DNS_ENDPOINT_ORIGIN_PRODis the server operated by number0 for production.N0_DNS_ENDPOINT_ORIGIN_STAGINGis the server operated by number0 for testing. -
TXTis the DNS record type.
The returned TXT records must contain a string value of the form key=value as defined
in RFC1464. The following attributes are defined:
-
relay=<url>: The homeRelayUrlof this endpoint. -
addr=<addr> <addr>: A space-separated list of sockets addresses for this iroh endpoint. Each address is an IPv4 or IPv6 address with a port.
Structs§
- Endpoint
Data - Data about an endpoint that may be published to and resolved from discovery services.
- Endpoint
Info - Information about an endpoint that may be published to and resolved from discovery services.
- MaxLength
Exceeded Error - Error returned when an input value is too long for
UserData. - User
Data - Under the hood this is a UTF-8 String is no longer than
UserData::MAX_LENGTHbytes.
Enums§
Constants§
- IROH_
TXT_ NAME - The DNS name for the iroh TXT record.
Traits§
- Endpoint
IdExt - Extension methods for
EndpointIdto encode to and decode from [z32], which is the encoding used in [pkarr] domain names.