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.
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 dnsFilen /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 dbHvor 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 statusIndstil 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 eth0Slå 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.comForespørg efter bestemte posttyper
DNS gemmer mange posttyper. Angiv en type for at undersøge mailservere, navneservere eller aliaser.
A— IPv4-adresseAAAA— IPv6-adresseMX— mailservereNS— navneservereCNAME— alias
dig example.com MX +short
dig example.com NS +shortnslookup 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 +shortForespø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 +shortEn 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 namemed 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 +shortBedste praksis
Hold navneopslag pålidelige:
- Brug mindst to resolverne for redundans
- Redigér ikke
resolv.confmanuelt, hvis den administreres automatisk - Brug
/etc/hoststil test, men ryd forældede poster op - Foretræk
dig +shorti 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.confog/etc/hosts - Resolvere i
resolv.conf/systemd-resolved - Forespørgsler med
dig,hostognslookup, inklusive bestemte posttyper og servere - En lagdelt arbejdsgang til fejlfinding
Dette supplerer dine færdigheder i netværk og firewall med navnelaget.
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
- Grundlæggende netværkskonfiguration
- Forstå firewalls (UFW/firewalld)
- Administration og sikring af porte
- DNS-konfiguration og fejlfinding