Un registro de servicio ( registro SRV ) es una especificación de datos en el sistema de nombres de dominio que define la ubicación, es decir, el nombre de host y el número de puerto, de los servidores para servicios específicos. Se define en RFC 2782 y su código de tipo es 33. Algunos protocolos de Internet como el Protocolo de inicio de sesión (SIP) y el Protocolo de presencia y mensajería extensible (XMPP) a menudo requieren soporte SRV por parte de elementos de red.
Formato de registro
Un registro SRV tiene la forma:
_service._proto.name. Objetivo del puerto de ponderación prioritaria SRV de clase TTL.
- servicio : el nombre simbólico del servicio deseado.
- proto : el protocolo de transporte del servicio deseado; esto suele ser TCP o UDP .
- nombre : el nombre de dominio para el que este registro es válido, terminado en un punto.
- TTL : campo de tiempo de vida estándar de DNS .
- class : campo de clase de DNS estándar (siempre es IN ).
- SRV : Tipo de registro (siempre es SRV ).
- prioridad : la prioridad del host de destino, un valor más bajo significa más preferido.
- peso : un peso relativo para registros con la misma prioridad, un valor más alto significa una mayor probabilidad de ser elegido.
- puerto : el puerto TCP o UDP en el que se encuentra el servicio.
- target : el nombre de host canónico de la máquina que proporciona el servicio, que termina en un punto.
Un ejemplo de registro SRV en forma textual que podría encontrarse en un archivo de zona podría ser el siguiente:
_sip._tcp.example.com. 86400 IN SRV 0 5 5060 sipserver.example.com.
Esto apunta a un servidor llamado sipserver.example.com escuchando en el puerto TCP 5060 para los servicios de protocolo del Protocolo de inicio de sesión (SIP). La prioridad dada aquí es 0 y el peso es 5.
Al igual que en los registros MX , el destino en los registros SRV debe apuntar al nombre de host con un registro de dirección (registro A o AAAA ). Apuntar a un nombre de host con un registro CNAME no es una configuración válida.
Aprovisionamiento para una alta disponibilidad de servicio
El campo de prioridad determina la precedencia de uso de los datos del registro. Los clientes deben utilizar primero los registros SRV con el valor de prioridad con el número más bajo y recurrir a los registros de mayor valor si falla la conexión. Si un servicio tiene varios registros SRV con el mismo valor de prioridad, los clientes deben equilibrar la carga en proporción a los valores de sus campos de ponderación . En el siguiente ejemplo, los campos de prioridad y peso se utilizan para proporcionar una combinación de equilibrio de carga y servicio de respaldo.
# _service._proto.name. Objetivo del puerto de ponderación prioritaria SRV de clase 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.
Los primeros tres registros comparten una prioridad de 10, por lo que los clientes utilizarán el valor del campo de ponderación para determinar con qué servidor (combinación de host y puerto) contactar. La suma de los tres valores es 100, por lo que bigbox.example.com se utilizará el 60% del tiempo. Los dos hosts, smallbox1 y smallbox2 se utilizarán para el 40% del total de solicitudes, la mitad de ellas enviadas a smallbox1 y la otra mitad a smallbox2. Si bigbox no está disponible, estas dos máquinas restantes compartirán la carga por igual, ya que cada una de ellas se seleccionará el 50% del tiempo.
Si los tres servidores con prioridad 10 no están disponibles, se elegirá el registro con el siguiente valor de prioridad más bajo, que es backupbox.example.com . Esta podría ser una máquina en otra ubicación física, presumiblemente no vulnerable a nada que pudiera causar que los primeros tres hosts dejen de estar disponibles.
El equilibrio de carga proporcionado por los registros SRV es inherentemente limitado, ya que la información es esencialmente estática. La carga actual de los servidores no se tiene en cuenta, a menos que los valores TTL sean lo suficientemente bajos (alrededor de un minuto o menos) para que los valores de prioridad (o peso) se puedan actualizar rápidamente.
Uso
Los registros SRV son comunes junto con los siguientes protocolos de comunicaciones estandarizados : [ aclaración necesaria ]
- APT [1]
- CalDAV y CardDAV
- Ceph [2]
- DANÉS
- Descubrimiento de servicios DNS (DNS-SD)
- Protocolo de identidad de host
- Kerberos [3]
- LDAP [4]
- SMTP presentación , POP y IMAP [5]
- Matrix.org [6]
- Minecraft [7]
- Mumble [8]
- IMPS [9]
- Marioneta [10]
- protocolo de Iniciacion de Sesion
- ATURDIR
- Teamspeak 3 [11] [12]
- XMPP [13]
En Microsoft Windows 2000, los clientes consultan registros SRV para determinar el controlador de dominio para un servicio determinado. Outlook 2007, 2010 y el correo de Macintosh 10.6 también utilizan registros SRV para localizar el servicio de detección automática de Exchange. [14] En las redes de Microsoft Windows, los controladores de dominio registran sus tipos de servicio de red para Active Directory en el DNS.
Una versión anterior de Internet Draft para OpenPGP Web Key Directory utiliza registros SRV para descubrir claves OpenPGP a través de servidores web. [15] Los usos de los registros SRV ya no forman parte del Borrador de Internet en versiones posteriores. [dieciséis]
La Autoridad de Números Asignados de Internet (IANA) mantiene un registro de nombres de servicio para registros y protocolos SRV, según se define en RFC 6335. [17]
Ver también
- Lista de tipos de registros DNS
- Registro MX : un tipo de RR de DNS utilizado para ubicar el servidor SMTP
Referencias
- ^ "Soporte de registro DNS SRV en apt" . Debian . 4 de mayo de 2018. Archivado desde el original el 17 de noviembre de 2019 . Consultado el 17 de noviembre de 2019 .
- ^ "Búsqueda de monitores a través de DNS - Documentación de Ceph" . Documentación de Ceph . Archivado desde el original el 5 de diciembre de 2017 . Consultado el 4 de diciembre de 2017 .
- ^ "Nombres de host para los KDC maestro y esclavo" . Instituto de Tecnología de Massachusetts . Archivado desde el original el 21 de octubre de 2012 . Consultado el 23 de mayo de 2012 .
- ^ Zeilenga, K. (abril de 2001). Servicio raíz OpenLDAP: un servicio de referencia LDAP experimental . IETF . doi : 10.17487 / RFC3088 . RFC 3088 . Consultado el 5 de julio de 2020 .
- ^ Daboo, C. (marzo de 2011). Uso de registros SRV para localizar servicios de envío / acceso a correo electrónico . IETF . doi : 10.17487 / RFC6186 . RFC 6186 . Consultado el 17 de abril de 2013 .
- ^ "API de Federación" . Matrix.org . Archivado desde el original el 5 de julio de 2020 . Consultado el 5 de enero de 2018 .
- ^ "Java Edition 1.3.1" . Minecraft Wiki . Archivado desde el original el 5 de julio de 2020 . Consultado el 5 de julio de 2020 .
- ^ "Agregar soporte de registro DNS SRV - mumble-voip / mumble" . GitHub . Archivado desde el original el 5 de julio de 2020 . Consultado el 5 de julio de 2020 .
- ^ "Baraza - Guía de usuario" . Archivado desde el original el 22 de agosto de 2008.
- ^ "Puppet Docs: Scaling Puppet con compilar maestros, utilizando registros DNS SRV" . Laboratorios de marionetas . Archivado desde el original el 11 de octubre de 2019 . Consultado el 17 de diciembre de 2019 .
- ^ "[Sugerencia] TS DNS" . Foro de Teamspeak . Archivado desde el original el 14 de noviembre de 2016 . Consultado el 25 de octubre de 2013 .
- ^ "Lanzamiento de la versión 3.0.8 del cliente TeamSpeak 3" . Foro de Teamspeak . Archivado desde el original el 27 de septiembre de 2016 . Consultado el 5 de julio de 2020 .
- ^ "XEP-0156: Descubriendo métodos de conexión XMPP alternativos" . XMPP.org . Archivado desde el original el 7 de mayo de 2012 . Consultado el 23 de mayo de 2012 .
- ^ "Hay una nueva función disponible que permite a Outlook 2007 utilizar los registros de ubicación del servicio DNS (SRV) para localizar el servicio de detección automática de Exchange" . Soporte de Microsoft . 13 de mayo de 2010. Archivado desde el original el 20 de abril de 2012 . Consultado el 23 de mayo de 2012 .
- ^ Koch, Werner. "Proyecto de directorio de claves web de OpenPGP-koch-openpgp-webkey-service-06" . Rastreador de datos IETF . Grupo de trabajo de ingeniería de Internet . Consultado el 5 de junio de 2021 .
- ^ Koch, Werner. "Proyecto de directorio de claves web de OpenPGP-koch-openpgp-webkey-service-12" . Rastreador de datos IETF . Grupo de trabajo de ingeniería de Internet . Consultado el 5 de junio de 2021 .
- ^ Algodón, M .; Eggert, L .; Toque, J .; Westerlund, M .; Cheshire, S. (agosto de 2011). Procedimientos de la Autoridad de Números Asignados de Internet (IANA) para la Gestión del Registro de Número de Puerto de Protocolo de Transporte y Nombre de Servicio . IETF . doi : 10.17487 / RFC6335 . RFC 6335 . Consultado el 6 de julio de 2020 .
enlaces externos
- RFC 2782 - Definición del registro de recursos SRV - Archivado el 6 de julio de 2020 en Wayback Machine
- RFC 6186 - Uso de registros SRV para localizar servicios de envío / acceso de correo electrónico - Archivado el 6 de julio de 2020 en Wayback Machine
- Uso de registros SRV de DNS para localizar servidores whois (borrador de Internet) - Archivado el 6 de julio de 2020 en Wayback Machine
- Uso de registros SRV junto con HTTP y URI (borrador de Internet) - Archivado el 6 de julio de 2020 en Wayback Machine
- Registro de número de puerto de nombre de servicio y protocolo de transporte : archivado el 6 de julio de 2020 en Wayback Machine