воскресенье, 18 марта 2012 г.

TSDNS (TeamSpeak DNS Server) на Debian Squeeze [RU]


Установка TSDNS (Сервер TeamSpeak DNS на Debian Squeeze)

Про TSDNS. TSDNS на самом деле не имеет ничего общего с DNS, но идеология очень похожа:
Вкратце TSDNS позволяет вам заменить страшный адрес IP:PORT DNS-адресом
Например, про обращении к server1.myts.com клиент на самом деле будет присоединен к myts.com:2001, а при обращении на server2.myts.com его отправят на myts.com:2002, а что-нибудь еще вроде something-else.myts.com будет послано на myts.com:2009 (обратите внимание - один и тот же хост, разные порты)

Когда вы присоединяетесь к somehost.example.com, ваш TeamSpeak Client пытается туда присоединится на порт 41144, затем на тот же порт к родительскому домену, затем к родительскому родительского и так далее. Так,например,если вы скажете TS3 присоединиться к server2.jaguar.melon.sweet.com, он пойдет следующим путем:

  • Попытается присоединиться на server2.jaguar.melon.sweet.com на порт 41144 (Но не сможет и даже имя не отрезолвит)
  • Присоединится к jaguar.melon.sweet.com на порт 41144 (Не получится, причина та же)
  • Присоединится к melon.sweet.com на порт 41144 (Удача)
  • Спросить melon.sweet.com про TS3-сервер server2.jaguar.melon.sweet.com. 
  • melon.sweet.com ответит "Я знаю такой, цепляйся к нему по адресу real-server.sweet.com:10002"
  • Прицепиться на real-server.sweet.com:10002
Итак, благодаря этой штуке,больше нет мороки с портами и IP-шниками.



Установка очень простая. Создаем нужные папки
sudo mkdir /etc/ts3dns-server 
sudo mkdir /etc/ts3dns-server/config

Скачиваем дистрибутив TS3 Server (под вашу архитектуру), распаковываем и копируем все куда надо
cd ~ 
mkdir ./ts3dns 
cd ./ts3dns 
wget http://teamspeak.gameserver.gamed.de/ts3/releases/3.0.2/teamspeak3-server_linux-amd64-3.0.2.tar.gz 
tar -xvf ./teamspeak3-server_linux-amd64-3.0.2.tar.gz  
cd ./teamspeak3-server_linux-amd64 
cd ./tsdns 
sudo copy ./tsdnsserver_linux_amd64 /usr/bin/tsdns-server 
sudo copy ./tsdns_settings.ini.sample /etc/ts3dns-server/config/ 
sudo copy /etc/ts3dns-server/config/tsdns_settings.ini.sample  /etc/ts3dns-server/config/tsdns_settings.ini
Теперь скачиваем скрипт init.d (с  http://pastebin.com/yFw74cWA  )

sudo wget http://pastebin.com/download.php?i=yFw74cWA -O /etc/init.d/tsdns-server
chmod +x  /etc/init.d/tsdns-server

И всё. Теперь идем в  tsdns_settings.ini
sudo nano /etc/tsdns-server/config/tsdns_settings.ini
Пример конфига


#При коннекте к v.example.com, цепляться к 
# v.example.com на порт 9987
#(порт по-умолчанию, так что опущен)
v.example.com =v.example.com

#При подключении к s1.v.example.com (то же самое, как в предыдущем), на самом деле, соединяться с
#  v.example.com, порт 9987 (опущен как умолчание) 
s1. v.example.com =v.example.com 

#При соединении с s2.v.example.com, цепляться на
#  v.example.com, порт 9988 
s2. v.example.com = v.example.com:9988 

#При соединении с любым другим {чтоугодно}.v.example.com (если tsdns запущен on v.example.com) 
#ИЛИ при соединении с {чтоугодно}[.]{чтоугодно}.example.com  (если tsdns на exaple.com) 
#реально прицепиться на v.example.com, на тот порт, который указан у клиента в настройках
*= v.example.com:$PORT
Запускаем сервер (тестовый прогон)
sudo /etc/init.d/tsdns-server start nodaemon
Если все в порядке, убиваем (CTRL+C), запускаем нормально
sudo /etc/init.d/tsdns-server start  
Добавляем в автозапуск
sudo update-rc.d tsdns-server defaults



Комментариев нет:

Отправить комментарий