DNS( D omain N ame S ervice)は、Webサイト名をそれぞれのIPにマッピングする責任があります。 UbuntuにDNSをインストールして構成する方法については、ここをクリックしてください。
したがって、DNSはインターネットへの接続の重要な部分の1つであると見なされます。頻繁にアクセスするWebサイトにすばやくアクセスするために、当社のマシンはDNSレコードを追跡します。つまり、DNSレコードをキャッシュします。
Webサイトがアドレスを変更した場合はどうなりますか? IPの競合を引き起こす可能性があります。したがって、このような問題を回避するには、マシンのDNSキャッシュを定期的にフラッシュする必要があります。また、DNSキャッシュをクリアすると、システムを占有している不要なデータを削除し、有名な「古いエントリ」エラーに関連するいくつかの技術的な問題を解決するのに役立ちます。
このチュートリアルでは、UbuntuおよびCentOSオペレーティングシステムでDNSをフラッシュする方法を簡単かつ明確な手順で示します。
UbuntuマシンでDNSをフラッシュする
最初の方法:systemd-resolveを使用してDNSをフラッシュする
手順1.DNSをフラッシュする前に、次のコマンドを使用してDNS統計を確認できます。
sudo systemd-resolve --statistics
出力は次のようになります。
前のスクリーンショットのとおり、現在のキャッシュサイズは6です。
手順2.systemd-resolveを使用してDNSをフラッシュします。 systemd-resolveデーモンはほぼすべてのUbuntuシステムで実行されているため、次のコマンドを使用してDNSキャッシュをクリアするために使用できます。
sudo systemd-resolve --flush-caches
手順3.cachestatisticsコマンドを再実行します。
sudo systemd-resolve --statistics
上のスクリーンショットからわかるように、現在のキャッシュサイズパラメータはゼロであり、それが必要です。
2番目の方法:dns-cleanコマンドを使用してキャッシュをフラッシュする
DNSキャッシュをクリアする別の方法は、次のコマンドを使用することです:
sudo /etc/init.d/dns-clean start
3番目の方法:一部のUbuntuDNSサービスのキャッシュをフラッシュする
次に、いくつかのさまざまなDNSサービスのDNSキャッシュをクリアするためのいくつかのコマンドを示します。
- nscdサービスのDNSキャッシュをフラッシュする:
sudo /etc/init.d/nscd restart
- BINDサービスのDNSキャッシュをフラッシュする:
sudo /etc/init.d/named restart
- dnsmasqサービスのDNSキャッシュをフラッシュする:
sudo /etc/init.d/dnsmasq restart
- 特定のドメインのDNSキャッシュをフラッシュする必要がある場合は、次のコマンドを使用します。
sudo rndc flushname test.com
- LAN全体のDNSキャッシュをフラッシュする:
sudo rndc flush lan
- それぞれ、WAN全体のDNSキャッシュをフラッシュするには:
sudo rndc flush wan
CentOSマシンでDNSをフラッシュする
CentOSプラットフォームを実行しているマシンでシステムDNSキャッシュをクリアするには、次のコマンドを使用できます。
systemctl restart dnsmasq.service
出力は次のようになります。
UbuntuとCentOSでDNSをフラッシュする方法について知っておく必要があるのはこれだけです。ご不明な点がございましたら、コメントをお寄せください。喜んでサポートさせていただきます。