Skip to content
QKQuickKit日本語
DNSLOCALRuns in your browser

SRV Record Builder

Generate and validate a DNS SRV record from service, protocol, priority, weight, port, and target fields.

This tool handles input and primary processing in your browser and is designed not to send the input to QuickKit’s server.

SRV record

How it works

Builds an SRV presentation record. Clients first use the lowest reachable priority; within one priority, weight gives relative selection probability, so this tool does not simulate a live selection. All three numeric fields are unsigned 16-bit values. A target of `.` means the service is unavailable; using zero priority, weight, and port keeps such a record easy to read (RFC 2782). Service and Protocol are validated by different rules. Service follows the RFC 6335 §5.1 service-name syntax, which §5.2 makes mandatory for the SRV Service label: 1–15 letters, digits or hyphens with at least one letter, no leading, trailing or adjacent hyphens. Protocol follows RFC 2782 as updated by RFC 8553 §3.1: the symbolic protocol name with `_` prepended, case-insensitive, and its registration in the IANA Underscored and Globally Scoped DNS Node Names registry is a SHOULD — the RFCs put no further syntax rule on it. As a QuickKit input policy the protocol is limited to a 1–62-character LDH label (letters, digits, hyphens not at either end) so that `_` + label fits a DNS label; that limit is not an RFC requirement. For both fields a leading `_` is optional, the record is emitted in lower case, and an unregistered name is accepted because registration is recommended, not required, in both registries. `_tcp` and `_udp` are the values RFC 2782 calls most useful; `_tcp`, `_udp`, `_sctp` and `_dccp` are the registry's SRV entries that cite RFC 2782, and the registry also holds other SRV global underscored names such as `_sip` and `_xmpp`. Names are treated as absolute. Domain is the Name suffix of the `_Service._Proto.Name` owner (RFC 2782), written in RFC 1035 §5.1 presentation syntax: any label octet is legal, so `-`, `_`, `\.`, `\032` and other `\DDD` escapes are accepted and re-encoded canonically. An asterisk label such as `*.example.com` is accepted as the suffix too: the built owner `_sip._tcp.*.example.com.` is not a wildcard domain name, because RFC 4592 judges that by the leftmost label, which is `_sip` (RFC 4592 §4.5 uses exactly this SRV case) — unlike a CAA owner `*.example.com`, where the asterisk label is leftmost and the owner is a wildcard. The complete owner, `_service._proto` labels included, must fit 255 octets. The target must be a host name without escapes, and a single label needs a trailing dot. `xn--` labels are passed through without IDNA validation. TTL is 0–2147483647 (RFC 2181).