Introduksjon
Alle DNS-oppføringene vi har gått gjennom så langt i serien har rutet én av to typer data: nettrafikk (A-oppføringer, CNAME-oppføringer) eller e-post (MX-oppføringer). Men domener kan være vertskap for mer enn bare nettsteder og innbokser. VoIP-telefonsystemer, chat-plattformer, spillservere og andre klientapplikasjoner må også kunne finne den riktige serveren – og den riktige porten – for å koble seg til.
Dette er grunnen til at SRV-oppføringer (tjenesteoppføringer) eksisterer. En SRV-oppføring opplyser en klientapplikasjon om følgende: “Tjenesten du leter etter kjører på denne serveren, på denne porten, og slik prioriterer du den hvis det finnes flere alternativer.”
Når du har lest denne veiledningen vil du forstå hva SRV-oppføringer gjør, hvordan du tolker de ekstra feltene deres, og når du bør legge til et felt. Du kan bruke den samme arbeidsflyten i DNS-administrasjon som vi omtalte i del 4 og begrepene om oppføringsstruktur fra del 3.
Hva skiller SRV fra andre oppføringstyper?
A- og MX-oppføringer er spesialiserte. En A-oppføring peker alltid til en IP-adresse. En MX-oppføring peker alltid til en e-postserver. SRV-oppføringer er mer generelle: de kan beskrive hvilken som helst tjeneste, så lenge klientprogrammet vet at det skal lete etter dem.
Ulempen er at SRV-oppføringer har flere felt enn andre oppføringstyper. Mens en A-oppføring har én verdi (en IP-adresse) og en MX-oppføring har to (prioritet og vertsnavn), har en SRV-oppføring fire: prioritet, vekt, port og mål.
Trinn 1: Byggesteinene i en SRV-oppføring
Her er en SRV-oppføring fra DNS-dokumentasjonen til STW Mail:
| Navn | Type | TTL | RDATA |
|---|---|---|---|
_imaps._tcp |
SRV | 3600 |
0 0 993 imap.stw.no |
Denne ene oppføringen inneholder masse informasjon. La oss se nærmere på hver enkelt bestanddel.
Navn-feltet: Tjeneste- og protokollbetegnelser
Navn-feltet for SRV-oppføringer har et spesifikt format:
_service._protocol
_imaps: tjenestenavnet. Dette angir hvilken type tjeneste oppføringen beskriver. Det innledende understrekingstegnet er påkrevd av SRV-standarden for å skille tjenestedefinisjoner fra vanlige underdomener._tcp: transportprotokollen (TCP eller UDP). De fleste tjenester bruker TCP.
Disse betegnelsene er definert av standardiseringsorganer (IANA fører det offisielle registeret), slik at klientapplikasjoner vet nøyaktig hva de skal se etter. Når en e-postklient som Thunderbird vil finne IMAP-serveren for domenet ditt, sender den en forespørsel til _imaps._tcp.dittdomene.com: ikke fordi noen har bedt om det, men fordi det er det vedtatte oppslagsnavnet.
RDATA-feltet: de fire SRV-verdiene
RDATA består av fire verdier atskilt med mellomrom:
| Verdi | I vårt eksempel | Betydning |
|---|---|---|
| Prioritet | 0 |
Hvilken server skal prøves først (lavere tall \= høyere prioritet, på samme måte som MX) |
| Vekt | 0 |
Belastningsfordeling mellom servere med samme prioritet (høyere prioritet \= mer trafikk) |
| Port | 993 |
Nettverksporten tjenesten lytter til |
| Mål | imap.stw.no |
Vertsnavnet til serveren som tilbyr tjenesten |
Prioritet fungerer på samme måte som prioritet for MX-oppføringer (se del 3) – oppføringer med lavere tall prøves først.
Vekt legger til en ekstra dimensjon. Blant servere med samme prioritet avgjør vekten hvordan trafikken skal fordeles. En server vektet 70 vil få omtrent sju ganger mer trafikk enn en server vektet 10. Hvis du bare har én server (eller hvis alle serverne skal behandles likt), er vekten 0.
Portnummer gjør SRV-oppføringer ekstra nyttige. Andre DNS-oppføringer forteller deg hvilken server du skal koble deg til, men de angir ikke hvilken “dør” du skal banke på. Det gjør SRV-oppføringene: IMAP bruker port 993. SMTP-innsending bruker port 587. Et VoIP-system vil kanskje bruke port 5060. Klienten trenger ikke å gjette eller hardkode disse, siden DNS angir dem.
Mål (Target) er serverens vertsnavn, akkurat som “Exchange”-feltet i en MX-oppføring.
Trinn 2: SRV-eksempler fra virkeligheten
Automatisk konfigurering av e-postklient (STW Mail)
Disse SRV-oppføringene gjør at e-postklienter automatisk kan finne de riktige innstillingene:
| Navn | Prioritet | Vekt | Port | Mål |
|---|---|---|---|---|
_imaps._tcp |
0 |
0 |
993 |
imap.stw.no |
_pop3s._tcp |
0 |
0 |
995 |
pop.stw.no |
_smtps._tcp |
0 |
0 |
465 |
smtp.stw.no |
_submission._tcp |
0 |
0 |
587 |
smtp.stw.no |
Når en bruker konfigurerer e-postklienten sin og bare oppgir e-postadressen sin, søker klienten i disse SRV-postene for å finne serveren, porten og protokollen. Det er dermed ikke nødvendig med manuell serverkonfigurasjon.
Microsoft 365 / Teams
Microsoft Teams bruker en SRV-post for samkjøring med andre virksomheter. Hvis bedriften din benytter Microsoft 365 og trenger ekstern samkjøring (slik at Teams-brukerne dine kan kommunisere med folk i andre virksomheter), trenger du:
| Navn | Prioritet | Vekt | Port | Mål |
|---|---|---|---|---|
_sipfederationtls._tcp |
100 |
1 |
5061 |
sipfed.online.lync.com |
Hvis du har eldre SRV-oppføringer av typen sip.tls fra et Skype for Business-oppsett, er ikke disse nødvendige lenger for virksomheter som kun bruker Teams.
VoIP / SIP
IP-telefonsystemer bruker SRV-oppføringer til å videresende samtaler. En SIP-leverandør kan kreve:
| Navn | Prioritet | Vekt | Port | Mål |
|---|---|---|---|---|
_sip._udp |
10 |
100 |
5060 |
sip.eksempel.net |
_sip._tcp |
20 |
0 |
5060 |
sip.eksempel.net |
Her prioriteres UDP-serveren (prioritet 10) fremfor TCP (prioritet 20). VoIP foretrekker ofte UDP på grunn av lavere latens.
Spillservere
En del spillservere bruker SRV-oppføringer, ikke minst Minecraft (Java Edition) som gjør et oppslag på _minecraft._tcp.dittdomene.com for å finne adressen og porten til serveren. Hvis du noen gang har lurt på hvordan Minecraft-servere kan la spillerne koble seg til med et ryddig domenenavn selv når serveren kjører på en port som ikke er standard, er dette svaret. Én SRV-oppføring er alt som trengs.
Trinn 3: Slik legger du til en SRV-oppføring
I STW DNS-administrasjon klikker du på + Legg til post og SRV som type.
Fyll ut feltene:
| Felt | Verdi (med IMAP som eksempel) |
|---|---|
| Navn | _imaps._tcp |
| TTL | 3600 |
| Prioritet | 0 |
| Vekt | 0 |
| Port | 993 |
| Mål | imap.stw.no |
Klikk Bekreft for å lagre.
Sjekk med dig
dig @ns1.servetheworld.net SRV _imaps._tcp.dittdomene.com
Forventet resultat:
;; ANSWER SECTION:
_imaps._tcp.dittdomene.com. 3600 IN SRV 0 0 993 imap.stw.no.
Vanlige SRV-feil
SRV-oppføringer har flere felt enn de fleste andre typer DNS-oppføringer, noe som betyr at det er flere muligheter for å gjøre feil. Dette er de feilene vi ser oftest:
- Å bruke en IP-adresse som mål. Målfeltet må være et vertsnavn (
imap.stw.no). Hvis du skriver inn en IP-adresse (192.0.2.10) direkte, vil ikke oppføringen fungere. Målvertsnavnet må også ha sin egen A-oppføring (eller AAAA for IPv6) som finner en adresse. Uten en slik oppføring finner klienten vertsnavnet, men har ingen steder å gå videre. - Å plassere tjenestenavnet i feil felt. Noen DNS-paneler har separate felt for tjenestenavn, protokoll og vertsnavn. Andre kombinerer dem i ett enkelt “Navn”-felt. Hvis du skriver inn
_imaps._tcpi et felt som allerede legger til understrek foran eller domenet ditt bak, vil du ende opp med en uryddig oppføring som_imaps._tcp._imaps._tcp.dittdomene.com. Sjekk hva panelet ditt fyller ut automatisk før du lagrer. - Protokollfeil. Hvis tjenesten forventer
_tcpog du skriver inn_udp(eller omvendt), vil ikke klientens oppslag gi noe resultat. Protokollbetegnelsen må stemme overens med det klientprogrammet søker etter. - Forvirring rundt etterfølgende punktum. I rå DNS slutter vertsnavn med et punktum på slutten (
imap.stw.no.). Noen DNS-kontrollpaneler legger det til automatisk, mens andre krever at du selv legger det til. Hvis kontrollpanelet forventer punktumet og du utelater det, kan målet tolkes somimap.stw.no.dittdomene.com, som ikke vil peke til riktig sted. Er du i tvil, legg til punktumet og sjekk resultatet meddig. - Forveksling av prioritet og vekt. Prioritet bestemmer rekkefølgen for failover (lavere \= prøves først). Vekt bestemmer belastningsfordelingen mellom servere med samme prioritet (høyere \= mer trafikk). Hvis du bytter om på dem, får du det motsatte av det du hadde tenkt: en backup-server som håndterer all belastningen, eller at trafikken ikke fordeles i det hele tatt.
Hvordan finne ut hvor feilen ligger
La oss si at du har lagt til en SRV-oppføring, men at tjenesten fremdeles ikke kobler seg til. Problemet ligger enten i DNS (oppføringen er feil eller ikke synlig ennå) eller i selve applikasjonen/tjenesten. Du kan følge disse trinnene for å finne ut hva som er årsaken:
- Søk direkte i DNS. Kjør
dig @ns1.servetheworld.net SRV _service._protocol.dittdomene.commot din offisielle navneserver. Hvis oppføringen ikke vises, ligger problemet i DNS. Gå tilbake og sjekk oppføringen. - Kontroller at målet kan slås opp. Hvis SRV-oppføringen vises, ta målets vertsnavn og kjør
dig A imap.stw.no(eller hva målet nå enn er). Hvis det ikke peker til en IP-adresse, er SRV-oppføringen i orden, men målet fungerer ikke. - Test porten. Hvis både SRV-oppføringen og målet løses opp riktig, bør du sjekke om tjenesten faktisk lytter. Kommandoen
nc(netcat) kan brukes til å foreta en rask tilkoblingssjekk:nc -zv imap.stw.no 993. En avvist tilkobling eller en tilkobling som går ut på tid, tyder på at problemet ligger hos tjenesten, ikke i DNS. - Sjekk fra utenfor nettverket ditt. Hvis alt fungerer fra serveren din, men ikke fra en klientmaskin, kan problemet skyldes en brannmur, NAT (Network Address Translation) eller at klientprogrammet ikke støtter SRV-oppslag for den aktuelle tjenesten.
Hvis SRV-oppføringen er riktig på den offisielle DNS-serveren, men tjenesten nylig har begynt å svikte, skyldes problemet sannsynligvis forsinket oppdatering: gamle verdier ligger lagret i hurtigbufferen et sted oppstrøms. Se del 9 for å finne ut hvordan TTL og caching påvirker dette.
Når trenger du SRV-oppføringer?
De fleste legger ikke til SRV-poster på eget initiativ. De gjør det fordi en tjenesteleverandør har bedt dem om det. Microsoft 365, Google Workspace, VoIP-leverandører og visse hostingplattformer inkluderer SRV-oppføringer i instruksjonene for DNS-konfigurasjon.
Hvis det ikke er noen tjeneste som ber deg om SRV-oppføringer, trenger du dem sannsynligvis ikke. Men når du vet hva de er vil du ikke bli forvirret hvis en installasjonsveiledning ber deg om å legge dem til, og du vil forstå hva hvert felt gjør, i stedet for å bare kopiere verdiene.
SRV versus A-oppføringer og CNAME
Du lurer kanskje på hvorfor du ikke bare kan bruke en A-oppføring eller CNAME for disse tjenestene? Svaret er at A-poster og CNAME-er kan peke til en server, men de kan ikke angi en port. De kan heller ikke angi prioritet eller vekt for failover og lastfordeling.
SRV-oppføringer løser alle tre problemene i én og samme oppføring. Ulempen er at klientprogrammet må vite at det skal lete etter dem – noe ikke all programvare gjør. Nettlesere, for eksempel, søker ikke etter SRV-oppføringer. Men VoIP-klienter, e-post med autodiscover og mange bedriftsapplikasjoner gjør det.
Konklusjon
SRV-oppføringer utvider DNS-funksjonaliteten utover nettsider og e-post. De gjør det mulig for klientapplikasjoner å finne ut ikke bare hvilken server som tilbyr en tjeneste, men også hvilken port som skal brukes, hvilken server som skal prioriteres og hvordan belastningen skal fordeles – alt via ett enkelt DNS-oppslag.
De fleste SRV-oppføringer stammer fra konfigurasjonsinstruksjoner fra en tjenesteleverandør (for eksempel Microsoft 365 eller en VoIP-leverandør), og mange opprettes automatisk av tjenesteleverandøren. Når STW Mail konfigureres for domenet ditt, blir for eksempel de nødvendige SRV-oppføringene for e-post med autodiscover lagt til for deg.
Når du forstår de fire feltene – prioritet, vekt, port og mål – kan du legge dem til uten å nøle og feilsøke dem når noe ikke kobles til.
I del 8 ser vi på DNS fra den andre siden. I stedet for å oversette navn til tall, oversetter omvendt DNS tall tilbake til navn.
Neste trinn:
