Slik løser du "Midlertidig feil i navneløsning"-problemet


Noen ganger når du prøver å pinge et nettsted, oppdatere et system eller utføre en oppgave som krever en aktiv internettforbindelse, kan du få feilmeldingen «midlertidig feil i navneoppløsning» på terminalen din.

For eksempel, når du prøver å pinge et nettsted, kan du støte på feilen som vises:

tecmint@ubuntu:~$ ping google.com
ping: linux-console.net: Temporary failure in name resolution

Dette er vanligvis en navneoppløsningsfeil og viser at DNS-serveren din ikke kan løse domenenavnene til deres respektive IP-adresser. Dette kan by på en alvorlig utfordring siden du ikke vil være i stand til å oppdatere, oppgradere eller installere noen programvarepakker på Linux-systemet ditt.

I denne artikkelen vil vi se på noen av årsakene til «midlertidig feil i navneløsning»-feilen og løsninger på dette problemet.

1. Manglende eller feilkonfigurert resolv.conf-fil

/etc/resolv.conf-filen er resolver-konfigurasjonsfilen i Linux-systemer. Den inneholder DNS-oppføringene som hjelper Linux-systemet med å løse domenenavn til IP-adresser.

Hvis denne filen ikke er til stede eller er der, men du fortsatt har navneoppløsningsfeilen, oppretter eller åpner du filen /etc/resolv.conf i et tekstredigeringsprogram med root-privilegier.

sudo nano /etc/resolv.conf
OR
sudo vim /etc/resolv.conf

Deretter legger du til Googles offentlige DNS-servere med navneservernøkkelordet etterfulgt av IP-adressen til DNS-serveren.

nameserver 8.8.8.8
nameserver 8.8.4.4

Lagre endringene og start systemd-løst-tjenesten på nytt som vist.

sudo systemctl restart systemd-resolved.service

Det er også klokt å sjekke statusen til løseren og sikre at den er aktiv og kjører som forventet:

sudo systemctl status systemd-resolved.service

Prøv deretter å pinge et hvilket som helst nettsted, og problemet skal være løst.

ping google.com

Etter å ha bekreftet nettverkstilkoblingen, sørg for å redigere /etc/resolv.conf-filen for å forhindre at den blir overskrevet av nettverksadministrasjonsverktøy.

For å gjøre dette kan du opprette en symbolsk lenke til /dev/null:

sudo ln -sf /dev/null /etc/resolv.conf

Merk: Noen Linux-distribusjoner, spesielt de som bruker NetworkManager, kan automatisk administrere /etc/resolv.conf-filen. Hvis det er tilfelle, kan det hende at manuell redigering av filen ikke har en varig effekt.

I stedet kan det hende du må konfigurere DNS-innstillinger gjennom riktig nettverksadministrasjonsverktøy eller konfigurasjonsfiler for din spesifikke distribusjon. Sørg for å konsultere distribusjonens dokumentasjon eller støtteressurser for den anbefalte metoden for å konfigurere DNS i slike tilfeller.

2. Brannmurrestriksjoner

Hvis den første løsningen ikke fungerte for deg, kan brannmurrestriksjoner hindre deg i å utføre DNS-spørringer. Sjekk brannmuren din og bekreft om port 53 (brukes for DNS – Domain Name Resolution ) og port 43 (brukes for whois-oppslag) er åpne. Hvis portene er blokkert, åpner du dem på følgende måte:

Åpne DNS-porter på UFW-brannmur

På Debian-baserte distribusjoner må du åpne portene 53 og 43 på UFW-brannmuren ved å kjøre kommandoene nedenfor:

sudo ufw allow 53/tcp
sudo ufw allow 43/tcp
sudo ufw reload

Åpne DNS-porter på FirewallD Firewall

På RHEL-baserte distribusjoner må du åpne portene 53 og 43 på brannmuren ved å kjøre kommandoene nedenfor.

sudo firewall-cmd --add-port=53/tcp --permanent
sudo firewall-cmd --add-port=43/tcp --permanent
sudo firewall-cmd --reload

Det er vårt håp at du nå har en idé om «midlertidig svikt i navneløsning»-feilen og hvordan du kan gå frem for å fikse den i noen få enkle trinn. Som alltid setter vi stor pris på tilbakemeldingen din.