Er Internett -nettleseropplevelsen din treg på Linux -enheten din, eller er nettstedene du besøker utdaterte eller feil nettsted helt? La oss diskutere å skylle DNS -cachen på Linux, og hvordan du vet om du virkelig trenger det.
Hva er DNS -hurtigbuffer?
Bruker datamaskinen din en lokal DNS -hurtigbuffer?
Gjennomgå DNS -cachen din
Hvordan tømme DNS -cachen på Linux
Hvordan du kan skylle dnsmasq cache på linux
Spylt, med suksess
Hva er DNS -hurtigbuffer?
De Domenenavnstjeneste er litt magi som konverterer navn til tall. Det tar enhetsnettnavn og nettstednavn og ser opp ip -adressene sine. Nettverket kan deretter bruke IP -adressen til å rute trafikk riktig til enhetene eller nettstedene.
Disse oppslagene, kjent som forespørsler , Ikke skje øyeblikkelig . Det er en liten, endelig periode involvert. Internett DNS-forespørsler kan kreve spørsmål om forløper DNS, Root Name-servere, domeneservere på toppnivå og autoritative navneservere. DNS -forespørsler er raske, men for å gjøre dem raskere, blir svarene på nylige DNS -forespørsler hurtigbufret på DNS -forløperserverne.
Hvis svaret på en DNS -forespørsel blir funnet i forløperserverens cache, må ingen ytterligere servere kontaktes. Svaret blir sendt tilbake fra forløperserverens cache. Tilsvarende opprettholdes en liten hurtigbuffer av bredbåndsruteren din hjemme. Hvis du ber om en lokal nettverksenhet ved hjelp av nettverkets enhetsnavn, gir ruteren IP -adressen. Det kan også cache -svar det har mottatt fra eksterne DNS -servere.
Vanligvis er nettverk og Linux -datamaskiner konfigurert til å bruke eksterne DNS -tjenester, enten levert av internettleverandøren din eller av en gratis tjeneste som for eksempel som OpenDNS eller Google DNS . Det er gode grunner til at Noen mennesker kjører sin egen DNS -server , men de fleste av oss gjør det ikke. Imidlertid kan Linux -datamaskinen din - selv om den ikke kjører en DNS -server - eventuelt cache DNS -beres resultater.
Problemet med å bruke hurtigbufret data er at hele saken er forutsatt at det antas at ingen av de hurtigbufret detaljene har endret seg siden de ble hurtigbufret. Hvis detaljene har endret seg, vil informasjonen du mottar være utdatert.
Hvis en hurtigbuffer eller hele hurtigbufferen blir korrupt, vil du i beste fall få flassende ytelser og sikkerhetsproblemer i verste fall. Det er da du vil se på å "spyle" eller rydde DNS -cachen.
Bruker datamaskinen din en lokal DNS -hurtigbuffer?
Noen av testdatamaskinene våre hadde lokale DNS -hurtigbuffer slått på, og andre fikk den slått av. Det var av på vår Manjaro 21 datamaskin, men den ble slått på som standard på Fedora 37 og Ubuntu 22.10 .
For å avgjøre om Linux -datamaskinen din er Cacheing DNS -forespørsler, bruk
er aktiv
Alternativ for
SystemCTL
kommando. Daemon som administrerer DNS -cachen er SystemD Network Name Resolution Manager, kjent som
Systemd-løst
.
Hvis responsen er "aktiv", foregår DNS -hurtigbufring. Hvis responsen er "inaktiv", er det ikke det. På denne datamaskinen er den aktiv. Vi kan bruke
Resolvectl
Kommando med statistikkalternativet for å se hvor mange poster som er i hurtigbufferen.
Vi kan se at det er 330 oppføringer i DNS -cachen til denne datamaskinen.
Gjennomgå DNS -cachen din
Å gjennomgå DNS -cacheoppføringene er ikke en forutsetning for å spyle cachen, og hvis du ikke har noen interesse i å gjøre det, kan du Hopp over hele trinnet . Noen ganger kan det imidlertid være informativt. Du kan se krypterte oppføringer som indikerer korrupsjon, eller du kan se feilmeldinger relatert til enheten som adresserer problemer i nettverket ditt.
Nå er det ikke en enkel måte å se disse oppføringene på. Vi kan gjøre det, men må være litt kreative.
USR1
, eller
Brukerdefinert signal nummer én
, er en
signal
som kan sendes av
drepe
og
Drep alle
kommandoer. Dette signalet har ingen forhåndsdefinert betydning. Programmer står fritt til å ignorere dette signalet eller reagere på hvilken måte utviklerne har implementert.
De
Systemd-løst
Daemon reagerer på
USR1
Ved å skrive cachen til systemlogger. Vi kan deretter bruke
Journalctl
kommando for å filtrere ut DNS -oppføringene.
Vi bruker
Drep alle
kommando med
USR1
Å sende signalet til
Systemd-løst
Daemon. Merk at selv om vi bruker
Drep alle
Kommando, The
Systemd-løst
Daemon fortsetter å løpe. Dette er ikke et termineringssignal som vi sender.
Nå bruker vi
Journalctl
kommando med
-u
(filtrer etter
Systemd
enhet) alternativ for å trekke ut loggoppføringene som er generert av
Systemd-løst
. Vi vil omdirigere den utdata til en tekstfiler som heter "dns.txt."
Vi bruker
de
mindre
Filvisning
For å se innholdet i filen.
Du kan finne hurtigbufrede kartlegginger mellom domenenavn og IP -adresser ved å bla og søke gjennom teksten.
Vi kan se en oppføring for Google som har en IP -adresse på 216.58.212.196. Du kan sjekke det ved å sette IP -adressen i en nettleser. Du bør se hjemmesiden til Google Search.
Hvordan tømme DNS -cachen på Linux
Å skylle hurtigbufferen fjerner alle oppføringer, og starter innsamlingsprosessen en gang til. Hvis det er noen, fjerner dette med tvangsfeil og korrupte oppføringer fra hurtigbufferen.
Kommandoen er enkel; vi bruker
Resolvectl
med
Flush-caches
alternativ.
Vi er lydløst returnert til kommandolinjen. For å bekrefte at noe faktisk har skjedd, vil vi sjekke DNS -cache -statistikken igjen.
Vi kan se at hurtigbufferstørrelsen er falt til null. Det vil øke over tid når det akkumulerer nye oppføringer.
Hvordan du kan skylle dnsmasq cache på linux
De
dnsmasq
Programmet gir en DNS -cache og en DHCP -server. Det er populært blant brukere som vil kjøre sin egen DNS -server, spesielt på
ikke-systemdinstallasjoner
.
Spyling
dnsmasq
DNS -cache er enkelt. Vi må sende
Sukk
signal, som forteller
dnsmasq
Daemon for å effektivisere reinitialisere effektivt. Hvis du gjør det, tømmer DNS -hurtigbufferen. For å sende signalet bruker vi
Drep alle
kommando med
-Hup
flagg, og navnet på applikasjonen.
Spylt, med suksess
Hvis datamaskinen din ikke er hurtigbufring i det hele tatt, er det selvfølgelig ingenting du trenger å sjekke.
Hvis det er cache av DNS -forespørsler, men alt fungerer helt fint, kan du også ignorere det. Men hvis du opplever langsomme eller sporadiske websideoppdateringer når du surfer på nettet, eller ser feil websider helt, er det sannsynligvis et godt tidspunkt å tømme DNS -cachen din.