Серверы Minecraft - 1 внешний IP, 2 сервера, 2 порта - избегайте указания порта в игре - запись SRV

У меня есть два сервера Minecraft, на поддоменах. www.server1.example.com и www.server2.example.com. сервер1 - это порт 25565, сервер2 - это порт 25566.

Когда пользователи хотят подключиться к порту не по умолчанию в minecraft, они должны указать www.server2.example.com:25566 для подключения к серверу. На порту по умолчанию это не нужно, они могут просто подключиться через www.server1.example.com.

Как я могу указать, к какому порту они подключаются, с обратной стороны, чтобы пользователи, подключающиеся к нестандартному порту, могли вводить только субдомен?

Я думаю, что мне может понадобиться что-то вроде SRV ( http://en.wikipedia.org/wiki/SRV_record), у кого-нибудь есть опыт с этим?

Темы с людьми, у которых это работает через SRV: http://www.minecraftforum.net/topic/1434125-srv-dns-records-server/ - парень, который работает в mineminecraft, находится в моей ситуации, и он работает.

ОБНОВЛЕНИЕ / РЕШЕНИЕ -

Вот как я получил эту работу, надеюсь, это поможет кому-то еще на моем посту.

Я создал поддомен sub.example.com для вторичного сервера, работающего на нестандартном порту. ( 25566)

В моем предоставленном диспетчере DNS, в моих настройках SRV, я применил это в предоставленных полях:

_minecraft._tcp.sub priority:0 weight:5 port:25566 target:<ip address here>

"_minecraft" - это просто символическое имя, "sub" - это имя вашего субдомена, например, это может быть "_tcp.dev", если ваш субдомен был dev.example.com. Как только субдомен и SRV связаны, он должен работать, при условии, что вы ввели и перенаправили правильный порт.

Больше информации в моем блоге здесь.

3 ответа

Решение

Похоже, что клиент Minecraft выдает SRV запись при подключении и использует информацию там? Интересно.

В основном вам понадобится A запись в DNS, указывающая на ваш сервер. У вас, вероятно, уже есть два из них.

А потом два CNAME записи имен вашего первого и второго экземпляра. CNAMEнеобходимо указать на имя в приведенном выше A запись. Я считаю, что ваши CNAME должны заканчиваться в том же домене, что и соответствующий сервер.

А потом два SRV записи, в соответствии с этим форматом:

_minecraft._tcp.cname.domain.tdl. outside_port IN SRV 10 5 internal_port a_record.domain.tdl.

Вы бы заменили cname выше с CNAME, которые вы выбрали, и замените порты в тексте выше соответственно.

Все это нужно сделать на DNS-сервере вашего провайдера или с помощью утилиты настройки, которую они могут предоставить. Никогда не настраивал SRV Записывайтесь раньше на общедоступный DNS, но это то, что я делаю после прочтения предоставленных вами сообщений на форуме.

Порт независим от DNS. Это невозможно с DNS, вам нужно будет получить второй IP-адрес, чтобы обойти необходимость указания порта в Minecraft

Если вы ищете способ сделать это без записей SRV, вы можете использовать стороннее программное обеспечение «Minecraft Redirect Proxy» https://github.com/RenegadeEagle/minecraft-redirect-proxy .

Первый пакет, отправляемый на сервер Minecraft, включает запрошенное имя хоста. Это приложение проверит этот пакет и перенаправит весь трафик на настроенный пользователем сервер Minecraft по запрошенному имени хоста.

(См. этот ответ для справки и пример: https://superuser.com/a/1695521/1652996)

Другие вопросы по тегам