DNS

Skip to end of metadata
Go to start of metadata

Для блокировки https ресурсов, имеющих малый TTL для DNS A записей, нужно обязательно настроить DNS-spoofing.

1. Страница-заглушка

Для настройки DNS-spoofing сначала необходимо установить и настроить страницу-заглушку для перенаправления абонентских запросов.

Можно сделать на отдельном сервере (мы рекомендуем), либо прямо на редукторе (не очень рекомендуем).

2. Настройка DNS-spoofing

Нужно включить опцию:

menu -> Reductor -> Настройка алгоритма фильтрации -> Использовать фильтрацию DNS

IP адрес, на котором заглушка доступна для всех абонентов, укажите в опции:

menu -> Reductor -> Настройка алгоритма фильтрации -> IP для DNS-ответов

По умолчанию указан IP адрес 127.0.0.1, измените его на адрес сервера с заглушкой.

3. Зеркало трафика

  1. Необходимо, чтобы в "зеркале" трафика присутствовал исходящий от абонентов DNS трафик udp dst port 53. Трафик самого DNS-сервера в зеркале не нужен.
  2. В качестве альтернативы/дополнения п.1 можно использовать набор скриптов на DNS-сервере для интеграции с Carbon Reductor.

Как работает  DNS-спуфинг

Схема работы (для dns) выглядит приблизительно следующим образом:

A - абонент, R - редуктор, S - блокируемый сайт, D - DNS-сервер используемый абонентом, Z - сервер страницы-заглушки

  1. A -> dns query AAAA S -> D - абонент A запрашивает DNS сервер D об IPv6 адресе заблокированного ресурса S
  2. R -> dns empty query response AAAA S -> A - редуктор R отправляет абоненту A пустой DNS ответ от имени DNS-сервера D
  3. A -> dns query A S -> D - абонент A запрашивает DNS сервер D об IPv4 адресе заблокированного ресурса S
  4. R -> dns query response A S = Z -> A - редуктор R отправляет абоненту A DNS ответ с адресом страницы-заглушки Z от имени DNS-сервера D
  5. A -> http/https Host: S, -> Z - абонент обращается к серверу страницы заглушки с заголовками Host = блокируемый домен, GET - без изменений, протокол - без изменений.
    1. HTTPS cert error в случае обращения по HTTPS абоненту будет предложено принять заведомо неправильный самоподписной HTTPS-сертификат чтобы подключиться к странице-заглушке.
  6. Z -> http/200 -> A - отправка содержимого страницы-заглушки.

Дополнительная/альтернативная схема с использованием https://github.com/carbonsoft/named_fakezone_generator отличается тем, что в таком случае DNS-ответ присылает не Carbon Reductor, а провайдерский DNS-сервер.

Введите метки, чтобы добавить к этой странице:
Please wait 
Ищите метку? просто начните печатать.