DNSサーバーは、ドメイン名をIPアドレスに変換するために使用されます。ブラウザのアドレスバーにWebサイト名を入力すると、システムはこのアドレスの場所を認識しません。 DNSサーバーからこのアドレスを要求します。 DNSサーバーには、ドメイン名からIPアドレスへのマッピングが含まれています。このドメイン名からIPアドレスへのマッピングは随時変更されます。
私たちのシステムはまた、私たちが最近訪れたサイトに関するドメインからIPへのマッピング情報を含む一時的なデータベースを維持しています。この一時データベースはDNSキャッシュと呼ばれます。これは、頻繁にアクセスするサイトや最近アクセスするサイトを、DNSサーバーから取得するのではなく、ローカルに保存されているDNSキャッシュからより迅速に取得しないようにするために使用されます。
DNSキャッシュをフラッシュする必要がある場合があります。これは、キャッシュが破損し、間違ったWebサイトにリダイレクトされる場合などに必要です。サイトが別のアドレスに移動されたが、ブラウザがまだ古いサイトをロードしている場合にも必要です。 DNSキャッシュをフラッシュすると、古いレコードや無効なレコードを含むドメインからIPへのマッピングエントリ全体が削除されます。次回システムがWebサイトにアクセスしようとすると、DNSキャッシュは新しいエントリを再入力します。
UbuntuでDNSキャッシュをフラッシュする方法を見てみましょう。
注 :ここで説明する手順は、 Ubuntu 20.04 LTSでテストされています。 。コマンドはターミナルで実行されており、 Ctrl + Alt + Tで開くことができます。 ショートカット。
DNSキャッシュをフラッシュする方法
ほとんどのUbuntu(18.04以降)およびDebianシステムは、systemd-resolvedデーモンを使用してDNSクエリをキャッシュします。 DNSキャッシュをフラッシュするためにも使用できます。
1。 「systemd-resolved」ステータスを確認してください
まず、systemd-resolvedが実行されているかどうかを確認しましょう。これを行うには、次のコマンドを実行します。
$ sudo systemctl is-active systemd-resolved
「アクティブ」が表示された場合 上記のコマンドの出力にある」は、systemd-resolvedがシステムで実行されていることを意味します。
2。現在のキャッシュサイズを表示
ここで、現在のキャッシュサイズを他の情報と一緒に表示する場合は、ターミナルで次のコマンドを実行します。
$ sudo systemd-resolve --statistics
以下は、さまざまな情報を示す上記のコマンドの出力です。現在、関心があるのは「現在のキャッシュサイズ」のみです。 」、これは8です。 キャッシュサイズを0にします それを洗い流すことによって。
3。 DNSキャッシュをフラッシュする
ここで、DNSキャッシュをフラッシュするには、ターミナルで次のコマンドを実行します。
$ sudo systemd-resolve --flush-caches
4。キャッシュサイズを確認する
次に、統計を調べて、キャッシュのサイズがゼロになったことを確認できます。
$ sudo systemd-resolve --statistics
次の出力は、現在のキャッシュサイズが「0」であることを示しています。これは、DNSキャッシュが現在クリアされていることを確認します。
これは、UbuntuでDNSキャッシュをフラッシュする方法です。サイトが正しく読み込まれていない場合、または古いサイトを受け取っている場合は、DNSキャッシュをフラッシュして、問題が解決するかどうかを確認してください。 DNSキャッシュがフラッシュされた後、サイトの読み込みが最初に少し遅くなることを忘れないでください。ただし、DNSキャッシュが再設定されると、サイトの読み込みが速くなります。