Hoppa till innehållet

Cookieinställningar

Välj vilka typer av cookies du tillåter. Du kan alltid ändra ditt val via Cookieinställningar längst ned på varje sida. Integritetspolicy

Nödvändiga

Alltid på

Behövs för att logga in, spara din varukorg och komma ihåg dina val. De är alltid på.

Vilka cookies?
  • weboke_sessie, weboke_klant, weboke_remember: din session och att du förblir inloggad
  • weboke_basket: din varukorg
  • wkBtwIncl: visa priser med eller utan moms
  • wok_cookies: ditt cookieval, 12 månader

Mäter vilken annons som leder till ett besök eller en beställning, så att vi inte betalar för annonser som inte ger något.

Vilka cookies?
  • Google Ads via Google Tag Manager (_gcl_au, _gcl_aw), upp till 90 dagar
  • OpenAI Ads, annonser i ChatGPT
  • wok_aff: via vilken partner du kom till oss (affiliateprogram), 60 dagar

4,6

Land och språk

Varje land har en egen webbplats med landets priser och moms.

Visa

Slå upp DNS med dig och nslookup

Modul 8: Säkerhet och felsökning · Lästid: 10 minuter

Lärandemål: Efter den här lektionen kan du slå upp poster med dig och nslookup, fråga en specifik namnserver direkt och läsa svaret.

Nyckelbegrepp: dig, nslookup, Resolve-DnsName, +short, @server, +trace, ANSWER- och AUTHORITY-sektion, status NOERROR, NXDOMAIN, SERVFAIL, dig -x

Varför slå upp själv?

En panel visar vad du själv har fyllt i. Vad resten av världen ser kan vara annorlunda: kanske hanterar en annan part DNS, kanske finns det fortfarande ett gammalt svar i en cache. Med ett uppslagsprogram ställer du samma fråga som en webbläsare eller mailserver, och ser det verkliga svaret.

Det finns tre vanliga program:

ProgramVarKommentar
digmacOS, Linux (Windows via WSL eller installeras separat)Mest omfattande, standard bland administratörer
nslookupWindows, macOS, LinuxFinns överallt, mer kortfattad utdata
Resolve-DnsNameWindows PowerShellPraktiskt på Windows utan extra programvara

Har du inget kommandofönster till hands? Då kan du göra exakt samma sak med ett online dig-verktyg (lektion 8.3).

Din första fråga med dig

Öppna Terminal (macOS/Linux) och skriv:

$ dig example.com A

Utdatan ser förkortad ut så här:

;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 41872
;; flags: qr rd ra ad; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

;; QUESTION SECTION:
;example.com.                  IN      A

;; ANSWER SECTION:
example.com.           2847    IN      A       192.0.2.10

;; Query time: 12 msec
;; SERVER: 192.168.1.1#53(192.168.1.1) (UDP)

Det du behöver läsa:

  • status: det viktigaste ordet. Se tabellen nedan.
  • flags: ad betyder att resolvern har kontrollerat svaret med DNSSEC (lektion 8.1).
  • ANSWER SECTION: posterna själva. Kolumnerna är samma som i en zon: namn, TTL, klass, typ, värde.
  • TTL (här 2847): hur många sekunder det här svaret stannar kvar i resolverns cache. Stod det 3600 i zonen, så är svaret alltså redan 753 sekunder gammalt. Frågar du igen ser du siffran räkna ner.
  • SERVER: vilken resolver du har frågat. Hemma är det ofta din router.

De tre statusarna du behöver känna till

StatusBetydelseVad du ska göra
NOERROR med svarAllt i sin ordning, det här är svaretStämmer inte värdet? Då finns det en felaktig post, eller så ser du en gammal cache
NOERROR utan svar (ANSWER: 0)Namnet finns, men saknar en post av den här typenOfta: du frågar efter fel typ (till exempel A på ett namn som bara har ett CNAME eller bara MX)
NXDOMAINDet här namnet finns inte allsSkrivfel, glömd post, eller ett dubbelt domännamn som mail.example.com.example.com
SERVFAILResolvern kunde inte få ett tillförlitligt svarNamnservrar onåbara, eller en trasig DNSSEC-kedja (prova +cd)

Praktiska varianter

Bara svaret med +short:

$ dig +short MX example.com
10 mail.example.com.
20 mail2.example.com.

Fråga en annan resolver eller en namnserver direkt med @. Det här är det viktigaste tricket vid problem. Frågar du den auktoritativa namnservern själv får du alltid det färska svaret, utan cache:

$ dig +short NS example.com
ns1.hosting.example.
ns2.hosting.example.

$ dig +short A www.example.com @ns1.hosting.example
192.0.2.20

$ dig +short A www.example.com @9.9.9.9
192.0.2.10

Här ser du på en gång vad som pågår: namnservern ger redan ut den nya adressen (.20), den publika resolvern har fortfarande den gamla i cachen (.10). Du behöver alltså inte göra något, bara vänta tills TTL har löpt ut (modul 6).

Andra typer: sätt typen efter namnet.

$ dig +short TXT example.com
"v=spf1 a mx include:_spf.hosting.example ~all"
"google-site-verification=AbC123..."

$ dig +short TXT _dmarc.example.com
"v=DMARC1; p=quarantine; rua=mailto:dmarc@example.com"

$ dig +short CNAME shop.example.com
shops.platform.example.

Följ hela resan med +trace. dig gör då själv vad en resolver gör: först roten, sedan TLD:n, sedan den auktoritativa servern (lektion 1.4):

$ dig +trace example.com A
.                 518400  IN  NS  a.root-servers.net.
;; Received 239 bytes from 192.168.1.1#53
com.              172800  IN  NS  a.gtld-servers.net.
;; Received 708 bytes from 198.41.0.4#53(a.root-servers.net)
example.com.      172800  IN  NS  ns1.hosting.example.
;; Received 412 bytes from 192.5.6.30#53(a.gtld-servers.net)
example.com.      3600    IN  A   192.0.2.10
;; Received 57 bytes from 198.51.100.53#53(ns1.hosting.example)

Med +trace ser du vilka namnservrar registryt verkligen lämnar ut. Det är praktiskt om du är osäker på om en namnserverändring redan har slagit igenom.

Se DNSSEC med +dnssec: du får RRSIG-signaturerna med. Med +cd stänger du av kontrollen för att se om en SERVFAIL beror på DNSSEC.

Reverse DNS med -x (lektion 4.6):

$ dig +short -x 192.0.2.25
mail.example.com.

Samma sak med nslookup

nslookup fungerar på vilken dator som helst. De viktigaste formerna:

C:\> nslookup example.com
Server:  router.lan
Address:  192.168.1.1

Non-authoritative answer:
Name:    example.com
Address:  192.0.2.10

C:\> nslookup -type=mx example.com
example.com    MX preference = 10, mail exchanger = mail.example.com

C:\> nslookup -type=txt _dmarc.example.com 9.9.9.9

En andra adress efter namnet (här 9.9.9.9) är servern du frågar, precis som @ vid dig. "Non-authoritative answer" betyder bara att svaret kommer från en resolver och inte från den auktoritativa namnservern: det är normalt. Finns inte namnet säger nslookup Non-existent domain, vilket är samma sak som NXDOMAIN.

Windows PowerShell: Resolve-DnsName

PS> Resolve-DnsName example.com -Type MX
PS> Resolve-DnsName _dmarc.example.com -Type TXT -Server 9.9.9.9
PS> Resolve-DnsName example.com -Type A -DnsOnly

Töm din egen cache

Visar ett onlineverktyg redan det nya svaret, men inte din egen dator? Då ligger det gamla svaret i cachen på din egen dator eller webbläsare.

  • Windows: ipconfig /flushdns i Kommandotolken.
  • macOS: sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder i Terminal.
  • Linux med systemd-resolved: resolvectl flush-caches.
  • Webbläsare: ett privat fönster, eller din telefon via 4G/5G med wifi avstängt.

Cachen hos din operatör eller router kan du inte tömma själv; där väntar du ut TTL:n.

I praktiken: så ser det ut i en panel

I de flesta paneler kan du inte köra dig. Använd därför dig vid sidan av din panel: titta först i panelen vad du har fyllt i, kontrollera sedan med dig @<din namnserver> om namnservern verkligen ger ut det, och kontrollera därefter med dig @9.9.9.9 om omvärlden redan ser det. Mitt WebOké har en DNS-diagnos som jämför namnservrarna sinsemellan; andra leverantörer har liknande knappar för "DNS-kontroll".

Sammanfattning

  • dig <namn> <typ> ställer samma fråga som en webbläsare eller mailserver; läs statusen först.
  • NOERROR med svar är bra, NOERROR utan svar betyder "namnet finns, typen inte", NXDOMAIN betyder "namnet finns inte", SERVFAIL betyder "inget tillförlitligt svar".
  • Med @server frågar du en viss resolver eller den auktoritativa namnservern direkt; så ser du skillnaden mellan ett fel och en cache.
  • +short, +trace, +dnssec, +cd och -x är de varianter du behöver mest.
  • nslookup och Resolve-DnsName gör samma sak på Windows.

Quiz

1. dig mail.example.com A ger status: NXDOMAIN. Vad betyder det?



2. Du har ändrat A-posten för www. dig +short www.example.com @ns1.hosting.example ger den nya adressen, dig +short www.example.com @1.1.1.1 ger fortfarande den gamla. Vad är det som händer?



3. Vilket kommando visar hela vägen från roten via TLD:n till den auktoritativa namnservern?



4. I utdatan från dig står det en TTL på 412 vid en A-post. I zonen står det 3600. Vad säger det?



5. Vad gör nslookup -type=mx example.com 9.9.9.9?



Uppgift

Uppgift Z8.2: dig och nslookup. Slå upp tre saker med dig, nslookup eller Resolve-DnsName (eller ett online dig-verktyg):

  1. statusen för ett namn som inte finns: bestaat-niet-dnscursus.sidn.nl;
  2. MX-posterna för wikipedia.org, direkt hos en av namnservrarna för wikipedia.org (slå upp dem först);
  3. den TTL som en publik resolver just nu ger tillbaka för A-posten för sidn.nl (fråga två gånger, med en minut emellan, och anteckna båda talen).

Fyll i svaren.

Uppgift Z8.2: dig och nslookup





Det du fyller i och det vi hittar live sparar vi inte. Din webbläsare kommer ihåg dina svar och om du klarat uppgiften. Är du inloggad sparar vi bara att du hade uppgiften (nästan) rätt i Mina kurser, där kan du också ta bort det.

Läs mer

Dessa artiklar beskriver stegen hos WebOké; kommandona fungerar likadant överallt.

Ett ögonblick…

Ställ in dina domäner

Ställ in namnservrar, koppling till ditt webbhotell och vem som blir innehavare för varje domän.

Hämtar dina domäner…