Jak wyczyścić pamięć podręczną DNS systemu Linux?

Serwer DNS (Domain Name System) został stworzony w celu tłumaczenia nazw domen na adresy IP i odwrotnie w celu umożliwienia przesyłania pakietów danych do komputerów docelowych.Za każdym razem, gdy wpisujemy adres W przeglądarce internetowej, sprzęt odpowiada za wysłanie zapytania do zarejestrowanego serwera DNS, żądając adresu IP, który jest powiązany z wyszukiwaną nazwą domeny, wyszukiwanie to jest czasochłonne i jeśli jest przeprowadzane w każdym procesie dostępu, serwer DNS może obsłużyć dużą liczbę żądań, które mogą ostatecznie spowodować jego upadek, a w konsekwencji odmowa dostępu.

Aby tego uniknąć, istnieje pamięć podręczna DNS, która jest odpowiedzialna za lokalne zapisanie adresu IP wspomnianej domeny w celu pominięcia procesu wyszukiwania przy następnym dostępie, ale zamiast tego jest przekierowywana, przyjmując tę ​​lokalną wartość, a tym samym zwalniamy obciążenie serwera a jednocześnie uzyskujemy dostęp znacznie szybciej. Problem polega jednak na tym, że zbyt duża hostowana pamięć podręczna DNS może wpływać na wydajność przeglądarki, dlatego zaleca się jej wydanie. Zobaczymy, jak wykonać to zadanie w systemie Linux.

1. Wyczyść pamięć podręczną DNS za pomocą systemd-resolve w systemie Linux


Ubuntu i inne dystrybucje oparte na Debianie korzystają z polecenia systemd-resolve, to polecenie jest demonem DNS wbudowanym w systemd i jest usługą systemową, która zapewnia rozwiązywanie nazw sieciowych dla aplikacji lokalnych.

To polecenie implementuje pamięć podręczną i walidację modułu rozpoznawania nazw DNS/DNSSEC, a także moduł rozpoznawania nazw LLMNR i MulticastDNS. Lokalne aplikacje mogą wysyłać żądania rozpoznawania nazw sieciowych przez trzy interfejsy:

  • W pełni funkcjonalny natywny interfejs API rozwiązanego systemu jest udostępniany na magistrali.
  • API glibc getaddrinfo, które jest zdefiniowane przez RFC3493 i powiązane z nim funkcje rozwiązywania, w tym gethostbyname.
  • Lokalny odbiornik DNS jest oferowany pod adresem IP 127.0.0.53 w lokalnym interfejsie pętli zwrotnej, stamtąd programy generujące żądania DNS bezpośrednio, z pominięciem lokalnych interfejsów API, mogą używać tego kodu pośredniczącego do łączenia się z rozwiązaniem systemd

Krok 1
Aby użyć tego polecenia, najpierw zobaczymy statystyki pamięci podręcznej DNS w systemie:

 sudo systemd-resolve -statystyki 

POWIĘKSZAĆ

Krok 2
Teraz, aby wyczyścić pamięć podręczną DNS, wykonujemy:

 sudo systemd-resolve --flush-cachres 

POWIĘKSZAĆ

Krok 3
Jak widać, po ponownym uruchomieniu statystyk pamięć podręczna DNS została wyczyszczona. To jest najczęstsza metoda. Inne opcje do użycia w różnych dystrybucjach to:

W przypadku korzystania z RedHata lub ArchLinux

 sudo systemctl restart nscd 

2. Wyczyść pamięć podręczną DNS za pomocą dnsmasq lub named w systemie Linux


Następnie zobaczymy dwie inne opcje, aby móc wyczyścić pamięć podręczną

Wyczyść pamięć podręczną DNS za pomocą DnsmasqDnsmasq jest często używany w lokalnych serwerach DNS lub routerach, aby wyczyścić pamięć podręczną DNS za pomocą tego polecenia, musimy wykonać:

 sudo systemctl restart dnsmasq 

Wyczyść pamięć podręczną DNS za pomocą BINDTo polecenie BIND jest używane dla serwerów DNS specjalnie zaprojektowanych do określonych zadań i do wyczyszczenia pamięci podręcznej DNS po prostu uruchom:

 nazwany restart sudo systemctl 

Tak proste, wyczyściliśmy pamięć podręczną DNS Linuksa, poprawiając w ten sposób wydajność naszego sprzętu za pośrednictwem terminala.

wave wave wave wave wave