How to Connect a Custom Domain to Your Minecraft Server
Create an A record pointing a subdomain at your server's IP, then an SRV record that adds the port. Players can then join with play.example.com instead of 203.0.113.10:25612.
An A record can't carry a port, and Minecraft assumes 25565. The SRV record tells the game which port to use. If your server happens to run on 25565, the A record alone is enough.
Find your IP and port in the Network tab of the Crunchy.Host panel. The examples use Cloudflare, but the same two records work at any DNS provider. To move a domain to Cloudflare, add it on the free plan and replace the nameservers at your registrar with the two Cloudflare gives you.
1. A record
| Field | Value |
|---|---|
| Type | A |
| Name | play |
| IPv4 address | 203.0.113.10 (no port) |
| Proxy status | DNS only (grey cloud) |
2. SRV record
| Field | Value |
|---|---|
| Type | SRV |
| Name | _minecraft._tcp.play |
| Priority | 0 |
| Weight | 5 |
| Port | 25612 (your port) |
| Target | play.example.com |
The name is _minecraft._tcp. plus the subdomain players type. For the bare domain, it's just _minecraft._tcp. The target must be a hostname, never an IP. Some providers split the name into Service, Protocol and Name fields, which works the same way.
3. Test
After a few minutes, add play.example.com in the multiplayer menu. To check the records directly:
nslookup play.example.com
nslookup -type=SRV _minecraft._tcp.play.example.com
Not working
- Timed out: the A record is still proxied. If it isn't, see Connection timed out.
- Only works with the port added: the SRV record is wrong. Check the name, and that you didn't type the full domain into a field that appends it again.
- Bedrock players can't use it: Bedrock ignores SRV records. They need the domain and the port entered separately.
Host your Minecraft server with us.
Ryzen 9 9950X hardware in Frankfurt. Online in under 90 seconds. From €4.00 / mo