Просмотр Исходного

h1. Алгоритм

Сам резолв запускается из кронтаба каждые 5 минут (если включен).

Обновляет данные о IP адресах ресурсов, ttl которых истёк.

В случае отсутствия информации о DNS ресурсе - помечается как "плохой" и ему устанавливается TTL  = 180 минут.

В случае изменения IP адреса ttl уменьшается на 5 минут.

В случае, если адрес не изменился - увеличивается на 5 минут (но не более 60 минут).

Раз в 5 минут результат резолва объединяется со списками IP адресов из единого реестра и загружается в ipset: https_reductor, доступ к которому блокируется на 443 порту.


h1. Кэш резолва


h2. Расположение

Файл

{code}
/usr/local/Reductor/cache/https_resolv.json
{code}

h2. Просмотр


{code}
python -m json.tool /usr/local/Reductor/cache/https_resolv.json
{code}

h2. Поиск по домену


{code}
/usr/local/Reductor/bin/cache_ctl yourdomain.com
{code}

h2. Поиск по IP

{code}
/usr/local/Reductor/bin/cache_ctl --ip 1.2.3.4
{code}

h2. Структура

* домен
* ttl (время жизни записи)
* время последнего обновление записи
* список ip адресов, соответствующих этому домену