Hur man spolar DNS i Linux

Nov 14, 2024
Linux

Är din internet -surfupplevelse långsam på din Linux -enhet, eller är de webbplatser du besöker föråldrade eller fel webbplats helt? Låt oss diskutera Flushing DNS -cachen på Linux och hur du vet om du verkligen behöver.

Vad är DNS Caches?
Använder din dator en lokal DNS -cache?
Granska din DNS -cache
Hur man rengör DNS -cachen på Linux
Hur man spolar DNSMASQ -cachen på Linux
Spolad, med framgång

Vad är DNS Caches?

De domännamntjänst är den bit av magi som konverterar namn till siffror. Det tar enhetsnätverksnamn och webbplatsnamn och letar upp sina IP -adresser. Nätverket kan sedan använda IP -adressen för att korrekt dirigera trafik till dessa enheter eller webbplatser.

Dessa uppslag, kända som förfrågningar , händer inte omedelbart . Det finns en liten, begränsad tidsperiod. Internet-DNS-förfrågningar kan kräva frågeställare DNS-servrar, rotnamnsservrar, domänservrar på toppnivå och auktoritativa namnservrar. DNS -förfrågningar är snabba, men för att göra dem snabbare fortfarande cachas svaren på de senaste DNS -förfrågningarna på DNS -föregångsservrarna.

Om svaret på en DNS -begäran finns i föregångsserverens cache, behöver inga ytterligare servrar kontaktas. Svaret skickas tillbaka från föregångsserverens cache. På liknande sätt upprätthålls en liten cache av din bredbandsrouter hemma. Om du ber om en lokal nätverksenhet som använder sitt nätverksenhetsnamn anger din router IP -adressen. Det kan också cache -svar som den har fått från externa DNS -servrar.

Vanligtvis är nätverk och Linux -datorer konfigurerade för att använda externa DNS -tjänster, antingen tillhandahållna av din internetleverantör eller av en gratis tjänst som Openendns eller Google DNS . Det finns goda skäl till varför Vissa människor driver sin egen DNS -server , men de flesta av oss inte. Men din Linux -dator - även om den inte kör en DNS -server - kan eventuellt cache DNS -begäran.

Problemet med att använda cachade data är det hela beror på antagandet att ingen av de cachade detaljerna har förändrats sedan de cachade. Om detaljerna har ändrats kommer informationen du får att vara föråldrad.

Om en cache -post eller hela cachen blir korrupt får du i bästa fall flagnande prestanda och säkerhetssårbarheter i värsta fall. Det är när du vill undersöka "spolning" eller rensa DNS -cachen.

Använder din dator en lokal DNS -cache?

Några av våra testdatorer hade lokala DNS -cachar påslagen, och andra hade avstängd. Det var av på vår Manjaro 21 dator, men den aktiverades som standard på Fedora 37 och Ubuntu 22.10 .

För att avgöra om din Linux -dator cachar DNS -förfrågningar, använd är aktiv alternativet för systemctl kommando. Daemonen som hanterar DNS -cachen är Systemd Network Name Resolution Manager, känd som systemd-upplöst .

Om svaret är "aktivt" äger DNS -cachning. Om svaret är "inaktivt" är det inte. På den här datorn är den aktiv. Vi kan använda resolvektl Kommando med statistikalternativet för att se hur många poster som finns i cachen.

Vi kan se att det finns 330 poster i DNS -cachen på den här datorn.

Granska din DNS -cache

Att granska DNS -cache -posterna är inte en förutsättning för att spola cachen, och om du inte har något intresse av att göra det kan du Hoppa över hela steget . Ibland kan det dock vara informativt. Du kan se förvrängda poster som indikerar korruption, eller så kan du se felmeddelanden relaterade till enhetens adressering av problem i ditt nätverk.

Nu finns det inte ett enkelt sätt att se dessa poster. Vi kan göra det men måste vara lite kreativa. Usr1 eller användardefinierad signal nummer ett , är en signal som kan skickas av döda och döda alla kommandon. Denna signal har ingen fördefinierad betydelse. Applikationer är fria att ignorera denna signal eller reagera på vilket sätt som utvecklarna har implementerat.

De systemd-upplöst Daemon reagerar på Usr1 Genom att skriva sin cache till systemloggarna. Vi kan sedan använda journal Kommando för att filtrera bort DNS -posterna.

Vi kommer att använda döda alla beordra med Usr1 Att skicka signalen till systemd-upplöst demon. Observera att även om vi använder döda alla kommando, systemd-upplöst Daemon fortsätter att springa. Detta är inte en avslutande signal som vi skickar.

Nu kommer vi att använda journal kommando med -u (filtrera efter systemd enhet) alternativet för att extrahera loggposter som har genererats av systemd-upplöst . Vi kommer att omdirigera den ut till en textfiler som kallas "dns.txt."

Vi kommer att använda de mindre filvare För att se innehållet i filen.

Du kommer att kunna hitta de cachade mappningarna mellan domännamn och IP -adresser genom att bläddra och söka igenom texten.

Vi kan se en post för Google som har en IP -adress på 216.58.212.196. Du kan kontrollera det genom att sätta IP -adressen i en webbläsare. Du bör se hemsidan för Google Search.

Hur man rengör DNS -cachen på Linux

Spola cachen tar bort alla poster och startar insamlingsprocessen ännu en gång. Om det finns några tar detta tvång bort felaktiga och korrupta poster från cachen.

Kommandot är enkelt; vi använder resolvektl med flush-cachar alternativ.

Vi är tyst tillbaka till kommandoraden. För att bekräfta att något faktiskt har hänt kommer vi att kontrollera DNS -cachestatistiken igen.

Vi kan se att cachestorleken tappas till noll. Det kommer att öka med tiden när det ackumuleras nya poster.

Hur man spolar DNSMASQ -cachen på Linux

De dnsmasq Applikation tillhandahåller en DNS -cache och en DHCP -server. Det är populärt bland användare som vill köra sin egen DNS -server, särskilt på icke-systeminstallationer .

Spola dnsmasq DNS -cache är enkelt. Vi måste skicka Sugap signal, som berättar för dnsmasq Daemon för att effektivt återinitialisera. Att göra det rensar sin DNS -cache. För att skicka signalen använder vi döda alla kommando med -Hup flagga och applikationens namn.

Spolad, med framgång

Naturligtvis, om din dator inte cachar alls, finns det inget du behöver kontrollera.

Om det är Caching DNS -förfrågningar men allt fungerar bra kan du också ignorera det. Men om du upplever långsamma eller sporadiska webbsidesuppdateringar när du surfar på webben eller ser fel webbsidor helt, är det förmodligen en bra tid att rensa din DNS -cache.


Linux - Mest populära artiklar

Hur Kill Zombie processer på Linux

Linux Nov 25, 2024

Fatmawati Achmad Zaenuri / Shutterstock Program som är dåligt skrivna eller utförs dåligt kan lämna Zombie processer lurar inuti din Linux-dato..


Hur uppdaterar Ubuntu Linux

Linux Aug 27, 2025

Tomeqs / Shutterstock.com Behöver du den senaste och bästa i Ubuntu-programvaran? Du behöver inte vara ett Linux Pro. Läs vidare för att upptäcka hur d..


Hur man använder FSCK-kommandot på Linux

Linux Aug 18, 2025

Pixza Studio / Shutterstock Alla våra viktiga data sitter i ett filsystem av en eller annan typ, och filsystem frågor är bundna att hända. På Linux, kan v..


Vad är nytt i Linux Kernel 5.14

Linux Sep 9, 2025

Sean Locke Photography / Shutterstock Eftersom Linux varv 30 år gammal har Kernel 5.14 släppts. Den innehåller det vanliga breda erbjudandet av inre under-t..


Denna nya Linux gaming laptop Har Specs köra något annat

Linux Oct 20, 2025

Juno datorer Linux och spel börjar komma ihop mycket mer nyligen. De Ångdäck är på väg med Linux installerad, och Juno meddelade bara en ny Linux-spelb..


Hur man installerar Linux på en M1 Mac med Apple Silicon

Linux Nov 11, 2024

Native Linux-support för Apples nya armbaserade arkitektur är ännu inte klar, men du kan köra Linux på en M1 , M1 Pro, eller M1 max med hjälp av a virtuell maskin ..


Hur man lägger till en användare i sudoers -filen i Linux

Linux Oct 30, 2025

Om en sudé Kommando på Linux ger dig ett meddelande om att en användare "inte finns i sudoers -filen", måste du komma på "sudoers" -listan. Vi kommer att gå igenom att lägga t..


Hur man hanterar utrymmen i filnamn på Linux

Linux Dec 14, 2024

Liksom de flesta operativsystem stöder Linux filnamn med mellanslag i dem. Men att använda dessa filnamn på kommandoraden är inte alltid enkelt. Här är flera sätt du kan hantera filnamn ..


Kategorier