Hey,
In order to use multiple BungeeCord instances, one needs some possibility to spread the players among them. With version 5.0, TimoCloudCord has been introduced - an extra proxy which should handle joining players. Unfortunately, 2 layers of proxies have turned out to be not that stable, so a new feature has been introduced:
CloudFlare Round Robin DNS.
That means you can generate an API key in your CloudFlare settings, put it in the new core/configs/cloudFlare.yml config together with your email address, and TimoCloud will handle the rest.
How Round Robin DNS works:
SRV records are DNS records just like A- or MX records. When the Minecraft client connects to a hostname, it will look for SRV records. If such records exist, it will choose one randomly and connect to the hostname+port it specified. Hence, players will be spread over the proxies automatically.
Things you have to do if you want to use CloudFlare support:
- Use CloudFlare (cloudflare.com) as DNS. Why should I do that? 2 reasons: Firstly, because you TimoCloud is compatible. Secondly, because it offers free DDOS protection for your websites and fast-updating nameservers.
- Create an API key and put it in core/configs/cloudFlare.yml. Put your email address in there as well and set "enabled" to true.
- Configure the hostnames you want TimoCloud to create records for in core/configs/cloudFlare.yml.
- Configure the hostnames per proxy group in core/configs/proxyGroups.json. TimoCloud will add an SRV record for a proxy for every hostname which is configured in your cloudFlare.yml AND in your proxyGroups.json.
- You can use * in your configs for hostnames, like *.yourdomain.com
- Make port 40.000-40.999 accessible through your firewall. TimoCloud will start proxies on ports 40.000+, so if you want players to be able to join them, these ports should be accessible. TimoCloud will start servers on port 41.000+, so make sure to close these ports in your firewall, or players might be able to hack your servers.
Things TimoCloud will do:
- Create an A-record for every base + hostname, e.g. "base-1.base.yourdomain.com", "base-1.base.yourdomain2.com"
- Create an SRV-record for every proxy + hostname, e.g. "SRV _minecraft._tcp.yourdomain.com -> base-1.base.yourdomain.com:40000"