Блочный
Blocky — DNS-прокси и блокировщик рекламы для локальной сети, написанный на Go, со следующими функциями:
Функции
Блокировка - Блокировка DNS-запросов с помощью внешних списков (блокировка рекламы, вредоносное ПО) и белых списков.
- Определение разрешенных/запрещенных списков для каждой группы клиентов (Дети, устройства «умный дом» и т. д.)
- Периодическая перезагрузка внешних списков разрешенных/запрещенных
- Поддержка регулярных выражений
- Блокировка домена запроса, CNAME ответа (глубокая проверка CNAME) и IP-адресов ответа (по спискам IP)
Расширенная настройка DNS – не просто блокировщик рекламы
- Пользовательское разрешение DNS для определенных доменных имен
- Условная переадресация на внешний DNS-сервер
- Восходящие преобразователи могут быть определены для каждой группы клиентов.
Производительность . Повышает скорость и производительность вашей сети.
- Настраиваемое кэширование ответов DNS на запросы -> повышает скорость разрешения DNS и уменьшает количество внешних DNS-запросов.
- Предварительная выборка и кэширование часто используемых запросов
- Одновременное использование нескольких внешних резольверов
- Низкое потребление памяти
Различные протоколы — поддерживает современные протоколы DNS.
- DNS поверх UDP и TCP
- DNS через HTTPS (также известный как DoH)
- DNS через TLS (также известный как DoT)
Безопасность и конфиденциальность - Безопасное общение
- Поддерживает современные расширения DNS: DNSSEC, eDNS,...
- Свободно настраиваемые списки блокировки — никакой скрытой фильтрации и т. д.
- Предоставляет конечную точку DoH
- Использует случайные восходящие преобразователи из конфигурации — повышает вашу конфиденциальность за счет распределения вашего DNS-трафика по нескольким провайдерам.
- Blocky НЕ собирает никаких пользовательских данных, телеметрии, статистики и т. д.
Интеграция - различные интеграции
- Метрики Прометея
- Подготовленные дашборды Grafana (Прометей и база данных)
- Регистрация DNS-запросов в день/на каждого клиента в формате CSV или в базе данных MySQL/MariaDB/PostgreSQL/Timescale — легко анализировать
- Различные конечные точки REST API
- Инструмент командной строки
Простая конфигурация — один или несколько файлов конфигурации в формате YAML.
- Простота обслуживания
- Простое резервное копирование
Простая установка/конфигурация — Blocky был разработан для простой установки.
- Без сохранения состояния (без базы данных, без временных файлов)
- Образ Docker с поддержкой Multi-arch
- Одиночный двоичный файл
- Поддерживает архитектуры x86-64 и ARM -> отлично работает на Raspberry PI.
- Поддерживаемая сообществом диаграмма Helm для развертывания k8s
Быстрый старт
Вы можете перейти к главе «Установка» в документации.
Полная документация
Полную документацию и примеры конфигурации можно найти по адресу: https://0xERR0R.github.io/blocky/.
Вклад
Проблемы, предложения по функциям и запросы на включение приветствуются!