How to Add a Domain Name to Your Minecraft Server

If you're running a Minecraft server and sharing it with friends or a community, typing an IP address like 192.168.1.105:25565 every time is clunky. A custom domain name — something like play.yourserver.com — makes your server easier to remember, more professional, and simpler to share. Here's exactly how that process works, and what determines whether it's straightforward or more involved for your specific setup.

What Actually Happens When You Use a Domain for Minecraft

Minecraft servers don't natively "know" about domain names. What actually happens is your domain's DNS (Domain Name System) translates a human-readable address into the IP address of your server. When a player types your domain into Minecraft's multiplayer menu, their computer silently queries DNS, gets the IP, and connects — all in a fraction of a second.

There are two DNS record types used for this:

  • A Record — Maps a domain directly to an IPv4 address (e.g., play.yourserver.com123.45.67.89)
  • SRV Record — Maps a domain to a specific IP and port, which lets you use a non-standard port without players having to type it manually

Understanding the difference matters depending on what port your server runs on.

Step 1: Know Your Server's IP Address and Port

Before touching any DNS settings, confirm two things:

  1. Your server's public IP address — This is the external IP, not your local network address. If you're self-hosting, search "what is my IP" from the machine running the server. If you're using a hosting provider, this is in your control panel.
  2. Your server's port — Minecraft's default port is 25565. If your server runs on this default port, an A record alone can work. If it runs on a different port (common with shared hosting), you'll need an SRV record.

⚠️ If your IP address changes regularly (common with home internet connections), you'll need a Dynamic DNS (DDNS) service to keep the domain pointing at the right place. More on that below.

Step 2: Access Your Domain's DNS Settings

Your DNS records are managed wherever you registered or host your domain — common providers include Namecheap, Cloudflare, GoDaddy, Google Domains (now Squarespace Domains), and others. Log into that provider's dashboard and find the DNS management or Zone Editor section.

Step 3: Create the Right DNS Records

Option A — Default Port (25565): Use an A Record

If your server runs on port 25565, a basic A record is sufficient:

Record TypeHost/NameValueTTL
Aplay123.45.67.89300–3600

The Host field is your subdomain (e.g., play creates play.yourserver.com). Use @ if you want the root domain itself to point to the server.

Option B — Custom Port: Use an SRV Record

If your server runs on a non-standard port, an SRV record handles both the IP routing and the port. You'll typically still need an A record pointing a subdomain to the IP, then an SRV record pointing to that subdomain.

Record TypeNamePriorityWeightPortTarget
Amc123.45.67.89
SRV_minecraft._tcp.play0519132mc.yourserver.com

The SRV record name format is always _minecraft._tcp.[subdomain]. The port field should match your actual server port. Priority and weight values of 0 and 5 are standard defaults.

🔧 Each DNS provider formats these fields slightly differently — some split priority/weight into separate boxes, others combine them. Check your provider's documentation if the layout looks unfamiliar.

Step 4: Wait for DNS Propagation

DNS changes don't apply instantly. Propagation — the time it takes for the change to spread across DNS servers globally — typically takes anywhere from a few minutes to 48 hours, depending on the TTL (Time to Live) values and your provider. Setting a lower TTL (like 300 seconds) before making changes speeds this up.

You can check propagation progress using tools like nslookup in a terminal or online DNS lookup tools.

The Variables That Affect How This Works for You

Not every Minecraft server setup leads to the same experience. Several factors shape how straightforward this process is:

Hosting type matters significantly. A managed Minecraft hosting provider often gives you a subdomain automatically and may have a simplified domain-mapping tool built into the control panel. Self-hosting on a home network or a VPS means you're handling DNS entirely yourself.

Static vs. dynamic IP changes everything. Home internet connections usually have dynamic IPs that change periodically. If your IP changes, your A record becomes invalid overnight. DDNS services (like DuckDNS or No-IP) automatically update your DNS record when your IP changes, but they add a layer of complexity and a dependency on a third-party service.

Java vs. Bedrock Edition use different defaults. Java Edition uses port 25565 by default. Bedrock Edition uses 19132 (UDP). If you're running a Bedrock or cross-play server, your SRV record structure and port values will differ, and not all DNS setups handle UDP-based SRV records the same way across clients.

Domain provider interfaces vary. Some providers make SRV records easy to configure; others bury them or have non-standard field naming. Your technical comfort level and the quality of your provider's UI will affect how smooth this feels.

Subdomain vs. root domain. Using a subdomain like play.yourserver.com is generally recommended — it keeps your main domain free for a website and makes future changes cleaner. Using the root domain directly is possible but can create conflicts if you also host a website.

What This Means in Practice 🎮

For a player on a managed host running Java Edition on port 25565 with a static IP, this process might take ten minutes — create an A record, wait for propagation, done. For someone self-hosting on a home connection running Bedrock with a dynamic IP and a domain provider with a confusing interface, it's a meaningfully more involved project involving DDNS setup, SRV configuration, and router port forwarding on top of DNS changes.

The mechanics are consistent. What changes is how many layers your specific setup adds between "I want a domain" and "the domain works reliably."