Hvordan løser jeg DNS-oppløsningsfeil på Linux Server?
Trinnvis veiledning for midlertidig feil i navneoppløsning, feil i domeneoppløsning og apt update DNS-feil.
Selv om Linux-servere ser ut til å ha en internettforbindelse, kan det hende at domeneadresser ikke løses. I dette tilfellet kan serveren få tilgang til IP-adresser, men google.com, debian.org, ubuntu.com eller lisens/API-tjenester.
Dette problemet manifesterer seg spesielt i følgende prosesser:
- passende oppdatering eller nam oppdatering Feil mottatt under
- WHMCS-lisens-, betalings- eller API-koblinger fungerer ikke
- Spillpanelet kan ikke koble til eksterne API-adresser
- Domeneping fungerer ikke mens ping-IP kjører på serveren
- Midlertidig svikt i navnevedtaket feil sett
1. Forstå om DNS virkelig er problemet
Sjekk først serverens offentlige internettilgang ved å pinge IP-adressen.
ping -c 4 8.8.8.8
Hvis denne kommandoen svarer, har serveren tilgang til Internett på IP-nivå. Test nå domeneoppløsning:
ping -c 4 google.com
Hvis IP-ping fungerer, men domeneping ikke fungerer, er problemet mest sannsynlig på DNS-siden.
2. Sjekke gjeldende DNS-innstillinger
I Linux-systemer er DNS-servere vanligvis /etc/resolv.conf er definert i filen.
cat /etc/resolv.conf
En sunn DNS-innstilling ser vanligvis slik ut:
nameserver 1.1.1.1 nameserver 8.8.8.8
Hvis filen er tom, inneholder feil IP-adresser, eller bare skriver lokale/ikke-fungerende DNS-adresser, kan domeneoppløsning mislykkes.
3. Midlertidig DNS-definisjon
For rask testing kan du definere midlertidig DNS med følgende kommando:
echo "nameserver 1.1.1.1" > /etc/resolv.conf echo "nameserver 8.8.8.8" >> /etc/resolv.conf
Test igjen senere:
ping -c 4 google.com
4. Vedvarende DNS-innstilling på Ubuntu / Debian-systemer
På moderne Ubuntu-systemer er nettverksinnstillinger vanligvis nettplan Det administreres av . Liste over Netplan-filer:
ls /etc/netplan/
Rediger filen:
nano /etc/netplan/01-netcfg.yaml
Eksempel på DNS-definisjon:
network:
version: 2
ethernets:
eth0:
dhcp4: true
nameservers:
addresses:
- 1.1.1.1
- 8.8.8.8Slik bruker du innstillingen:
netplan apply
Hvis du er tilkoblet via SSH og er usikker på nettverksinnstillingen, vær forsiktig. Feil nettplaninnstilling kan bryte SSH-tilkoblingen din.
5. CentOS / AlmaLinux / Rocky Linux DNS-innstilling
På RedHat-baserte systemer kan DNS-innstillinger gjøres via NetworkManager.
For å se navnet på den aktive tilkoblingen:
nmcli con show
Eksempel på DNS-innstilling:
nmcli con mod "System eth0" ipv4.dns "1.1.1.1 8.8.8.8" nmcli con up "System eth0"
Tilkoblingsnavnet ditt kan være annerledes. Du må bruke ditt eget tilkoblingsnavn i kommandoen.
6. systemløst Sjekk
DNS-oppløsning på noen systemer systemløst Det administreres av tjenesten.
systemctl status systemd-resolved
Hvis tjenesten er nede, kan du starte den:
systemctl enable systemd-resolved systemctl start systemd-resolved
For å se DNS-status:
resolvectl status
7. DNS-sjekker for pakkeoppdateringsfeil
Når DNS er korrupt, vil heller ikke pakkeadministratorer fungere. For eksempel kan følgende feil oppstå:
Temporary failure resolving 'archive.ubuntu.com' Could not resolve host Name or service not known
I dette tilfellet bør ikke pakkelageret anses som korrupt. DNS-oppløsning bør testes først.
Vanlige feil
- Tenker at det ikke er internett, men innser ikke at faktisk bare DNS er ødelagt
- Skriver midlertidig DNS i filen /etc/resolv.conf og tenker at det er en permanent løsning
- Feil mellomromsinnrykk i Netplan-fil
- Feilstaving av NetworkManager-tilkoblingsnavnet
- Tenker at det fungerende API-et eller lisensieringssystemet er feil på grunn av et DNS-problem
FAQ
IP-ping fungerer, men domeneping fungerer ikke, hva er problemet?
Det er mest sannsynlig et DNS-oppløsningsproblem. Serveren kan få tilgang til internett, men den kan ikke oversette domenenavn til IP-adresser.
Hvilke DNS-servere kan jeg bruke?
Vanligvis tilgjengelige er 1.1.1.1, 1.0.0.1, 8.8.8.8 og 8.8.4.4. Privat DNS-server kan være å foretrekke i bedriftsstrukturer.
Hvorfor endres resolv.conf av seg selv?
Fordi filen administreres automatisk av netplan, NetworkManager eller systemd-løst på de fleste systemer.
Sikkerhets- og driftsanbefalinger
- Sørg for å utføre en domeneoppløsningstest etter DNS-endring.
- Legg til DNS-feil i betalings-, lisensierings- og API-systemer til den første sjekklisten.
- Definer minst to DNS-adresser i stedet for én enkelt DNS.
- Hvis serverleverandøren din tilbyr privat DNS, bør du vurdere det også.
- Merk at feil nettplan-innstilling kan bryte SSH-forbindelsen.
Denne artikkelen er spesielt utarbeidet for PvPServer.