Подмена DNS-ответов [Документация VAS Experts]

Это старая версия документа!


Подмена DNS-ответов

Назначение

Услуга подмены DNS-ответов позволяет изменять IP-адреса, возвращаемые DNS-сервером для определенных доменных имен. Это позволяет влиять на ответы DNS-серверов, переопределяя IP-адреса в ответах сервера для определённых типов DNS-запросов, указанных в настройках услуги.
Эта услуга эффективна для контроля DNS-запросов клиентов и перенаправления их на альтернативные IP-адреса. Она особенно полезна, когда нужно направить пользователя на ресурс, отличный от запрашиваемого.

Схема работы услуги

  1. Клиент запрашивает выполняет определенный тип запроса к DNS-серверу (например, тип A).
  2. DNS сервер возвращает ответ (для записи типа А это IP-адрес).
  3. DPI видит запрос и проверяет, назначена ли услуга подмены для этого клиента.
  4. Если услуга назначена, DPI модифицирует оригинальный ответ DNS-сервера, в зависимости от указанных правил в услуге.
  5. DPI перенаправляет модифицированный ответ клиенту. При этом клиент не замечает модификации и считает ответ легитимным.

Настройка

  1. Создать текстовый файл и добавить в него правила подмены для DNS, указав доменное имя, тип DNS-записи и IP-адрес, который будет указан в ответе для данного домена:
    vi test.txt
    google.com A 1.2.3.4
    example.com A 5.6.7.8
  2. Утилитой dns2dic конвертировать текстовый файл в бинарный формат, понятный для DPI:
    cat test.txt|dns2dic test.bin
  3. Поместить полученный бинарный файл в директорию, откуда его будет читать DPI:
    cp test.bin /var/lib/dpi/dns.bin
  4. Выполнить reload для перезагрузки конфигурации DPI и чтения нового списка подмен:
    service fastdpi reload

Управление

Формат команды:

fdpi_ctrl [команда] --service 19 [список опций] [login или vchannel]

Подключение услуги:

fdpi_ctrl load --service 19 --login test 
#или
fdpi_ctrl load --service 19 --vchannel 1

Отключение услуги:

fdpi_ctrl del --service 19 --login test
#или
fdpi_ctrl del --service 19 --vchannel 1