Настройка переопределения Opkg DNS включена

Обновлено: 04.07.2024


SmartDNS — это локальный DNS-сервер. SmartDNS принимает DNS-запросы от локальных клиентов, получает результаты DNS-запросов от нескольких вышестоящих DNS-серверов и возвращает результаты быстрого доступа клиентам.
Предотвращая загрязнение DNS и повышая скорость доступа к сети, поддерживает высокоэффективную фильтрацию рекламы.
В отличие от всех серверов dnsmasq, smartdns возвращает самое быстрое разрешение доступа. (подробнее)

Поддержка Raspberry Pi, openwrt, маршрутизатора ASUS, Windows и других устройств.

Оглавление

Выставка программного обеспечения

Ali DNS
Используйте Ali DNS для запроса IP-адреса Baidu и проверки результатов.

smartdns
Используйте SmartDNS для запроса IP-адреса Baidu и проверки результатов.

Возможности

Несколько вышестоящих DNS-серверов
Поддержка настройки нескольких вышестоящих DNS-серверов и запроса одновременно. На запрос это не повлияет, даже если есть исключение DNS-сервера.

Вернуть самый быстрый IP-адрес
Поддерживает поиск IP-адреса с самым быстрым доступом из списка IP-адресов доменного имени и возврат его клиенту, чтобы избежать загрязнения DNS и повысить скорость доступа к сети.

Спецификация IP-адреса домена
Поддержка настройки IP-адреса определенного домена для достижения эффекта фильтрации рекламы и предотвращения вредоносных веб-сайтов.

Высокоэффективная фильтрация правил доменных имен
Поддержка режима сопоставления суффиксов доменных имен, упрощение настройки фильтрации, фильтрация 200 000 записей и экономия времени

Загрузите соответствующую версию установочного пакета SmartDNS. Соответствующий установочный пакет выглядит следующим образом.

Выпущенные пакеты компилируются статически. Если вам нужен пакет небольшого размера, скомпилируйте его самостоятельно или получите из репозитория openwrt/entware.

Пожалуйста, загрузите со страницы выпуска: Загрузите здесь

  • Информацию о процедуре установки см. в следующих разделах.

Стандартная установка системы Linux/система Raspberry Pi, X86_64

Загрузите установочный пакет, например smartdns.xxxxxxxx.arm-debian-all.deb, и загрузите его в систему Linux. Выполните следующую команду для установки

Для системы X86-64 загрузите установочный пакет, например smartdns.xxxxxxxx.x86_64-linux-all.tar.gz, и загрузите его в систему Linux. Выполните следующую команду для установки

После завершения установки вы можете настроить вышестоящий сервер на smartdns. Конкретные параметры конфигурации см. в разделе «Параметры конфигурации».
Как правило, вам нужно только добавить элементы конфигурации server [IP]:port , server-tcp [IP]:port.
Настройте как можно больше вышестоящих DNS-серверов, включая внутренние и зарубежные. Информацию о параметрах конфигурации см. в разделе «Параметры конфигурации».

Переадресация DNS-запроса в SmartDNS

Измените DNS-сервер локального маршрутизатора и настройте DNS-сервер как SmartDNS.

  • Войдите в маршрутизатор в локальной сети и настройте Raspberry Pi для назначения статического IP-адреса.
  • Измените порт WAN или DHCP DNS на IP-адрес Raspberry Pi. Примечание. I. Каждый метод настройки маршрутизатора отличается. Найдите в Baidu похожие методы настройки. II. некоторые маршрутизаторы могут не поддерживать настройку собственного DNS-сервера. в этом случае измените DNS-сервер ПК и мобильного телефона на IP-адрес Raspberry Pi.

Проверьте, успешно ли настроена служба

Запрос имени домена с помощью nslookup -querytype=ptr smartdns
Проверьте, отображается ли элемент имени в результатах команды как smartdns или hostname , например smartdns

опенврт

Загрузите программное обеспечение в корневой каталог маршрутизатора с помощью winscp или другого инструмента и выполните следующую команду, чтобы установить его.

  • Примечание. Для версий до openwrt 19.07 установите пакет luci-app-smartdns.xxxxxxxxx.all-luci-compat-all.

Войдите на страницу управления openwrt и откройте Службы -> SmartDNS, чтобы настроить SmartDNS.

  • Добавить конфигурацию вышестоящего DNS-сервера к вышестоящим серверам. Рекомендуется настроить несколько DNS-серверов дома и за границей.
  • Укажите IP-адрес определенного доменного имени в поле Адрес домена , который можно использовать для блокировки рекламы.

Существует два способа использования службы SmartDNS: один — непосредственно в качестве основной службы DNS, а другой — в качестве вышестоящей службы dnsmasq.
По умолчанию SmartDNS использует первый метод. Вы можете выбрать в соответствии с вашими потребностями следующими двумя способами.

Способ 1: SmartDNS в качестве основного DNS-сервера (схема по умолчанию)

Включить перенаправление порта SmartDNS 53

Войдите в маршрутизатор, нажмите «Сервисы» -> «SmartDNS» -> «Перенаправить» и выберите параметр «Перенаправить порт 53 на SmartDNS», чтобы включить переадресацию порта 53.

Проверьте, успешно ли настроена служба

Запрос имени домена с помощью nslookup -querytype=ptr smartdns Посмотрите, отображается ли элемент имени в результатах команды как smartdns или hostname , например smartdns

Интерфейс сообщает, что переадресация не удалась

  • Проверьте правильность установки команды iptable, ip6table.
  • Система openwrt 15.01 не поддерживает перенаправление IPV6. Если сеть должна поддерживать IPV6, измените исходящий DNSMASQ на smartdns или измените порт smartdns на 53 и отключите dnsmasq.
  • После системы LEDE установите драйвер переадресации IPV6 nat. Нажмите «Система» -> «Программное обеспечение» , нажмите «Обновить списки», чтобы обновить список программного обеспечения, установите ip6tables-mod-nat
  • Используйте следующую команду, чтобы проверить, действует ли правило маршрутизации.
  • Если функция переадресации не работает, используйте метод 2: восходящий поток DNSMASQ.

Способ 2: SmartDNS в качестве вышестоящего DNS-сервера DNSMASQ

Перенаправить запрос dnsmasq в SmartDNS

Войдите в маршрутизатор, нажмите «Службы» -> «SmartDNS» -> «Перенаправить» , выберите «Запустить как вышестоящий сервер dnsmasq», чтобы перенаправить запрос dnsmasq в Smartdns.

Проверьте, успешно ли настроена служба

  • Способ 1. Запрос имени домена с помощью nslookup -querytype=ptr 0.0.0.1 Посмотрите, отображается ли элемент имени в результатах команды как smartdns или hostname , например smartdns

Отметьте «Включить» на странице конфигурации, чтобы запустить сервер SmartDNS.

  • Если chinaDNS уже установлен, рекомендуется настроить восходящий поток chinaDNS как SmartDNS.
  • SmartDNS по умолчанию перенаправляет запросы через порт 53 на локальный порт SmartDNS, управляемый параметром конфигурации перенаправления.

Родная прошивка роутера ASUS / прошивка Merlin

Примечание. Прошивка Merlin является производной от прошивки ASUS и теоретически может использоваться непосредственно с пакетом ASUS. Однако на данный момент это не проверено. Если у вас есть какие-либо вопросы, задайте вопрос.

При использовании этого программного обеспечения необходимо убедиться, что маршрутизатор поддерживает U-диск, и подготовить USB-диск.

Включить вход по SSH

Войдите в интерфейс управления, нажмите «Управление системой» -> «Настройки системы» и настройте «Включить SSH только для локальной сети» .
Имя пользователя и пароль для входа в SSH такие же, как и в интерфейсе управления.

Установить мастер загрузки

В интерфейсе управления нажмите «Приложение, связанное с USB» -> нажмите «Мастер загрузки», чтобы загрузить его.
После завершения загрузки включите Мастер загрузки. Если вам не нужна функция загрузки, вы можете удалить Download Master здесь, но перед удалением убедитесь, что Download Master включен.

Загрузите программное обеспечение в каталог маршрутизатора /tmp/mnt/sda1 с помощью winscp. (или скопируйте сетевое окружение в общий каталог sda1)

После запуска маршрутизатора используйте nslookup -querytype=ptr smartdns для запроса доменного имени.
Проверьте, отображается ли элемент имени в результате команды как smartdns или hostname , например smartdns

В описанном выше процессе smartdns будет установлен в корневой каталог U-диска и запущен в режиме optware.
Его структура каталогов выглядит следующим образом: (здесь перечислены только файлы, связанные с smartdns)

Чтобы изменить конфигурацию, вы можете использовать ssh для входа в маршрутизатор и использовать команду vi для ее изменения.

Его также можно изменить из сетевого окружения. Из общего каталога соседей sda1 вы не можете увидеть каталог asusware.mipsbig, но вы можете напрямую ввести asusware.mipsbig\etc\init.d в диспетчере файлов, чтобы изменить его.

программное обеспечение/программное обеспечение

При использовании этого программного обеспечения необходимо убедиться, что маршрутизатор поддерживает USB-диск, и подготовить USB-диск.

Загрузите программное обеспечение в каталог /tmp маршрутизатора с помощью winscp и выполните следующую команду для установки.

Изменить конфигурацию smartdns

Примечание: если вам нужна поддержка IPV6, вы можете установить для рабочего режима значение 2 , это отключит службу DNS dnsmasq, и smartdns будет работать в качестве основного DNS-сервера. Измените SMARTDNS_WORKMODE в файле /opt/etc/smartdns/smartdns-opt.conf на 2.

Перезагрузите маршрутизатор, чтобы изменения вступили в силу

После запуска маршрутизатора используйте nslookup -querytype=ptr smartdns для запроса доменного имени. Посмотрите, отображается ли элемент имени в результате команды как smartdns или hostname , например smartdns

Примечание. Если служба не запускается автоматически, необходимо настроить автоматический запуск optwre/entware. Подробнее см. в документации по optware/entware.

Установка Windows 10 WSL/WSL ubuntu

Установите Windows 10 WSL Ubuntu

Установите среду Windows 10 WSL и выберите Ubuntu в качестве дистрибутива по умолчанию. Шаги по установке см. в инструкциях по установке WSL

загрузить установочный пакет smartdns.xxxxxxxx.x86_64-linux-all.tar.gz и разархивировать в каталог D:\, после распаковки каталог выглядит следующим образом:

Дважды щелкните install.bat в каталоге D:\smartdns\package\windows для установки. При вводе пароля введите пароль для WLS ubuntu.

Отредактируйте файл конфигурации smartdns.conf в каталоге D:\smartdns\etc\smartdns, вы можете настроить вышестоящий сервер на smartdns. Конкретные параметры конфигурации см. в разделе «Параметры конфигурации».
Как правило, вам нужно только добавить элементы конфигурации server [IP]:port , server-tcp [IP]:port.
Настройте как можно больше вышестоящих DNS-серверов, включая внутренние и зарубежные. Информацию о параметрах конфигурации см. в разделе «Параметры конфигурации».

Дважды щелкните файл reload.bat в каталоге D:\smartdns\package\windows для перезагрузки.

Переадресация DNS-запроса в SmartDNS

Измените DNS-сервер по умолчанию для Windows на 127.0.0.1 , при этом эти шаги относятся к конфигурации IP

Проверьте, успешно ли настроена служба

Запрос имени домена с помощью nslookup -querytype=ptr smartdns
Проверьте, отображается ли элемент имени в результатах команды как smartdns или hostname , например smartdns

Параметры конфигурации

Для определенных доменных имен в случае загрязнения можно включить механизм защиты от загрязнения.

Как включить журнал аудита
Журнал аудита записывает доменное имя, запрошенное клиентом. Информация о записи включает время запроса, IP-адрес запроса, доменное имя запроса и тип запроса. Если вы хотите включить журнал аудита, настройте audit-enable yes в файле конфигурации, audit-size , Audit-file , audit-num настройте размер файла журнала аудита, путь к файлу журнала аудита и количество файлов журнала аудита. . Файл журнала аудита будет сжат для экономии места.

  • Используйте доверенные DNS-серверы.
  • Используйте серверы TLS.
  • Настройте группу вышестоящих DNS-серверов.

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

Доменное имя, оканчивающееся на .home, отправляется на 192.168.1.1 для разрешения. Доменное имя, оканчивающееся на .office, отправляется на 10.0.0.1 для разрешения. Другие доменные имена разрешаются в режиме по умолчанию. Конфигурация перенаправления для этого случая следующая:

Приведенную выше конфигурацию можно использовать для реализации разрешения и разгрузки DNS. Если вам нужно реализовать распределение трафика на запрашивающем порту, вы можете настроить второй DNS-сервер. Добавлена ​​конфигурация привязки. Параметр группы указывает имя распределения трафика.

Как использовать функцию оптимизации IP с двойным стеком IPV4 и IPV6
В настоящее время сеть IPV6 в некоторых случаях не так быстра, как IPV4. Чтобы получить лучший опыт в сети с двумя стеками, SmartDNS предоставляет механизм оптимизации IP-адресов с двумя стеками, то же доменное имя и скорость IPV4. Гораздо быстрее, чем IPV6, тогда SmartDNS заблокирует разрешение IPV6, разрешит ПК использовать IPV4, эта функция активируется с помощью dualstack-ip-selection yes, dualstack-ip-selection-threshold [время] для порога. если вы хотите отключить запись IPV6 AAAA, попробуйте force-AAAA-SOA yes .

Соответствующим образом увеличьте количество записей в кеше.
Установите количество записей в кеше по размеру кеша . В случае запроса со средой с высоким давлением и машиной с большим объемом памяти его можно соответствующим образом настроить.

Установите минимальное значение TTL соответствующим образом.
Установите минимальное время TTL DNS на соответствующее значение с помощью rr-ttl-min, чтобы увеличить время кэширования. Рекомендуется установить период ожидания от 10 до 30 минут, чтобы избежать появления недействительных доменных имен при изменении IP-адреса домена.

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

Функция кэширования с истекшим сроком действия
Включите функцию кэширования с истекшим сроком действия с параметром serve-expired yes, чтобы улучшить частоту попаданий в кэш и снизить нагрузку на ЦП. Эта функция вернет клиенту значение TTL = 0 по истечении тайм-аута TTL и одновременно отправит новый запрос запроса, а также кэширует новые результаты для последующего запроса.

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

Как получить SPKI DOT
SPKI можно получить на странице, опубликованной поставщиком услуг DNS. Если он не опубликован, его можно получить с помощью следующей команды: замените IP на свой IP.

Скомпилировать

smartdns содержит скрипты для компиляции пакетов, поддерживает компиляцию установочных пакетов luci, debian, openwrt, opare и может выполнять компиляцию package/build-pkg.sh.

Пожертвовать

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

Я принес в офис беспроводной маршрутизатор, потому что рядом с моим домом нет свободной сетевой розетки. Каждый обычный компьютер, подключенный через кабель Ethernet, обычно получает IP-адреса и адреса DNS-сервера от корпоративного маршрутизатора по DHCP.

В нашей организации есть несколько внутренних адресов с собственными URI, разрешаемыми локальным DNS-сервером. Теперь я могу получить к ним доступ по IP-адресу, а не по URI, так как "хост неизвестен".

В разделе DHCP и DNS LuCI (веб-интерфейс OpenWrt) в разделе DNS Forwardings я указал адреса корпоративных DNS-серверов (они статические), но безуспешно.

Как заставить OpenWrt перенаправлять все DNS-запросы, которые он не может разрешить сам, на эти корпоративные серверы или только весь DNS-трафик на эти серверы?


3 ответа 3

Не беспокойтесь о переадресации DNS или внутреннем DNS-сервере OpenWrt, просто обслуживайте существующие DNS-серверы напрямую вашим DHCP-клиентам. Вы можете сделать это, установив параметр DHCP 6, который будет отформатирован в веб-интерфейсе следующим образом:

Вы можете получить доступ к соответствующей части веб-интерфейса в LuCI, выбрав Сеть --> Интерфейсы --> Локальная сеть --> прокрутите вниз --> вкладка "Дополнительные настройки":

Конфигурация DHCP LuCI

Я также должен напомнить вам, что делать это только с явного ведома и одобрения сетевого администратора вашей компании, ИТ-отдела и т. д.


Спасибо, это работает как шарм! Я поместил dhcp-option=6, 172.22.9.10, 172.22.10.10 в /etc/dnsmasq.conf, где IP-адреса — это адреса DNS-серверов, и теперь все в порядке.

В качестве альтернативы использованию опции DHCP 6 вы можете напрямую изменить DNS-серверы, которые использует OpenWrt. Для этого перейдите под веб-интерфейсом LuCI к

СетьИнтерфейсыWANИзменитьДополнительные настройки

и снимите флажок Использовать DNS-серверы, объявленные партнером . Затем должно появиться новое поле параметров Использовать настраиваемые DNS-серверы, где вы можете ввести адреса одного или нескольких DNS-серверов по вашему выбору.

Конечно, если ваш интерфейс WAN имеет другое имя (например, потому что вы подключены через IPv6), вместо этого вы должны изменить эти настройки для этого интерфейса.

Общее преимущество этого метода заключается в том, что, хотя OpenWrt использует ваши настраиваемые DNS-серверы для поиска любого неизвестного адреса, он по-прежнему действует как DNS-сервер для подключенных клиентов. Таким образом, на DNS-запросы самого OpenWrt также отвечают ваши собственные DNS-серверы (это может быть важно, если вы заботитесь о конфиденциальности и поэтому хотите полностью избежать использования, например, DNS-серверов вашего интернет-провайдера).

Другие преимущества включают в себя то, что один кеш DNS используется для всех клиентов (кэш DNS OpenWrt) и что вы по-прежнему можете использовать файл hosts OpenWrt для добавления пользовательских записей и т. д.

Я тестировал этот метод только в OpenWrt 15.05 Chaos Calmer, но думаю, что в предыдущих версиях он должен работать так же.

Unbound — это программный продукт DNS-сервера с проверкой, рекурсией и кэшированием от NLnet Labs, VeriSign Inc., Nominet и Kirei. Он распространяется бесплатно в виде открытого исходного кода под лицензией BSD.

Unbound разработан как набор модульных компонентов, которые включают в себя современные функции, такие как проверка усиленной безопасности (DNSSEC), Интернет-протокол версии 6 (IPv6) и библиотека интерфейса прикладного программирования клиентского преобразователя как неотъемлемая часть архитектуры. Первоначально написанный для POSIX-совместимой Unix-подобной операционной системы, он работает на FreeBSD, OpenBSD, NetBSD, OS X и Linux, а также на Microsoft Windows.

OpenWrt использует dnsmasq в качестве предустановленного программного обеспечения по умолчанию в качестве сервера DHCP и преобразователя DNS.

Поскольку мы уже используем Unbound в качестве предпочтительного преобразователя DNS на других серверах и синхронизируем его конфигурацию, мы хотим использовать Unbound вместо dnsmasq и на нашем маршрутизаторе OpenWrt.

Установка¶

Предпосылки¶

Отключить распознаватель dnsmasq¶

Отключите преобразователь dnsmasq по умолчанию, установив для порта прослушивания TCP значение 0. Таким образом, будет отключен только DNS-сервер, хотя он по-прежнему может использоваться в качестве служб DCHP и TFTP:

Интеграция с OpenWrt¶

Унифицированный интерфейс конфигурации OpenWrt (UCI) многое делает с Unbound. См. /etc/init.d/unbound.Одной из причин является сохранение ресурсов ЦП, памяти и файлового пространства на небольших устройствах, другой — сохранение флэш-памяти за счет ограничения операций записи, и, наконец, это интеграция несвязанных служб с собственными DNS-преобразователями IPS OpenWrt, арендованными. Адреса серверов DCHP и прочее.

В нашем случае нам ничего из этого не нужно. Поэтому мы работаем без привязки в «неуправляемом» режиме.

В этом ручном режиме наша несвязанная конфигурация в /etc/unbound/ по большей части остается нетронутой.

Настройка дистанционного управления¶

Утилита управления несвязанным удаленным сервером unbound-control выполняет удаленное администрирование на несвязанном DNS-сервере. Он считывает файл конфигурации, связывается с несвязанным сервером через зашифрованное соединение TLS, отправляет команду и отображает результат.

Для подключения требуется набор самозаверяющих сертификатов и закрытых ключей для несвязанного управляющего клиента и несвязанного сервера. Сценарий unbuond-control-setup создает следующее:

Дистанционное управление по-прежнему необходимо активировать в конфигурации. См. раздел «Дистанционное управление» ниже.

Обновления корневого сервера¶

«Файл корневых подсказок» содержит имена и IP-адреса корневых серверов, чтобы преобразователь мог запустить процесс разрешения DNS. Этот список встроен в большинство программ DNS-серверов, но время от времени меняется, поэтому рекомендуется предоставлять регулярно обновляемые корневые ссылки.

Следующий скрипт /root/root-hints-update проверяет наличие новых версий в Интернете, загружает и устанавливает их при необходимости.

dnsmasq предоставляет DNS-сервер, DHCP-сервер с поддержкой DHCPv6 и PXE, а также TFTP-сервер. Он разработан, чтобы быть легким и иметь небольшую площадь, подходящую для маршрутизаторов и брандмауэров с ограниченными ресурсами. dnsmasq также можно настроить для кэширования DNS-запросов для повышения скорости поиска DNS на ранее посещенных сайтах.

Содержание

Установка

Запустить демон

Чтобы убедиться, что dnsmasq запущен правильно, проверьте системный журнал:

Сеть также необходимо будет перезапустить, чтобы DHCP-клиент мог создать новый файл /etc/resolv.conf .

Конфигурация

Чтобы настроить dnsmasq, отредактируйте /etc/dnsmasq.conf . Файл содержит комментарии, поясняющие параметры. Все доступные параметры см. в dnsmasq(8) .

Примечание. Конфигурация dnsmasq по умолчанию включает DNS-сервер. Если он вам не нужен, вам нужно явно отключить его, установив port=0 .

Если dnsmasq не будет использоваться в качестве локального преобразователя DNS, вы также можете отредактировать dnsmasq.service, чтобы он не извлекал nss-lookup.target :

DNS-сервер

Чтобы настроить dnsmasq в качестве демона кэширования DNS на одном компьютере, укажите директиву listen-address, добавив IP-адрес localhost:

Чтобы использовать этот компьютер для прослушивания его IP-адреса в локальной сети для других компьютеров в сети. В этом случае рекомендуется использовать статический IP-адрес локальной сети. Например:

Установите количество кешированных доменных имен с cache-size=size (по умолчанию – 150, жесткое ограничение – 10 000):

Для проверки DNSSEC загрузите якоря доверия DNSSEC, предоставленные пакетом dnsmasq, и установите параметр dnssec :

Дополнительные параметры, которые вы можете использовать, см. в dnsmasq(8).

Файл DNS-адресов и переадресация

После настройки dnsmasq вам необходимо добавить адреса localhost в качестве единственных серверов имен в /etc/resolv.conf . Это приводит к тому, что все запросы отправляются на dnsmasq.

Поскольку dnsmasq является тупиковым преобразователем, а не рекурсивным преобразователем, необходимо настроить переадресацию на внешний DNS-сервер. Это можно сделать автоматически с помощью openresolv или вручную указав адрес DNS-сервера в конфигурации dnsmasq.

открытое разрешение

Если ваш сетевой менеджер поддерживает resolvconf, вместо прямого изменения /etc/resolv.conf вы можете использовать openresolv для создания файлов конфигурации для dnsmasq.

Отредактируйте /etc/resolvconf.conf и добавьте петлевые адреса в качестве серверов имен, а также настройте openresolv для записи конфигурации dnsmasq:

Запустите resolvconf -u, чтобы создать файлы конфигурации. Если файлы не существуют, dnsmasq.service не запустится.

Отредактируйте файл конфигурации dnsmasq, чтобы использовать сгенерированную конфигурацию openresolv[1]:

Переадресация вручную

Сначала вы должны установить адреса localhost в качестве единственных серверов имен в /etc/resolv.conf:

Затем адреса вышестоящих DNS-серверов должны быть указаны в файле конфигурации dnsmasq как server=server_address . Также добавьте no-resolv, чтобы dnsmasq не читал без необходимости файл /etc/resolv.conf, который содержит только адреса локального хоста.

Теперь DNS-запросы будут разрешаться с помощью dnsmasq, проверяя внешние серверы только в том случае, если он не может ответить на запрос из своего кеша.

Добавление личного домена

Можно добавить собственный домен к узлам в вашей (локальной) сети:

В этом примере можно пропинговать хост/устройство (например,определено в вашем файле /etc/hosts) как hostname.lan .

Раскомментируйте expand-hosts, чтобы добавить личный домен в записи hosts:

Без этого параметра вам придется добавить домен в записи /etc/hosts .

Чтобы проверить скорость поиска, выберите веб-сайт, который не посещался с момента запуска dnsmasq (drill является частью пакета ldns):

При повторном запуске команды будет использоваться кешированный IP-адрес DNS, что приведет к более быстрому поиску, если dnsmasq настроен правильно:

DHCP-сервер

Эту статью или раздел необходимо расширить.

По умолчанию в dnsmasq отключена функция DHCP, если вы хотите ее использовать, вы должны включить ее. Вот важные настройки:

Дополнительные параметры см. в dnsmasq(8).

Прокси-сервер DHCP

На компьютере, подключенном к компьютеру с dnsmasq, настройте его на использование DHCP для автоматического назначения IP-адреса, а затем попытайтесь нормально войти в сеть.

Если вы проверите файл /var/lib/misc/dnsmasq.leases на сервере, вы сможете увидеть аренду.

TFTP-сервер

dnsmasq имеет встроенный TFTP-сервер.

Чтобы использовать его, создайте корневой каталог для TFTP (например, /srv/tftp ), чтобы поместить в него передаваемые файлы.

Для повышения безопасности рекомендуется использовать безопасный режим TFTP dnsmasq. В безопасном режиме только файлы, принадлежащие пользователю dnsmasq, будут обслуживаться по TFTP. Вам нужно будет передать корень TFTP и все файлы в нем пользователю dnsmasq, чтобы использовать эту функцию.

Дополнительные параметры см. в dnsmasq(8).

PXE-сервер

PXE требует DHCP и TFTP-сервера; оба могут быть предоставлены dnsmasq. Чтобы настроить сервер PXE, выполните следующие действия:

Чтобы просто отправить один файл:

  • Пути к файлам указаны относительно корневого пути TFTP
  • Если файл имеет суффикс .0, вы должны исключить этот суффикс в параметрах pxe-service

Если pxe-service не работает для определения архитектуры (особенно для клиентов на основе UEFI), можно использовать комбинацию dhcp-match и dhcp-boot. См. RFC 4578 2.1 для получения дополнительных номеров клиентских архитектур для использования с загрузочным протоколом DHCP.

Дополнительные параметры см. в dnsmasq(8).

Остальное зависит от загрузчика.

Советы и рекомендации

Запретить OpenDNS перенаправлять запросы Google

Чтобы OpenDNS не перенаправлял все запросы Google на собственный поисковый сервер, добавьте в /etc/dnsmasq.conf:

Переопределить адреса

В некоторых случаях, например при работе с авторизованным порталом, может быть полезно преобразовать определенные доменные имена в жестко заданный набор адресов. Это делается с помощью конфигурации адреса:

Кроме того, можно вернуть определенный адрес для всех доменных имен, на которые нет ответа от /etc/hosts или DHCP, используя специальный подстановочный знак:

Более одного экземпляра

Если мы хотим, чтобы два или более серверов dnsmasq работали на интерфейс(ы).

Статический

Чтобы сделать это статически, выберите сервер для каждого интерфейса, используйте параметры interface и bind-interface. Это принудительно запускает второй dnsmasq.

Динамический

В этом случае мы можем исключить каждый интерфейс и привязать любые другие:

Занесение домена в черный список

Чтобы заблокировать домены, т. е. отвечать на запросы для них с помощью NXDOMAIN, используйте параметр адреса без указания IP-адреса:

Для удобства использования поместите черный список в отдельный файл, например /etc/dnsmasq.d/blocklist.conf и загрузите его из /etc/dnsmasq.conf с conf-file=/etc/dnsmasq.d/blocklist.conf или conf-dir=/etc/dnsmasq.d/,*. конф.

Совет: список потенциальных источников для черного списка можно найти в файле README пакета OpenWrt для блокировки рекламы.

Читайте также: