Pointing your domain at your AndroHost server (play.mydomain.com)
Pointing your domain at your AndroHost server (play.mydomain.com)
Telling friends "the server is at 192.0.2.15:25577" is fine, until they forget it or it changes. A friendly address like play.myserver.com is durable and pleasant. The mechanics are slightly different from a normal website's DNS, which is why this trips people up.
This article walks you through the setup end-to-end as an AndroHost customer.
What you need before you start
- Your AndroHost server's address and port. Open the panel, go to your server, the connection info is on the main page. It looks something like
wings-paid01.androhost.com:25577or a similar host:port. Write that down. - A domain name you own. If you don't have one yet, register one anywhere (Cloudflare Registrar, Namecheap, Porkbun — all fine). Around $12/year for a
.com. - Access to your domain's DNS panel. Usually wherever you registered the domain. Cloudflare is the most common; the screenshots below assume Cloudflare but other providers are nearly identical.
Once you have those three things, this whole setup takes about five minutes plus DNS propagation time.
Why SRV records exist
A normal DNS A record maps a name to an IP. play.myserver.com → 192.0.2.15.
But your Minecraft server is on 192.0.2.15:25577. The port is not just 25565 (default). Players entering play.myserver.com in their game client would try the default port and fail.
You could tell players "use play.myserver.com:25577," but they'll forget the port. Most game clients also strip the port when adding to the server list.
SRV records solve this. They map a service name (not just a hostname) to a hostname AND port. With an SRV record, players just type play.myserver.com and the client looks up where the actual server is.
The SRV record format
Different DNS providers expose this slightly differently. The underlying record looks like:
_minecraft._tcp.play.myserver.com. IN SRV 0 10 25577 origin.myserver.com.
Breakdown:
_minecraft._tcp.play.myserver.com.— service name prefix (_minecraft), protocol (_tcp), then your domain.IN SRV— record class and type.0— priority. Lower is more preferred.10— weight. Used for load balancing among equal-priority records.25577— port the game server is actually on.origin.myserver.com.— the hostname (which has its own A record pointing to the IP).
The origin.myserver.com part can be the IP host's hostname directly. Some setups have:
A record: origin.myserver.com → 192.0.2.15
SRV record: _minecraft._tcp.play.myserver.com → origin.myserver.com:25577
Players type play.myserver.com. Client looks up SRV, finds the port and hostname. Looks up A record for the hostname, gets the IP. Connects.
Setup in common DNS providers
Cloudflare
DNS panel → Add Record → SRV. Cloudflare's UI asks for service (_minecraft), protocol (_tcp), name (play), priority, weight, port, target.
Don't enable proxying for SRV records. They must be DNS-only.
Namecheap
Domain list → Advanced DNS → New Record → SRV. Fields are similar.
Other providers
Most have an "SRV" record type. The fields are universal once you find them.
If your provider's UI is confusing about what goes in each field, fall back to entering the full SRV format and let the UI parse it.
Game-specific service names
The _minecraft._tcp part is specific to Java Minecraft. Other games use different conventions:
- Minecraft Java:
_minecraft._tcp.<your-domain> - Minecraft Bedrock: Bedrock has nuanced SRV behavior, look up current standards.
- Valheim: Valheim doesn't use SRV. Players type IP directly or use Steam server browser.
- Vintage Story: No SRV support in the base game.
- Eco: No SRV support.
For non-Minecraft games, give players the hostname:port directly. Modern clients usually accept hostnames in place of IPs, and you still benefit from being able to change the underlying IP without telling everyone.
Subdomains and multiple servers
A pattern that works for communities running multiple servers:
play.myserver.com → SRV → origin:25565 (main SMP)
events.myserver.com → SRV → origin:25575 (events server)
test.myserver.com → SRV → origin:25585 (test server)
Players don't need to remember ports. They remember the friendly subdomain.
Common mistakes
Putting the SRV target as the IP, not a hostname.
SRV targets must be hostnames, not IPs. Create an A record first, then point SRV at it.
Enabling Cloudflare proxy on the SRV.
SRV records must be DNS-only. Cloudflare's proxy doesn't work for arbitrary game protocols (it works for HTTP, sometimes via Spectrum for TCP).
Including the port in the A record's value.
A records don't have ports. Only SRV records do.
Wrong service prefix.
_minecraft._tcp for Java. Anything else won't be recognized.
TTL too high during setup.
Use a low TTL (300 seconds or less) while you're testing. Once it works, you can raise it.
Verifying SRV is working
After creating the record, verify with a DNS lookup tool:
dig SRV _minecraft._tcp.play.myserver.com
Or use a web-based SRV record checker (search "SRV record check").
If it returns the right host:port, you're done. Tell players the friendly hostname.
When SRV doesn't work
Sometimes players can't connect via SRV but can via direct hostname:port. Causes:
- Their client is outdated. Pre-1.3 Minecraft Java didn't support SRV.
- Their DNS resolver is being weird (some ISPs strip SRV). Switching DNS (Cloudflare's 1.1.1.1, Google's 8.8.8.8) fixes this.
- The SRV record is set up wrong. Use
digto confirm.
Fallback: always have the direct hostname:port available too, for players whose SRV doesn't work.
The "I want to change my IP" benefit
The real win of using a custom domain with SRV: when your underlying server changes IPs (you migrated to a new host, your home IP rotated), you update the A record. Players keep using the same friendly hostname.
For paid hosting where you might switch providers eventually: this is reason enough to set up a domain from day one.
The five-step AndroHost setup
Concretely, with your AndroHost host:port from the panel (wings-paid01.androhost.com:25577 for example):
- Buy your domain ($10-$15/year, anywhere).
- Set up free DNS at Cloudflare (or wherever you registered).
- CNAME record:
origin.myserver.com → wings-paid01.androhost.com(point your origin name at the AndroHost host). On Cloudflare, set proxy off (orange cloud → grey cloud). - SRV record:
_minecraft._tcp.play.myserver.com → origin.myserver.comwith port25577(your actual port from the panel). - Tell players:
play.myserver.com. No port. Just the name.
Annual cost: about $12. Players never see a port number again.
Why CNAME instead of A record?
If you point an A record directly at our IP and we ever change the underlying server IP (during a hardware upgrade, a migration, etc.), your domain breaks. With a CNAME at our hostname, we handle the IP change behind the scenes and your domain just works. Always prefer the CNAME pattern for managed-hosting setups.
A note on subdomain organization
If your community runs both a Minecraft server and other web services (a forum, a wiki, a status page), keeping subdomains tidy helps:
www.myserver.com → website
forum.myserver.com → forum software
status.myserver.com → uptime page
play.myserver.com → game server (via SRV)
events.myserver.com → events game server (via SRV)
This isn't required but pays off over time.
Conclusion
SRV records are the small DNS detail that makes game-server domains work. The setup is a few minutes per record. The payoff is friendly hostnames, IP changes that don't break anything, and the ability to host multiple game services on a single domain.
If your players are still typing IPs and ports, set this up this weekend.
Hosting your game server with AndroHost means we handle most of what's in this post for you automatically: tier sizing, SRV records, off-site backups, DDoS protection.
Keep reading
CPU vs GPU, a plain-English guide to how chips do math
What CPUs and GPUs actually do when they crunch numbers, why the differences matter, and how to pick the right chip for a workload.
Using your AndroHost database with plugins like LuckPerms
Every paid AndroHost server includes a real MariaDB database for plugins that need one. Here is how to set it up and connect.
Why your server's IP being public is fine, and when it isn't
A game server has an IP address. Players connect to it. The IP is, by definition, reachable from the internet. Many server owners feel uneasy about their IP being known, often because they don't know what risk it actually represents.