This would be great for small server owners because we could host multiple servers on a single IP address on different ports and direct multiple subdomains to each port.
If support for SRV records is added, someone can run multiple servers on the same machine without the player having to enter different ports for each one, they just need to enter the correct domain/subdomain.
This has already been a feature on Java Edition for a long time.
20 Comments
Please sign in to leave a comment.
-
Would it be too much to ask for you to write this in a language that casual server players like myself can understand? Like, explain what the impact on players would be, if any. I'd probably vote if I understood what you were saying.
@MacchuPicchu96 It has nothing to do with players. It's simply lets server owners run multiple servers on the same system but on different ports and seperate domains for each port. For example it would currently be
IP: example.com PORT: 19132
IP: example.com PORT: 19133
But with SRV records we could make it so players can do
IP: example.com PORT: 19132
IP: factions.example.com PORT: 19132 (but it points to example.com 19133)
@UnplayedGames they do have an option for ports.
Hosting Companies are limited by only using the first IP address.
In Java Edition they're many clients who want to use the "Default Port" which is 25565. Luckily, in Java Edition you can define a "server-ip" and multiple IPs can be used on a single server. This allows the ability to use DNS Records for "A Records" or "SRV Records".
In Bedrock Edtion they're many clients who want to use the "Default Port" which is 19132. Unfortunately, in Bedrock Editon you cannot define "server-ip" and only allows the ability to use the first IP address of the server.
The reason why clients sometimes want this is that they can still set up a "Sub Domain" for Bedrock Edition as it points to an IP address using an "A Record" and if they have the default port. Users don't have to change the input of that port.
If a host has a 100 Dedicated Servers and each of them has 5 Dedicated IP addresses, that would potentially be 500 clients using IP:19132 vs. With the current setup you can only do 100 clients using IP:19132 as it's limited by not defining a "server-ip".
SRV Records would also be a plus as this would remove the "Port Field" from the Bedrock Edition, and you could then have the same 100 Dedicated Servers and host single-ip:many ports, but with SRV Support it would hide that port.
TLDR;
- Add server-ip with (IPv4 and IPv6 support) Java has this.
- Remove the port field from Bedrock Editions.
- Add SRV Support
I totally want this because I am going to try to set up a server!
I totally want this because I am going to try to set up a server!
This can already be done by running the server on a docker container. Each container has a different open external port. I'm currently running multiple BDS' this way. It's also more efficient on system resources and backup administration.
Unless I'm mistaken, you can currently do this without too much difficulty. VM's and Docker containers aren't necessary, although they can be tremendously useful to isolate the Minecraft server from other systems for security.
To run multiple instances of BDS from a single machine/IP address, simply:
- Create a new, empty directory for the bedrock_server executable and its supporting subdirectories
- Decompress/unzip the bedrock-server-<versionnumber>.zip file (or copy the files and folder structure from an existing server instance) into that directory.
- Edit/save the server.properties file to change the server-port and server-portv6 values
- Launch the bedrock_server executable from the new directory
As long as the ports chosen in #3 aren't already being used by another BDS instance (or some other application), both should run side-by-side without any issue. I've done it this way and haven't seen any issues or conflicts myself, although it was more for proof-of-concept than actual usage. I haven't actually done any sort of "stress testing" of it.
As GHosaPhat commented, I just make a copy of the bedrock-server directory, call it something else, then edit the server file with the world and optionally the name of the server, and change the ip4/6 ports and then launch the bedrock-server.exe.
The only caveat is that any server I create that is not on the default port won't show up in LAN games. Something to do with the broadcasting or the way the clients listen on the LAN?
Anyway, if you go to servers and add your server manually, IP and port, it connects just fine.
lukeeey21 is the only one here that is correct. Everyone else is talking about something else.
As a server owner I want to have players connect to a subdomain with default port number instead of a custom port number. For example, pvp.mydomain.com instead of mydomain.com port 19133.
Upvote if you think players shouldn't have to worry about port numbers.
Would love to have this on my server.
In response to Steve X Rand, that caveat is a big one when dealing with children. Not seeing all broadcasting lan games means it's hard to switch between game world easily.
The question would be, ¿How come this is still not a feature? PLEASE, add SRV records to the client.
Multiple servers from the same machine would be great, this way I can run different worlds set at different difficulty levels. At the moment only one server is seen on LAN, so machines like the XBox can only see one world.
Quick update, I know you can run separate servers on the same IP using different ports. This is annoying.
You could run them on separate IP addresses and point your subdomains to each IP, but that is just extra cost that you don't need. In Java Edition you can specify a server-ip value in the server.properties which lets you point multiple subdomains to the same IP address while ALSO specifying which port the subdomain should point to. THIS is what an SRV record is.
I feel like half of the comments here say it is already possible because you can run multiple servers on the same machine. But that has nothing to do with a DNS SRV record.
https://en.wikipedia.org/wiki/SRV_record
Example:
Hoster1 has 5 Minecraft servers, which run all 20 different instances of servers.
They have the DNS A records host1.hoster1.com - host5.hoster1.comAll 100 clients get their own DNS name to connect to.
That would be world1.hoster1.com - world100.hoster1.comWhen you enter world1.hoster1.com in your Minecraft address field, your Minecraft client will resolve the DNS record.
Resolving world1.hoster1.com would return you the current host of the world, together with the SRV record, which specifies to the Minecraft client which port to connect to:_mc._tcp.world1.hoster1.com 86400 IN SRV 0 5 19155 host1.hoster1.com
_mc._tcp.world2.hoster1.com 86400 IN SRV 0 5 19165 host2.hoster1.comThe client will connect to host1.hoster1.com on port 19155 automatically in the background. The player only entered world1.hoster1.com
A connection to world2.hoster1.com would end up in the client connecting to host2.hoster1.com on port 19165, with only entering the name in the Minecraft client. You would not need to adjust the port settings when you are connecting.
Post a new comment: