A resposta rápida
Adicione um registro A apontando o seu subdomínio para o IP do servidor, com o
proxy do Cloudflare configurado como DNS Only (nuvem cinza). Se o seu servidor
roda em uma porta diferente de 25565, adicione um registro SRV chamado
_minecraft._tcp.play com prioridade 0, peso 0, a sua porta, e o seu subdomínio
como destino.
Pontos principais
- IP dedicado na porta padrão: um registro A é tudo que você precisa.
- IP compartilhado ou porta personalizada: registro A mais um registro SRV.
- O proxy do Cloudflare precisa estar desligado. O Minecraft não é tráfego HTTP.
- O registro A leva só o IP, nunca a porta.
- O Bedrock não lê registros SRV. Ele precisa que a porta seja digitada separadamente.
Qual configuração você tem
Tudo abaixo se divide em uma única pergunta: o seu servidor tem o próprio endereço IP, ou ele compartilha um com outros servidores em uma porta distinta?
- IP dedicado
- O seu servidor tem um IP só para ele e pode rodar na porta padrão do Minecraft, 25565. Um registro A e está pronto.
- IP compartilhado
- O seu servidor compartilha um IP e é diferenciado pela porta, por exemplo 28017. Você precisa de um registro A e um registro SRV, porque o domínio sozinho não consegue carregar uma porta.
Se você não tiver certeza, olhe o endereço de conexão no seu painel de controle. Se ele termina em
:25565 ou não tem porta nenhuma, você está no primeiro caso. Qualquer outro número e
você está no segundo.
IP dedicado: um registro A
-
Faça login no painel do Cloudflare
Entre na sua conta do Cloudflare e selecione o domínio que você quer usar.
-
Adicione um registro A
Crie um novo registro DNS do tipo A com estes valores:
- Name: o subdomínio. Use
playpara obterplay.yourdomain.com. - IPv4 address: o endereço IP do seu servidor, sem número de porta.
- Proxy status: desligue essa opção. A nuvem precisa estar cinza e mostrar DNS Only.
- TTL: Auto.
- Name: o subdomínio. Use
-
Salve
Isso é tudo. Agora os jogadores podem digitar
play.yourdomain.comno cliente do Minecraft e se conectar.
IP compartilhado: registro A mais SRV
Em um IP compartilhado, a porta é o que identifica o seu servidor, e um nome de domínio não tem onde colocar uma porta. O registro SRV é como o DNS resolve isso: ele carrega a porta separadamente, e o cliente do Minecraft sabe que precisa procurar por uma.
-
Crie primeiro o registro A
Exatamente como acima: tipo A, nome
play, o IP do seu servidor sem porta, proxy configurado como DNS Only, TTL Auto. O registro SRV precisa de algo para apontar, e é isso. -
Crie o registro SRV
Adicione um segundo registro, desta vez do tipo SRV:
- Name: o serviço e o protocolo seguidos do seu subdomínio, por exemplo
_minecraft._tcp.play. - Priority:
0 - Weight:
0 - TTL: Auto
- Port: a porta do seu servidor Minecraft, por exemplo
28017. - Target: o seu domínio, por exemplo
play.yourdomain.com.
- Name: o serviço e o protocolo seguidos do seu subdomínio, por exemplo
-
Salve os dois registros
Agora os jogadores podem se conectar usando só
play.yourdomain.com, e o cliente encontra a porta sozinho.
O que o registro SRV realmente faz
Um registro A responde "qual é o IP deste nome". Um registro SRV responde uma pergunta mais específica: "para este serviço, neste protocolo, com este nome, qual host e porta eu devo usar".
É por isso que o nome parece estranho. _minecraft._tcp.play se divide assim:
_minecraft- O serviço. O cliente do Minecraft procura exatamente por isso.
_tcp- O protocolo. O Minecraft Java usa TCP.
play- O seu subdomínio, a parte que os jogadores realmente digitam.
Os dois sublinhados são obrigatórios. Eles não são decoração e não são opcionais, e deixar um de fora é o motivo mais comum de um registro SRV, fora isso correto, não fazer nada.
Por que o proxy precisa estar desligado
A nuvem laranja do Cloudflare faz proxy do tráfego pela rede deles, o que é genuinamente útil para sites. Ela lida com HTTP e HTTPS.
O Minecraft não é nenhum dos dois. É o protocolo próprio dele sobre TCP, então um registro com proxy entrega as conexões dos seus jogadores a um sistema que não sabe o que fazer com elas. O sintoma é um domínio que resolve mas nunca conecta, o que parece um problema de servidor e não é.
Configure o status do proxy como DNS Only para que o ícone da nuvem fique cinza, não laranja. Se você já tem um site funcionando no mesmo domínio, deixe esses registros com proxy e mude só o subdomínio do Minecraft. A configuração é por registro, não por domínio.
A ressalva do Bedrock
Tudo o que foi dito acima sobre registros SRV se aplica ao Minecraft Java Edition. O Bedrock
não lê registros SRV da mesma forma, então um jogador do Bedrock apontado para
play.yourdomain.com não será enviado para a sua porta personalizada.
Duas formas de contornar isso:
- Peça aos jogadores do Bedrock para digitar a porta no campo de porta ao adicionar o servidor, com o domínio no campo de endereço. O registro A continua fazendo o seu trabalho, o registro SRV simplesmente não é consultado.
- Consiga um IP dedicado para o servidor para que ele possa rodar na porta padrão, e nenhuma porta precisa ser especificada.
Verificando se funcionou
Mudanças de DNS com TTL Auto geralmente entram em vigor dentro de alguns minutos, mas a propagação não é instantânea em todo lugar ao mesmo tempo. Antes de concluir que algo está errado:
- Tente o domínio a partir de um dispositivo em uma rede diferente, como um celular fora do wifi. Se funciona lá e não em casa, isso é cache de DNS local, não o seu registro.
- Confirme que o registro A tem um IP e só um IP. Colar a string de conexão completa com a porta em um registro A é um erro comum e ele falha silenciosamente.
- Reverifique o status do proxy. É fácil criar o registro corretamente e o Cloudflare voltar a ligar o proxy por padrão.
- Para o SRV, reverifique os dois sublinhados e se o destino é o domínio, não o IP.
Se o domínio resolve para o IP certo mas a conexão expira, o problema saiu do DNS e foi para o próprio servidor, e o próximo lugar para olhar é se o servidor está rodando e acessível na porta que você especificou.