Rekommenderas, 2024

Redaktionen

Hur spola DNS-cache i Linux

DNS eller ett domännamnssystem, ansvarar för att lösa webbplatsnamn i sina respektive IP-adresser. Så om du har problem med att ansluta till en webbplats, eller om du bara vill ha en DNS-ändring som ska ses av din Ubuntu-maskin, ska du försöka spola DNS-cachen. Du kan också rensa DNS-cachen i Ubuntu om du har gjort ändringar i värdfilen och vill att den ska "settas" av ditt system utan att behöva starta om det. Tja, om du befinner dig i någon av dessa situationer, och du vill rensa DNS-cachen, så här spolar du DNS-cache i Linux:

Obs! Jag använder ett Ubuntu 16.10 "Yakkety Yak" -system för att visa dessa metoder. Processen bör dock liknas på de flesta Linux distros.

Kontrollera om DNS-caching är aktiverad

Alla Linux distros fungerar inte på samma sätt när det gäller saker som caching DNS. Till exempel cachar inte Ubuntu DNS som standard. Innan vi försöker rensa DNS-cachen på en Linux-maskin, låt oss kolla om cachning är aktiverad även. För att göra detta på ett Ubuntu-system kan du följa stegen nedan:

1. Starta terminalen och skriv " ps ax | grep dnsmasq ".

2. I utmatningen från kommandot kommer du att kunna se ett fält som heter " cache-size ". Kontrollera dess värde. Om värdet är noll betyder det att cachning är inaktiverad på systemet.

Obs! Om du vill aktivera DNS-caching på Linux kan du göra det genom att använda kommandot "sudo dnsmasq-c 150". Du kan använda vilket nummer som helst i stället för 150, vilket är i grunden antalet poster som dnsmasq kan cache.

Spola DNS-cache i Ubuntu

Om ditt Linux-system cachar DNS-poster, kan du försöka spola DNS-cachen för att bli av med DNS-relaterade problem. För att rensa DNS-cacheminne i Ubuntu kan du följa stegen nedan:

1. Starta terminalen (ctrl + alt + T) och skriv " sudo /etc/init.d/dns-clean restart ".

2. Skriv sedan kommandot " sudo /etc/init.d/networking force-reload "

Detta kommer att rensa din DNS-cache i Ubuntu, och om problemen som du upplevde berodde på DNS-problem, borde de vara borta.

Spola DNS-cache i DNS-tjänster på Linux

Som jag sa, upphäver Ubuntu inte DNS-poster som standard, men om du har installerat en DNS-tjänst manuellt, t.ex. nscd, kan du rensa cacheminnet. Metoder för att rensa cache för några vanliga DNS-tjänster ges nedan:

Spola nscd DNS Cache

  • sudo /etc/init.d/nscd omstart

Spola dnsmasq DNS Cache

  • sudo /etc/init.d/dnsmasq omstart

Spola BIND DNS Cache

Om du använder BIND kan du rensa DNS-cacheminnet genom att använda någon av följande kommandon:

  • sudo /etc/init.d/named reboot

  • sudo rndc omstart

  • sudo rndc exec

BIND version 9.3.0, och större, stöder spolning av DNS-cache för en viss domän, liksom för LAN eller WAN. Du kan använda följande kommandon för att använda denna funktion:

  • För att rensa DNS-cacheminne för en viss domän, använd " sudo rndc flushname beebom.com "

  • För att rensa DNS-cachen för LAN, använd " sudo rndc flush lan "

  • För att rensa DNS-cacheminne för WAN, använd " sudo rndc flush wan "

Bonus: Ändra DNS-inställningar i Ubuntu

Vi har pratat om att spola DNS-cachen i Ubuntu, men det kan finnas fall där du bara vill göra en ändring av DNS-inställningarna i Ubuntu. Om du vill ändra DNS-inställningarna i Ubuntu kan du göra det med hjälp av GUI, eller via terminalen.

Ändra DNS-inställningar med hjälp av GUI

Använda GUI för att ändra DNS-inställningar är lättare än att använda terminalen. Om du använder flera anslutningar måste du dock ändra DNS-inställningen för var och en av dem. För att ändra DNS-inställningar med GUI, följ bara stegen nedan:

1. Öppna Systeminställningar och klicka på Nätverk.

2. Klicka på pilen bredvid namnet på det nätverk du är ansluten till.

3. Klicka nu på "Inställningar". Detta öppnar inställningarna för den anslutningen.

4. Byt till IPv4-fliken, och du får se ett alternativ som heter " Ytterligare DNS-servrar ". Du kan ange DNS-servrarna du vill använda i det här fältet. Om du vill ange mer än en DNS-server ska du bara skilja dem med kommatecken.

Ändra DNS-inställningar med Terminal

Om du inte vill använda GUI och föredrar att ändra DNS-inställningar via Terminal kan du göra det genom att lägga till namnservrarna i konfigurationsfilen dnsmasq. Dnsmasq kommer emellertid inte att installeras som standard i Ubuntu-system (dnsmasq-bas, gör). Så först måste du installera dnsmasq genom att starta en terminal och använda " sudo apt-get install dnsmasq ".

  • När du har installerat dnsmasq. Du kan redigera konfigurationsfilen med " sudo nano /etc/dnsmasq.conf ".

  • Här kan du lägga till dina DNS-servrars IP-adresser där det står " Lägg till andra namnservrar här ".

Rensa DNS Cache i Linux med hjälp av dessa metoder

Du kan använda någon av dessa metoder för att rensa DNS-cachen i ett Linux-system. Problem med DNS-cache kan orsaka problem som en webbsida inte laddas, namnserver ändras inte igen av ditt system och mycket mer. När du spola DNS-cacheminnet kommer dessa problem troligtvis att gå iväg.

Så har du någonsin haft tvungen att spola DNS-cachen på ditt Linux-system? Om så är fallet, vilken metod använde du? Om du känner till någon annan metod för att rensa DNS-cachen på ditt Linux-system, låt oss meddela oss i kommentarfältet nedan.

Top