1

Красивое доменное имя для TS или Настройка SRV записи

Введение
Если вы купили себе TeamSpeak сервер с убогим адресом и портом (например, ts5.service-voice.com:53076), при этом у вас есть нормальное доменное имя (например, icyrose.ru), и при этом вы хотите входить на свой убогий сервак по нормальному имени - тогда читайте далее (дальше всё описываю на примере этих двух вполне реальных доменов).


Как это работает
Согласно справке тимспика, клиент TS3 поддерживает 2 SRV записи:
_ts3._udp
_tsdns._tcp

Из них нас интересует только первая. Идея тут в следующем: когда ваш клиент ТимСпика пытается подключиться к серверу (а вы ему указали ваше красивое доменное имя без всяких портов, например, icyrose.ru), то клиент запрашивает у ДНС сервера информацию о том, есть или нет на данном домене (или поддомене) SRV запись. Причём нужна именно запись _ts3._udp (её запрашивает клиент ТимСпика). И если такая запись есть, то он из неё узнаёт на какой адрес и порт нужно подключаться на самом деле. В нашем случае SRV запись заставит ваш ТС клиент подключиться к порту 53076, причём по адресу ts5.service-voice.com. А так как этот адрес ещё и динамический - то ещё и его айпишник автоматически определится.


Как проверить настройки SRV вашего домена
Пуск>Выполнить>CMD
nslookup [Enter] (софтина такая, для проверки DNS, встроенная в винду)
set type=all [Enter] (типо включаем отображение всех записей)

А дальше вбиваем интересующие нас записи в таком формате:
_ts3._udp.icyrose.ru (нужная нам фигня)

На что получаем в ответ примерно такой текст:

_ts3._udp.icyrose.ru        SRV service location:
          priority       = 5
          weight         = 0
          port           = 53076
          svr hostname   = ts5.service-voice.com

Если видим такой текст, и он нас устраивает - значит всё хорошо. Переводя на понятный язык - этот текст означает, что SRV запись _ts3._udp для домена icyrose.ru на самом деле указывает на домен ts5.service-voice.com и порт 53076


А если нужен поддомен?
Нам на самом деле даже не домен был нужен, а поддомен. А именно ts3.icyrose.ru. Никакой особо разницы, просто SRV запись в таком случае будет: _ts3._udp.ts3.icyrose.ru

Прикол оказался в другом: я пользуюсь услугами хостинга sweb, а их админка не позволяет создавать SRV записи для поддоменов, только для основного домена. Но это тоже легко решилось - написал им в тех, поддержку, и они оперативно добавили запись руками, выдержки переписки чуть ниже.

2

Мой вопрос:
Ситуация следующая: купили TeamSpeak сервер, нам выдали его адрес:порт - ts5.service-voice.com:53076
Мы хотим заходить на него через ts3.icyrose.ru без указания порта (так у всех нас настроено)

Для этого насколько я понимаю, нужно создать SRV запись следующего образца:
_ts3._udp.ts3.icyrose.ru 86400 IN SRV 0 5 53076 ts5.service-voice.com.
Проблема в том, что ваш интерфейс настройки ДНС не позволяет вписать то, что выделено красным.

В итоге получается сделать только так:
_ts3._udp.icyrose.ru 86400 IN SRV 0 5 53076 ts5.service-voice.com.
и следовательно настройки применяются только к домену - и оно работает.
А хочется сделать тоже самое но для поддомена.


Ответ тех. поддержки:
Необходимая Вам задача была реализована нами:

dig +short SRV _ts3._udp.ts3.icyrose.ru
5 0 53076 ts5.service-voice.com.