Существует ли кэш DNS, который может автоматически повторно разрешать свой кэш по таймауту TTL?

Это для сервера с шатким восходящим DNS для внутренних имен серверов компании. Иногда, когда запись выпадает из кэша из-за TTL, и наша система пытается ее разрешить, восходящий поток не отвечает; тогда наша система как бы разваливается. Домены, которые запрашиваются, достаточно фиксированы.

Существует ли DNS-кэш для Linux, который все еще соблюдает TTL (не нужно запрашивать снова в течение X количества времени), но где он будет пытаться обновить (с exp. back-off) кэш примерно в то время, когда истекает TTL? А в это время, возможно, возвращать старый ответ, как льготный период.

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

Похоже, что некоторые коммерческие устройства маршрутизации называют это "FQDN Refresh". Но я не могу найти конфигурацию для этого в нескольких пакетах с открытым исходным кодом, которые я просмотрел. Возможно, он там есть, но сформулирован немного по-другому.

0
задан 6 February 2021 в 04:14
1 ответ

Большинство кэширующих серверов имеют возможность извлекать ресурсы, срок действия которых истекает в несвязанном состоянии, эта функция называется prefetch

prefetch: yes или no

Если yes, элементы кэша сообщений извлекаются предварительно до истечения срока их действия, чтобы поддерживать кэш в актуальном состоянии. По умолчанию - нет. Включение этого параметра дает примерно на 10 процентов больше трафика и нагрузки на машину, но популярные элементы не исчезают из кэша.

RFC 8767 также позволяет кэшам возвращать просроченные данные, если они не могут обновить кэш. можно включить это в unbound с

serve-expired-client-timeout: msec

Время в миллисекундах перед ответом клиенту с просроченными данными. данными. Это, по сути, включает поведение serve-stale, как указанное в RFC 8767, которое сначала пытается разрешить запрос, прежде чем немедленно перед тем, как ответить клиенту с истекшими данными. Рекомендуемое значение согласно RFC 8767 является 1800. Установка значения 0 отключает это поведение. По умолчанию 0.

bind prefetch isc post on serve-stale

2
ответ дан 24 April 2021 в 01:31

Теги

Похожие вопросы