Visual RFC.
ALL RFCs / RFC 9460
Read the RFC ↗

RFC 9460 / START HERE

SVCB and HTTPS records, before the details

SVCB means Service Binding. HTTPS is a DNS record type here, distinct from an HTTPS web request.

A normal address lookup tells a client where a host can be reached. RFC 9460 lets DNS describe alternative service endpoints together with each endpoint’s protocol, port and other connection parameters. The client can learn this before opening the connection.

Why it exists

Priority zero delegates discovery to another DNS name; a positive priority describes an endpoint. A client checks required parameters before choosing an alternative, keeps each record’s settings together and still authenticates the original HTTPS service.

A familiar example

For example, a browser visiting https://example.com can query its HTTPS DNS records, learn about edge.example.net on port 8443 with HTTP/3 support, and resolve that target’s addresses. The chapters show the bytes, aliases, compatibility checks, protocol hints and failure rules. All examples are inert and fictional.

Helpful background

You can start here without reading another RFC. If these ideas are unfamiliar, these short introductions may help.

What you’ll learn next

Begin with chapter one, or choose a topic.

  1. Discover more than an addressA and AAAA records supply addresses. SVCB and HTTPS records bind service endpoints to connection instructions.
  2. Read the RDATA bytesTwo priority octets and an uncompressed DNS name precede sorted key-length-value parameters.
  3. Follow aliases within one serviceAliasMode delegates service discovery. It does not alias every record type at the name.
  4. Choose compatible bound recordsA low priority is useful only if the client can use the entire record.
  5. Use protocol and address hintsALPN hints select possible transports; address hints can start a connection while normal address queries continue.
  6. Keep origin security and fallback rulesAlternative connection coordinates do not change the HTTPS identity the client must authenticate.
Start with chapter one →

This introduction explains RFC 9460 (2023). Read the original RFC ↗