DNS & Networking Utilities

DNS SRV Record Generator

Build syntax-compliant Service DNS records. Configure priorities, weights, target domains, and port mappings visually.

Network engineers, server administrators, and DevOps coordinators publish SRV records to map service hosts to specific network ports. This local form generator compiles BIND record strings without manual formatting mistakes. When to use it: When setting up directory synchronizations, configuring SIP VOIP networks, hosting game servers, or linking Office 365 suites. What it solves: Avoids missing leading underscores, incorrect priority weights, and target domain resolution breaks. Why it matters: RFC-compliant DNS zone files require strict space separators and trailing dots to resolve canon FQDN hostnames.

SRV Parameters

BIND / DNS Zone Record

 

General DNS provider Settings

Hostname / Host Type Priority Weight Port Target
_minecraft._tcp SRV 0 5 25565 mc.mysite.com.

How DNS SRV Records Resolve

This builder generates BIND zone outputs and parameter settings. The validation logic structures the record naming conventions in compliance with RFC standards.

An SRV record hostname combines the service name, protocol, and domain namespace separated by dots (e.g. _service._proto.name.). When a client application (like a VOIP client or game) queries this path, the DNS resolver returns the priority and load-balancing weights. The client uses the lowest priority server, mapping the specific port to initiate connection channels, eliminating port configuration requirements on client devices.

Before & After SRV Implementation Examples

❌ Before (Standard domain A record only)

A records only map hostnames to IP addresses, requiring users to manually input port numbers to connect.

mc.example.com. IN A 192.0.2.1
;; Users must connect to: mc.example.com:25565

✅ After (Active SRV port mapping)

Publishing SRV records maps ports automatically. Clients resolve the port behind the scenes.

_minecraft._tcp.example.com. 3600 IN SRV 0 5 25565 mc.example.com.
;; Users connect to: example.com (automatic port map)

Industry Use Cases

Developer Workflows SEO Strategies Operations & Teams
Configure custom port directions for multiplayer game nodes. Audit domain DNS records to verify support for Office 365 or directory sync configs. Implement DNS-level load balancing across multiple service endpoints.
Generate BIND syntax records for virtual private servers (VPS). Verify SRV record lookups before launching new VoIP or chat platforms. Establish priority failover servers for corporate directory synchronization.

Common DNS SRV Mistakes

Omitting Leading Underscores

Forgetting underscores on the service or protocol names (e.g. writing minecraft instead of _minecraft) makes the record invalid, preventing clients from resolving it.

Pointing to IP Addresses Directly

Listing a raw IP address (e.g. 192.0.2.1) as the target instead of a canonical DNS hostname (e.g. mc.mysite.com) violates RFC 2782 and causes resolution failures.

DNS SRV Best Practices

  • Terminate Hostnames with Dots: Always end the target host with a trailing dot (e.g. target.com.) in BIND zone file templates.
  • Set Correct Weightings: Assign weights carefully (e.g. 80 vs 20) to balance traffic loads across identical priority nodes.
  • Declare Canonical Targets: Point SRV records only to standard A or AAAA records, never to CNAME aliases.
  • Verify Port Numbers: Double-check port parameters to match your server configuration.

Frequently Asked Questions

What is a DNS SRV record and what is it used for?

An SRV (Service) record is a type of DNS record that specifies the hostname and port number for specific services (like SIP, LDAP, Minecraft, or email directory syncs). Unlike standard A or AAAA records which only map hostnames to IP addresses, SRV records allow systems to locate specific server ports dynamically, enabling service-specific routing.

Why do service and protocol names start with an underscore?

The DNS SRV specification (RFC 2782) requires service names (e.g. _minecraft) and protocols (e.g. _tcp) to start with an underscore. This prevents naming collisions with standard subdomains or hostnames (like tcp.example.com) and lets resolvers identify that the DNS record represents a structured service mapping.

How do priority and weight parameters differ in SRV records?

Priority (a value from 0 to 65535) dictates the preferred server; clients must query the target with the lowest priority number first. Weight (from 0 to 65535) defines load balancing for targets sharing the same priority level. A target with a weight of 10 receives double the traffic of a target with a weight of 5.

Do I need to end the target host with a dot in the zone file?

Yes, in standard BIND zone file syntax, target hostnames must terminate with a trailing dot (e.g. host.mysite.com.). The trailing dot signifies that the host is a Fully Qualified Domain Name (FQDN). Omitting the dot causes the DNS server to append your root domain to the host, resulting in lookup failures.

How do I generate an SRV record for a Minecraft server?

For a Minecraft server, set the Service to "_minecraft", the Protocol to "_tcp", the Port to "25565" (or your custom port), specify the Priority and Weight (typically 0 and 5), and enter the FQDN of your server host (e.g. mc.example.com) as the target.

What happens if a client queries a server with priority 0 and weight 0?

Priority 0 makes the server the first target requested. A weight of 0 indicates that no load balancing should occur; if it is the only target at that priority level, it receives all queries. If multiple targets share priority 0, weight 0 targets are queried last.

Can I point an SRV record directly to an IP address?

No, RFC 2782 specifies that the target field inside an SRV record must point to a valid canonical DNS hostname (A or AAAA record). Pointing an SRV record directly to a numeric IP address violates DNS standards and will cause client query failures.