Udrulning af Linux-servere og SSH på ekspertniveau · Lektion

DNS-konfiguration og fejlfinding

Forstå, hvordan Linux-servere omsætter værtsnavne til IP-adresser: konfigurér resolvere, redigér /etc/hosts, og brug dig, nslookup og host til at diagnosticere DNS-problemer, der afbryder forbindelsen, selv når netværket fungerer.

Lektion 4 af 413 trin

DNS-konfiguration og fejlfinding er en gratis Udrulning af Linux-servere og SSH på ekspertniveau-lektion på CoddyKit. Dette er lektion 4 af 4. Du kan læse alle 3 lektioner i dette læringsspor gratis i deres fulde længde — derefter låser CoddyKit PRO alle lektioner op samt praktiske øvelser med en indbygget kodeeditor og en AI-underviser døgnet rundt. Den er en del af læringsforløbet i Udrulning af Linux-servere og SSH på ekspertniveau, og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. Udrulning af Linux-servere og SSH på ekspertniveau-kurset indeholder 4 lektioner i alt.

Hvorfor DNS er vigtigt på en server

Din server kan have perfekte netværks- og firewallindstillinger og stadig ikke kunne nå omverdenen, hvis den ikke kan slå navne op. DNS oversætter brugervenlige værtsnavne som example.com til IP-adresser.

Det er en vigtig netværksfærdighed at vide, hvordan navneopslag fungerer — og hvordan du fejlsøger dem.

Stien for navneopslag

Når et program skal bruge en IP-adresse til et navn, kontrollerer Linux typisk kilderne i denne rækkefølge:

  • Den lokale /etc/hosts-fil
  • Konfigurerede DNS-servere (resolvere)

Rækkefølgen styres af /etc/nsswitch.conf på linjen hosts:.

grep hosts /etc/nsswitch.conf
# hosts: files dns

Filen /etc/hosts

/etc/hosts knytter lokalt navne til IP-adresser og omgår DNS. Den er ideel til test, interne værtsnavne eller til at knytte et domæne til en bestemt IP-adresse.

Hver linje indeholder en IP-adresse efterfulgt af ét eller flere navne.

127.0.0.1   localhost
192.168.1.50  db.internal db

Hvor resolverne konfigureres

Den klassiske fil er /etc/resolv.conf, som viser navneservere. På moderne systemer administreres den ofte af systemd-resolved eller NetworkManager, så direkte redigering af den måske ikke bevares.

Kontrollér, hvad der faktisk bruges, før du ændrer noget.

cat /etc/resolv.conf
resolvectl status

Indstil en DNS-server

På et systemd-resolved-system skal du indstille DNS pr. netværksgrænseflade i stedet for at redigere resolv.conf. På servere baseret på Netplan definerer du den i YAML-konfigurationen.

Dette eksempel indstiller offentlige resolverne for en netværksgrænseflade.

sudo resolvectl dns eth0 1.1.1.1 8.8.8.8
resolvectl dns eth0

Slå poster op med dig

dig er det mest effektive værktøj til DNS-forespørgsler. Det viser svaret samt metadata om forespørgslen.

Indstillingen +short begrænser outputtet til selve svaret — ideelt til scripts.

dig example.com
dig +short example.com

Forespørg efter bestemte posttyper

DNS gemmer mange posttyper. Angiv en type for at undersøge mailservere, navneservere eller aliaser.

  • A — IPv4-adresse
  • AAAA — IPv6-adresse
  • MX — mailservere
  • NS — navneservere
  • CNAME — alias
dig example.com MX +short
dig example.com NS +short

nslookup og host

nslookup og host er enklere alternativer til dig. De er praktiske til hurtige tjek og omvendte opslag (fra IP til navn).

Omvendte opslag forespørger i PTR-posten for en adresse.

host example.com
nslookup example.com
dig -x 8.8.8.8 +short

Forespørg efter en bestemt server

Hvis du vil teste, om en bestemt resolver er problemet, kan du rette en forespørgsel mod en bestemt server med syntaksen @. Hvis en offentlig resolver virker, men din ikke gør, er problemet din DNS-konfiguration.

dig @1.1.1.1 example.com +short
dig @8.8.8.8 example.com +short

En arbejdsgang til fejlfinding

Når et navn ikke kan slås op, skal du gennemgå lagene:

  • Kan du pinge en IP-adresse direkte? (udelukker netværket)
  • Virker dig @1.1.1.1 name? (udelukker selve navnet)
  • Virker dig name med din standardresolver? (isolerer resolverkonfigurationen)
  • Er der en forældet post i /etc/hosts, som tilsidesætter den?
ping -c1 1.1.1.1
dig @1.1.1.1 example.com +short
dig example.com +short

Bedste praksis

Hold navneopslag pålidelige:

  • Brug mindst to resolverne for redundans
  • Redigér ikke resolv.conf manuelt, hvis den administreres automatisk
  • Brug /etc/hosts til test, men ryd forældede poster op
  • Foretræk dig +short i scripts for et rent output

Hurtigt tjek

Test din viden om DNS-fejlfinding.

Opsummering

Du kan nu konfigurere og fejlsøge DNS på en server:

  • Rækkefølgen for navneopslag via /etc/nsswitch.conf og /etc/hosts
  • Resolvere i resolv.conf / systemd-resolved
  • Forespørgsler med dig, host og nslookup, inklusive bestemte posttyper og servere
  • En lagdelt arbejdsgang til fejlfinding

Dette supplerer dine færdigheder i netværk og firewall med navnelaget.

Gratis at komme i gang

Lær Udrulning af Linux-servere og SSH på ekspertniveau med en AI-underviser — gratis

Skriv og kør rigtig kode i din browser, få øjeblikkelig hjælp fra en AI-underviser døgnet rundt, og fortsæt, hvor du slap, på web eller i appen.

Kurser
12
Lektioner
48

Ofte stillede spørgsmål

Er lektionen “DNS-konfiguration og fejlfinding” gratis?

Ja — alle 3 lektioner i læringssporet Udrulning af Linux-servere og SSH på ekspertniveau, inklusive “DNS-konfiguration og fejlfinding”, kan læses gratis i deres fulde længde her på webstedet. Derefter låser CoddyKit PRO alle lektioner op samt interaktive øvelser med en indbygget kodeeditor og en AI-underviser døgnet rundt. Udrulning af Linux-servere og SSH på ekspertniveau-kurset indeholder 4 lektioner i alt.

Hvad lærer jeg i “DNS-konfiguration og fejlfinding”?

Forstå, hvordan Linux-servere omsætter værtsnavne til IP-adresser: konfigurér resolvere, redigér /etc/hosts, og brug dig, nslookup og host til at diagnosticere DNS-problemer, der afbryder forbindelse… Du øver dig i Udrulning af Linux-servere og SSH på ekspertniveau med praktisk kode, som du kører direkte i browseren, og en AI-vejleder døgnet rundt besvarer dine spørgsmål, mens du arbejder dig gennem lektionen.

Skal jeg have erfaring for at begynde på Udrulning af Linux-servere og SSH på ekspertniveau?

Der kræves ingen tidligere erfaring. Udrulning af Linux-servere og SSH på ekspertniveau på CoddyKit er tilrettelagt for både begyndere og øvede, så du kan starte her eller fra begyndelsen og lære i dit eget tempo. Dette er lektion 4 af 4.

Hvor lang tid tager lektionen “DNS-konfiguration og fejlfinding”?

De fleste CoddyKit-lektioner tager cirka 5–10 minutter. Hver lektion er kort og interaktiv, så du gør løbende fremskridt og kan fortsætte, hvor du slap – på både web og app.

Kan jeg skrive og køre kode i denne Udrulning af Linux-servere og SSH på ekspertniveau-lektion?

Ja. Alle Udrulning af Linux-servere og SSH på ekspertniveau-lektioner har en indbygget kodeeditor, så du kan skrive og køre rigtig kode direkte i din browser og få øjeblikkelig feedback fra AI – uden lokal opsætning.

Alle lektioner i dette kursus

  1. Grundlæggende netværkskonfiguration
  2. Forstå firewalls (UFW/firewalld)
  3. Administration og sikring af porte
  4. DNS-konfiguration og fejlfinding
← Tilbage til Udrulning af Linux-servere og SSH på ekspertniveau