Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

Запись службы ( запись SRV ) - это спецификация данных в системе доменных имен, определяющая расположение, т. Е. Имя хоста и номер порта, серверов для указанных служб. Он определен в RFC 2782, а его типовой код - 33. Некоторые Интернет-протоколы, такие как Session Initiation Protocol (SIP) и Extensible Messaging and Presence Protocol (XMPP), часто требуют поддержки SRV сетевыми элементами.

Формат записи [ править ]

Запись SRV имеет вид:

_service._proto.name. Целевой порт с приоритетным весом SRV класса TTL.
  • услуга : символическое название желаемой услуги.
  • proto : транспортный протокол желаемой службы; обычно это TCP или UDP .
  • name : имя домена, для которого действительна эта запись, оканчивающееся точкой.
  • TTL : поле стандартного времени жизни DNS .
  • class : стандартное поле класса DNS (всегда IN ).
  • SRV : Тип записи (это всегда SRV ).
  • приоритет : приоритет целевого хоста, меньшее значение означает более предпочтительный.
  • вес : относительный вес для записей с одинаковым приоритетом, более высокое значение означает более высокий шанс быть выбранным.
  • порт : порт TCP или UDP, на котором должна быть найдена служба.
  • target : каноническое имя хоста машины, предоставляющей услугу, оканчивающееся точкой.

Пример записи SRV в текстовой форме, которая может быть найдена в файле зоны, может быть следующим:

_sip._tcp.example.com. 86400 IN SRV 0 5 5060 sipserver.example.com.

Это указывает на сервер с именем sipserver.example.com, который прослушивает TCP-порт 5060 для служб протокола Session Initiation Protocol (SIP). Приоритет здесь равен 0, а вес равен 5.

Как и в записях MX , цель в записях SRV должна указывать на имя хоста с записью адреса (запись A или AAAA ). Указание на имя хоста с помощью записи CNAME не является допустимой конфигурацией.

Обеспечение высокой доступности сервиса [ править ]

Поле приоритета определяет приоритет использования данных записи. Клиенты должны сначала использовать записи SRV с наименьшим значением приоритета и возвращаться к записям с более высоким значением, если соединение не удается. Если служба имеет несколько записей SRV с одинаковым значением приоритета, клиенты должны балансировать их нагрузку пропорционально значениям их полей веса . В следующем примере поля приоритета и веса используются для обеспечения комбинации балансировки нагрузки и службы резервного копирования.

# _service._proto.name. Целевой порт с приоритетным весом SRV класса TTL._sip._tcp.example.com. 86400 IN SRV 10 60 5060 bigbox.example.com._sip._tcp.example.com. 86400 IN SRV 10 20 5060 smallbox1.example.com._sip._tcp.example.com. 86400 IN SRV 10 20 5060 smallbox2.example.com._sip._tcp.example.com. 86400 IN SRV 20 0 5060 backupbox.example.com.

Первые три записи имеют общий приоритет 10, поэтому значение поля веса будет использоваться клиентами для определения того, с каким сервером (комбинация хоста и порта) связаться. Сумма всех трех значений равна 100, поэтому bigbox.example.com будет использоваться в 60% случаев. Два хоста, smallbox1 и smallbox2, будут использоваться для 40% всех запросов, половина из которых будет отправлена ​​на smallbox1 , а другая половина - на smallbox2. Если bigbox недоступен, эти две оставшиеся машины будут делить нагрузку поровну, поскольку каждая из них будет выбрана в 50% случаев.

Если все три сервера с приоритетом 10 недоступны, будет выбрана запись со следующим наименьшим значением приоритета, то есть backupbox.example.com . Это может быть машина в другом физическом месте, предположительно не уязвимая для чего-либо, что могло бы стать причиной недоступности первых трех хостов.

Балансировка нагрузки, обеспечиваемая записями SRV, по своей сути ограничена, поскольку информация по существу статична. Текущая загрузка серверов не учитывается, если только значения TTL не достаточно низкие (около минуты или ниже), чтобы значения приоритета (или веса) могли быть быстро обновлены.

Использование [ править ]

Записи SRV обычно используются в сочетании со следующими стандартизованными протоколами связи : [ требуется пояснение ]

В Microsoft Windows 2000 клиенты запрашивают записи SRV, чтобы определить контроллер домена для данной службы. Записи SRV также используются почтой Outlook 2007, 2010 и Macintosh 10.6 для поиска службы автообнаружения Exchange. [14] В сетях Microsoft Windows контроллеры домена регистрируют свои типы сетевых служб для Active Directory в DNS.

Реестр имен служб для записей и протоколов SRV ведется Управлением по присвоению номеров Интернета (IANA), как определено в RFC 6335. [15]

См. Также [ править ]

  • Список типов записей DNS
  • Запись MX - тип DNS RR, используемый для определения местоположения SMTP-сервера.

Ссылки [ править ]

  1. ^ "Поддержка записи DNS SRV в apt" . Debian . 4 мая 2018. Архивировано 17 ноября 2019 года . Проверено 17 ноября 2019 года .
  2. ^ "Поиск мониторов через DNS - документация Ceph" . Документация Ceph . Архивировано 5 декабря 2017 года . Проверено 4 декабря 2017 года .
  3. ^ «Имена хостов для главного и подчиненного KDC» . Массачусетский технологический институт . Архивировано 21 октября 2012 года . Проверено 23 мая 2012 года .
  4. ^ Zeilenga, К. (апрель 2001). Корневая служба OpenLDAP - экспериментальная справочная служба LDAP . IETF . DOI : 10,17487 / RFC3088 . RFC 3088 . Дата обращения 5 июля 2020 .
  5. ^ Daboo, C. (март 2011). Использование записей SRV для поиска служб отправки электронной почты / доступа . IETF . DOI : 10,17487 / RFC6186 . RFC 6186 . Проверено 17 апреля 2013 года .
  6. ^ "API федерации" . Matrix.org . Архивировано 5 июля 2020 года . Проверено 5 января 2018 года .
  7. ^ "Java Edition 1.3.1" . Майнкрафт вики . Архивировано 5 июля 2020 года . Дата обращения 5 июля 2020 .
  8. ^ "Добавить поддержку записи DNS SRV - бормотание-голос / бормотание" . GitHub . Архивировано 5 июля 2020 года . Дата обращения 5 июля 2020 .
  9. ^ "Бараза - Руководство пользователя" . Архивировано из оригинального 22 августа 2008 года.
  10. ^ «Puppet Docs: Масштабирование Puppet с мастерами компиляции, Использование записей DNS SRV» . Кукольные лаборатории . Архивировано 11 октября 2019 года . Проверено 17 декабря 2019 .
  11. ^ "[Предложение] TS DNS" . Форум Teamspeak . Архивировано 14 ноября 2016 года . Проверено 25 октября 2013 года .
  12. ^ «Выпущена версия 3.0.8 клиента TeamSpeak 3» . Форум Teamspeak . Архивировано 27 сентября 2016 года . Дата обращения 5 июля 2020 .
  13. ^ «XEP-0156: Обнаружение альтернативных методов подключения XMPP» . XMPP.org . Архивировано из оригинала 7 мая 2012 года . Проверено 23 мая 2012 года .
  14. ^ «Доступна новая функция, которая позволяет Outlook 2007 использовать записи местоположения службы DNS (SRV) для поиска службы автообнаружения Exchange» . Служба поддержки Microsoft . 13 мая 2010 года Архивировано из оригинала 20 апреля 2012 года . Проверено 23 мая 2012 года .
  15. ^ Хлопок, M .; Eggert, L .; Touch, J .; Westerlund, M .; Чешир, С. (август 2011 г.). Орган по присвоению номеров Интернета (IANA) Процедуры для управления реестром имени службы и номера порта транспортного протокола . IETF . DOI : 10,17487 / RFC6335 . RFC 6335 . Дата обращения 6 июля 2020 .

Внешние ссылки [ править ]

  • RFC 2782 - Определение записи ресурса SRV - Архивировано 6 июля 2020 года на Wayback Machine.
  • RFC 6186 - Использование записей SRV для поиска служб отправки / доступа к электронной почте - Архивировано 6 июля 2020 г. на Wayback Machine
  • Использование записей DNS SRV для поиска серверов Whois (Интернет-проект) - Архивировано 6 июля 2020 г. на Wayback Machine.
  • Использование записей SRV в сочетании с HTTP и URI (Интернет-проект) - Архивировано 6 июля 2020 года на Wayback Machine.
  • Реестр имени службы и номера порта транспортного протокола - Архивировано 6 июля 2020 года на Wayback Machine