Default ports
| Service | Default port | Protocol | Setting |
|---|---|---|---|
| Java Edition game and status | 25565 | TCP | server-port |
| Java Edition query (off by default) | Same as the game port, 25565 | UDP | enable-query, query.port |
| Java Edition RCON (off by default) | 25575 | TCP | enable-rcon, rcon.port |
| Java Edition management protocol (off by default) | Set by the server owner | TCP | management-server-enabled, management-server-port |
| Bedrock Dedicated Server, IPv4 | 19132 | UDP | server-port |
| Bedrock Dedicated Server, IPv6 | 19133 | UDP | server-portv6 |
Java settings are in server.properties (Java Edition 26.3). Bedrock settings are in Bedrock Dedicated Server’s own server.properties, which uses different keys.
SRV records (Java Edition)
An SRV record lets players connect to a server on a non-default port without typing the port. When someone enters play.example.com, the Java client first looks up an SRV record for _minecraft._tcp.play.example.com. Most DNS providers ask for these fields:
| Field | Example | Meaning |
|---|---|---|
| Name | _minecraft._tcp.play | Service, protocol and the address players type (some providers have separate Service and Protocol fields: _minecraft and _tcp) |
| Priority | 0 | With a single server, any value works |
| Weight | 5 | With a single server, any value works |
| Port | 25566 | The port the server really uses |
| Target | mc1.example.com | The host name of the machine. It needs its own A or AAAA record; an SRV record can’t point straight at an IP address. |
In a zone file the same record is written as one line:
_minecraft._tcp.play 3600 IN SRV 0 5 25566 mc1.example.com.
Bedrock Edition doesn’t use SRV records, so Bedrock players need the port if it isn’t 19132.
Opening ports
- For a Java server at home, forward TCP 25565 (or your custom port) on the router to the server’s local address.
- For Bedrock, forward UDP 19132, and 19133 if players connect over IPv6.
- Don’t forward the RCON port. RCON isn’t encrypted and gives full console access.
- To run several Java servers on one address, give each its own port or put a proxy in front of them.
Server Status checks whether a port is reachable from the internet, using the same defaults and SRV lookup as the game.