bind9; как автоматически обновить запись после истечения срока ее действия

bind9; как автоматически обновить запись после истечения срока ее действия

Я ищу способ автоматического обновления записей в кэше, если срок его действия истек.

Например, у example.com TTL равен 60, и я хотел бы автоматически обновлять его по истечении срока действия, чтобы при запросе пользователем example.com в кэше уже была свежая версия.

Возможно ли это в рамках bind?

Спасибо!

решение1

BINDподдерживает технику, называемую prefetch. Использование предварительной выборки BIND автоматически обновит записи, срок действия которых истекает. Ниже приведен синтаксис предварительной выборки.

 sudo vim /etc/bind/named.conf.options
 ...
 options {
 ...
 prefetch 2 9;
};
...

Как вы можете видеть, здесь есть два числа: trigger(здесь 2) и eligibility(здесь 9). Это говорит BIND обновить записи DNS для всех записей, начальный TTL которых был больше 9 секунд, если оставшийся TTL падает ниже 2 секунд. Таким образом, он не будет слепо обновлять все записи, вместо этого он будет отслеживать только записи, начальный TTL которых больше, чем право на доступность, и как только оставшийся TTL для этих записей падает ниже значения триггера, он обновит их. Значения права на доступность и триггера указаны в секундах.

Итак, предположим, что у example.com TTL составляет 60 секунд (т.е. TTL, когда запись была извлечена), я хочу гарантировать, что если оставшийся TTL упадет ниже 10 секунд, запись должна быть обновлена. Ниже будет мой параметр предварительной выборки в файле конфигурации.

prefetch 10 60

Дальнейшее чтение:https://kb.isc.org/article/AA-01122/0

решение2

Нет, не существует. Кэш разработан для автоматической "записи" записей при первом доступе к ним для более быстрого доступа в дальнейшем. Нет никакого прироста производительности при "предварительном кэшировании" записей, как вы описываете.

Связанный контент