Rescached

提供: ArchWiki
2024年1月9日 (火) 00:42時点におけるKgx (トーク | 投稿記録)による版 (→‎Integration with OpenResolv: 翻訳)
ナビゲーションに移動 検索に移動

関連記事

rescached はインターネットの名前解決・アドレス解決をキャッシュするデーモンです。実行中はローカルメモリに保存し、実行していない間はディスクキャッシュに保存されます。

rescachedBIND などの DNS サーバーの再実装ではありません。rescached の目標はあくまで DNS クエリをキャッシュして外部ネットワークへの不必要なトラフィックを減らすことにあります。個人的・小規模な環境での使用が想定されています。

特徴

現在の特徴の一覧です。

  • UDP と TCP 接続からの要求の処理を有効にする
  • UDP と TCP によるリクエストを提供できるようにする
  • /etc/hosts でアドレスとホストネームをロード・提供。
  • ディレクトリ /etc/rescached/hosts.d/ 内にホスト形式のファイルをロードして提供します
  • /etc/rescached/hosts.d/ のホストリストを通じて広告や悪意のある Web サイトをブロックする
  • /etc/rescached/zone.d からのゾーンファイル形式のロードと提供のサポート
  • openresolv との統合
  • DNS over TLS (DoH) (RFC 7858) をサポート
  • DNS over HTTPS (DoH) (RFC 8484) をサポート

rescached のキャッシュの仕組み

キャッシュ内の各 DNS レコードには、最終アクセス時刻フィールドがあり、メモリ内でキャッシュがどのように順序付けされるかを定義します。最後にクエリされたホスト名はキャッシュリストの最後にあり、クエリされた最も古いホスト名はキャッシュ リストの一番上にあります。

次の表は、メモリ内のキャッシュのリストを示しています。

Accessed At ホスト名
2018-01-01 00:00:01 kilabit.info
2018-01-01 00:00:02 archlinux.org
... ...
2018-01-01 00:01:00 wiki.archlinux.org

キャッシュからの古いレコードのプルーニングは、cache.prune_delay ごと (たとえば 5 分ごと) に行われます。キャッシュ内のレコードの accessed-at 値が current-time + cache.threshold より小さい場合 (cache.threshold の値は負の値である必要があることに注意してください)、キャッシュからレコードが削除されます。

インストール

rescached-gitAUR パッケージをインストールしてください。

設定

デフォルトで設定でデーモンを直接起動できます。

Rescached の設定は /etc/rescached/rescached.cfg に存在します。以下のような設定があります:

  • 親の DNS サーバーの設定:
server.parent の値を使用したい DNS サーバーに変えてください。
  • キャッシュの最大値の設定:
cache.maxcache.threshold の値を必要に応じて変更してください。

設定ファイルを編集したら、resolv.conf ファイルを開いてリゾルバのアドレスを localhost のアドレスで置き換えてください:

nameserver 127.0.0.1

他のプログラムが設定を上書きしてしまうことがあります。詳しくは resolv.conf#DNS 設定の保護を見てください。

設定できたら rescached.service起動有効化してください。

OpenResolv との統合

Rescached は、resolvconf によって生成された resolv.conf ファイルの変更を検出できます。 この機能を使用するには、設定ファイルで file.resolvconf/etc/rescached/resolv.conf に設定します。/etc/resolvconf.conf で、同じファイル /etc/rescached/resolv.confdnsmasq_resolvpdnsd_resolv、または unbound_conf のいずれかを設定します。

Web user interface

The rescached service provide a web user interface that can be accessed at http://127.0.0.1:5380. The following user interfaces are available on the latest release,

The front page allow user to monitor active caches, query the caches, and removing the caches.

The Environment page allow user to modify the rescached configuration on the fly.

The Hosts Blocks page allow user to enable or disable the external sources of hosts blocks list.

The Hosts.d page allow user to manage hosts file, creating new hosts file, create new record, or delete a record.

The Zone.d page allow user manage zone file, creating new zone file, adding or deleting new resource record in the zone file.

参照