GNU/Linux >> Belajar Linux >  >> Linux

Cara Menghapus Atau Membersihkan Cache DNS Di Linux

Panduan singkat ini menjelaskan semua cara yang mungkin untuk menghapus atau membersihkan cache DNS di sistem operasi Linux. Bagi mereka yang bertanya-tanya, cache DNS (atau terkadang disebut cache penyelesai DNS ) adalah database sementara kecil yang dikelola oleh sistem operasi. Ini menyimpan informasi tentang semua situs web yang dikunjungi dan domain Internet lainnya. Dengan kata lain, cache DNS berisi pencarian DNS terbaru. Saat Anda mengunjungi situs web yang sama beberapa kali, OS mengambil catatan DNS situs web tersebut dari database cache DNS lokal, bukan dari server DNS publik yang sebenarnya. Oleh karena itu, caching DNS meningkatkan waktu pemuatan situs web dan mengurangi konsumsi bandwidth/CPU server DNS asal.

Mengapa Anda harus menghapus atau membersihkan cache DNS?

Mungkin ada banyak alasan untuk menghapus cache DNS lokal. Misalnya, Anda mungkin telah menyesuaikan situs web Anda atau mengubah pengaturan DNS untuk domain Anda atau Anda menghadapi beberapa masalah konektivitas Internet. Dalam kasus seperti itu, jika Anda mencoba mengunjungi situs tersebut, OS Anda kemungkinan akan mendapatkan versi situs yang di-cache dari cache DNS lokal. Jadi, mengosongkan cache DNS lokal akan menghapus semua entri dari database cache DNS lokal dan memaksa sistem Anda untuk mengisi kembali cache DNS dengan entri baru dari server DNS yang sebenarnya dan menampilkan salinan situs web yang baru.

Hapus Atau Siram Cache DNS Di Linux

Secara default, caching DNS tidak diinstal dan/atau diaktifkan pada tingkat sistem operasi di Linux. Sebaliknya, aplikasi seperti browser web memelihara cache internal mereka sendiri. Jadi, Anda cukup mengosongkan cache browser atau memulai ulang untuk memperbaiki masalah konektivitas Internet, menyelesaikan masalah DNS spoofing (mis., keracunan cache DNS) dan menyelesaikan masalah konten basi. Jika distribusi Linux Anda menggunakan layanan caching DNS, Anda perlu menghapusnya secara manual seperti yang dijelaskan di bawah ini. Ada beberapa cara untuk menghapus cache DNS. Ini bervariasi tergantung pada distribusi Linux dan layanan caching DNS yang Anda gunakan. Di sini saya telah menyertakan instruksi untuk menghapus layanan cache DNS yang paling umum digunakan di Linux.

1. Hapus layanan cache DNS Systemd-resolve

Pemecahan sistem adalah layanan systemd yang menyediakan layanan caching DNS tingkat sistem untuk aplikasi lokal. Ini adalah bagian dari paket systemd yang diinstal secara default. Layanan yang diselesaikan dengan sistem diaktifkan secara default di sebagian besar sistem operasi Linux modern seperti Fedora dan Ubuntu. Pertama, mari kita periksa apakah service systemd-resolved aktif atau tidak menggunakan perintah:

$ sudo systemctl is-active systemd-resolved.service

Jika layanan yang diselesaikan systemd diaktifkan, Anda akan melihat "aktif" dalam keluaran. Jika tidak aktif, itu akan mencetak "tidak aktif" .

Seperti yang Anda lihat pada output di atas, layanan systemd-resolved aktif di sistem saya.

Mari kita lihat statistik layanan cache systemd-resolve dengan perintah:

$ sudo systemd-resolve --statistics

Contoh keluaran:

DNSSEC supported by current servers: no

Transactions              
Current Transactions: 0   
  Total Transactions: 3117
                          
Cache                     
  Current Cache Size: 58  
          Cache Hits: 1248
        Cache Misses: 1891
                          
DNSSEC Verdicts           
              Secure: 0   
            Insecure: 0   
               Bogus: 0   
       Indeterminate: 0

Seperti yang Anda lihat, output di atas mencantumkan jumlah total ukuran cache saat ini, hit, dan cache yang terlewat.

Untuk membersihkan cache systemd-resolve, jalankan:

$ sudo systemd-resolve --flush-caches

Pada eksekusi yang berhasil, Anda tidak akan melihat output apa pun.

Sekarang, periksa statistik systemd-resolve untuk memverifikasi apakah cache DNS lokal dibersihkan atau tidak.

$ sudo systemd-resolve --statistics

Anda sekarang akan melihat ukuran cache saat ini sebagai nol.

DNSSEC supported by current servers: no

Transactions              
Current Transactions: 0   
  Total Transactions: 3155
                          
Cache                     
  Current Cache Size: 0   
          Cache Hits: 1255
        Cache Misses: 1922
                          
DNSSEC Verdicts           
              Secure: 0   
            Insecure: 0   
               Bogus: 0   
       Indeterminate: 0

2. Hapus layanan cache DNS Nscd

Nscd , kependekan dari n ame s layanan c sakit d aemon, adalah daemon caching yang menyediakan cache untuk permintaan layanan nama yang paling umum. Ini adalah layanan caching pilihan untuk sebagian besar sistem berbasis Redhat. Jika sistem Linux Anda menggunakan layanan caching nscd, Anda dapat menghapus atau menghapus layanan caching DNS lokal hanya dengan memulai ulang layanan nscd seperti di bawah ini:

$ sudo systemctl restart nscd.service

Atau,

$ sudo service nscd restart

Atau,

$ sudo /etc/init.d/nscd restart

3. Hapus layanan cache DNS Bind/Named

Domain Nama Internet Berkeley (singkatnya BIND ) adalah server DNS open source paling populer yang digunakan saat ini. Jika Anda menggunakan BIND untuk menyimpan kueri DNS, gunakan perintah berikut untuk menghapus/menghapus layanan cache BIND di Linux:

$ sudo systemctl restart named

Atau,

$ sudo service named reload

Atau,

$ sudo /etc/init.d/named restart

Atau,

$ sudo rndc reload

Atau,

$ sudo rndc exec

Versi BID terbaru memungkinkan Anda untuk menghapus cache DNS untuk domain tertentu juga. Perintah berikut menghapus cache DNS untuk domain ostechnix.com:

$ sudo rndc flushname ostechnix.com

Anda juga dapat menghapus cache DNS untuk seluruh zona LAN dan WAN seperti di bawah ini:

$ sudo rndc flush lan

$ sudo rndc flush wan

4. Hapus layanan cache DNS Dnsmasq

Dnsmasq adalah server DNS DHCP dan caching yang ringan dengan dukungan untuk server PXE dan TFTP. Sangat cocok untuk router dan firewall dengan sumber daya terbatas untuk mengelola jaringan kecil.

Jika Anda menggunakan dnsmasq sebagai layanan caching, Anda dapat menghapus layanan caching DNS lokal seperti di bawah ini:

$ sudo systemctl restart dnsmasq

Cara lain untuk menghapus cache DNS lokal di Ubuntu dan varian Ubuntu lainnya seperti Linux Mint adalah dengan menjalankan perintah berikut:

$ sudo /etc/init.d/dns-clean restart

Semoga membantu.

Bacaan terkait:

  • Instal dan konfigurasikan server DNS di Ubuntu 16.04 LTS


Linux
  1. Cara Menghapus Riwayat Bash di Linux

  2. Cara Menghapus Cache Browser Web Dari Commandline Di Linux

  3. Cara Menghapus Cache Memori di Linux

  1. Cara Membersihkan Cache DNS di Ubuntu dan LinuxMint

  2. Linux – Bagaimana Mengganti Server Vm Dns?

  3. Cara membersihkan cache penyelesai DNS di Linux (dan FreeBSD)

  1. Cara Membersihkan Cache DNS di macOS, Windows, &Linux

  2. Cara Menghapus Cache Redis

  3. Cara Menghapus (Flush) Cache DNS di Windows, MacOS, dan Linux