Ein SRV-Record (Service Record) ist ein DNS-Ressourcen-Recordtyp, der Clients mitteilt, wo sie einen Dienst finden – welcher Host ihn bereitstellt und auf welchem Port – und ermöglicht die Dienstermittlung über DNS-Abfragen statt auf Konvention oder hartcodierte Endpunkte angewiesen zu sein.
Das Record-Format folgt diesem Muster:
_service._proto.name. TTL class SRV priority weight port target.
| Feld | Zweck |
|---|---|
_service |
Symbolischer Dienstname (z. B. _sip, _ldap), mit Unterstrich als Präfix |
_proto |
Protokoll: _tcp oder _udp |
priority |
Niedriger Wert = bevorzugt; Clients versuchen Records in aufsteigender Prioritätsreihenfolge |
weight |
Relative Last-Balancing-Einstellung unter gleichrangigen Records (gewichtete Zufallsauswahl) |
port |
TCP/UDP-Port, auf dem der Dienst lauscht |
target |
FQDN des Servers; muss zu einem A-Record oder AAAA-Record auflösen, niemals zu einem CNAME |
Wenn ein Client einen SRV-Record abfragt, erhält es einen oder mehrere Einträge, sortiert sie nach Priorität und wählt dann probabilistisch Ziele innerhalb der obersten Prioritätsstufe basierend auf ihren Gewichtswerten aus. Es löst dann den ausgewählten Hostname zu einer IP-Adresse auf und verbindet sich auf dem angegebenen Port.
Beispiel: _sip._tcp.example.com. 86400 IN SRV 10 60 5060 sipserver.example.com. leitet SIP-Clients zu sipserver.example.com auf Port 5060 weiter.
Häufige Anwendungen sind SIP (VoIP), LDAP (Verzeichnisdienste), XMPP (Messaging), Minecraft-Server und Microsoft Exchange Autodiscover.
WarningSRV-Records sind anwendungsspezifisch und nicht universell unterstützt. Webbrowser verwenden SRV nicht für HTTP/HTTPS-Routing, daher können Sie sich nicht auf SRV zum Umleiten von Webtraffic verlassen. Stellen Sie auch sicher, dass
targetauf einen A/AAAA-Record verweist, nicht auf einen CNAME.