Dnsmasq отключить на Xiaomi

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

Введение

Основным DNS-сервером мы будем использовать простой и потребляющий мало ресурсов, но при этом достаточно мощный dnsmasq, а в качестве бэкэнда TLS-шифрования исходящего трафика — stubby.

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

Установка и настройка dnsmasq

Установим пакет dnsmasq из основного репозитория:

sudo dnf install dnsmasq

Создадим новый файл конфигурации и зададим правильные права доступа:

sudo touch /etc/dnsmasq.d/dnsmasq.conf sudo chown root:dnsmasq /etc/dnsmasq.d/dnsmasq.conf sudo chmod 0644 /etc/dnsmasq.d/dnsmasq.conf

Загрузим его в текстовый редактор:

sudoedit /etc/dnsmasq.d/dnsmasq.conf

Внесём соответствующие правки:

🉐 ОТКЛЮЧИЛ РЕКЛАМУ и УСКОРИЛ ИНТЕРНЕТ НА СМАРТФОНЕ XIAOMI | ПРАВИЛЬНАЯ НАСТРОЙКА DNS 👍


# Указываем интерфейсы для прослушивания. listen-address=::1 listen-address=127.0.0.1 listen-address=192.168.1.1 bind-interfaces # Запрещаем чтение файла /etc/resolv.conf для получения DNS-серверов. no-resolv # Запрещаем добавление хостов из файла /etc/hosts. no-hosts # Указываем вышестоящие DNS-серверы. server=::1#5353 server=127.0.0.1#5353 # Указываем количество элементов для локального кэша DNS. cache-size=5000 # Экспортируем дополнительные хосты при необходимости. address=/example.org/192.168.1.25

Установка и настройка stubby

Установим пакет stubby (для поддержки DoT):

sudo dnf install stubby

Откроем файл /etc/stubby.yml в текстовом редакторе:

sudoedit /etc/stubby.yml

Внесём ряд правок (в качестве примера мы приводим листинг готового файла конфигурации с комментариями на русском языке):

# Активируем режим STUB-резолвера. resolution_type: GETDNS_RESOLUTION_STUB # Активируем транспорт TLS. dns_transport_list: — GETDNS_TRANSPORT_TLS # Требуем обязательного использования TLS. tls_authentication: GETDNS_AUTHENTICATION_REQUIRED # Задаём стойкость шифра (128 или 256 бит). tls_query_padding_blocksize: 128 # Активируем rfc7871. edns_client_subnet_private : 1 # Разрешаем переключение на другой DNS-сервер в случае недоступности текущего. round_robin_upstreams: 1 # Задаём таймаут keepalive в миллисекундах. idle_timeout: 9000 # Указываем лимит исходящих DNS-запросов на вышестоящий сервер. limit_outstanding_queries: 100 # Задаём таймаут ожидания ответа от сервера в миллисекундах. timeout: 1000 # Указываем используемые шифры для TLS 1.2 и ниже. tls_cipher_list: «EECDH+AESGCM:EECDH+CHACHA20» # Указываем используемые шифры для TLS 1.3 и выше. tls_ciphersuites: «TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_128_GCM_SHA256» # Устанавливаем минимальную версию TLS. tls_min_version: GETDNS_TLS1_2 # Устанавливаем максимальную версию TLS. tls_max_version: GETDNS_TLS1_3 # Настраиваем stubby на прослушивание loopback-интерфейса и порта 5353. listen_addresses: — [email protected] — 0::[email protected] # Указываем используемые серверы DNS. upstream_recursive_servers: — address_data: 9.9.9.9 tls_auth_name: «dns.quad9.net» — address_data: 1.1.1.1 tls_auth_name: «cloudflare-dns.com» — address_data: 2620:fe::fe tls_auth_name: «dns.quad9.net» — address_data: 2606:4700:4700::1111 tls_auth_name: «cloudflare-dns.com»

Настройка межсетевого экрана

Разрешим входящий трафик на следующие порты: 53/udp и 5353/udp:

❗❗ ОТКЛЮЧИ Настройку ПАРАЗИТ на своем Xiaomi и ОФИГЕЕШЬ!!


sudo firewall-cmd —add-service=dns —permanent sudo firewall-cmd —add-port=5353/udp —permanent

Перезагрузим конфигурацию брандмауэра:

sudo firewall-cmd —reload

Изменение резолвера по умолчанию

Для того, чтобы dnsmasq смог занять стандартный порт 53/udp, мы должны отключить и заблокировать запуск сервиса systemd-resolved, применяемого по умолчанию в качестве локального DNS-резолвера в большинстве современных дистрибутивов:

sudo systemctl disable —now systemd-resolved.service sudo systemctl mask systemd-resolved.service

Xiaomi redmi note 8 64gb характеристики

Удалим символическую ссылку /etc/resolv.conf, создадим пустой текстовый файл и установим правильные права доступа:

sudo rm -f /etc/resolv.conf sudo touch /etc/resolv.conf sudo chown root:root /etc/resolv.conf sudo chmod 0644 /etc/resolv.conf

Откроем созданный файл в текстовом редакторе:

sudoedit /etc/resolv.conf
nameserver 127.0.0.1 nameserver ::1 options trust-ad options ndots:1

Сохраним изменения и выйдем из редактора.

Настройка автозапуска

sudo systemctl enable —now dnsmasq.service sudo systemctl enable —now stubby.service

Перезапустим их для корректного вступления в силу изменений конфигурации:

sudo systemctl restart dnsmasq.service sudo systemctl restart stubby.service

Проверка работы DNS

Проверим работу настроенной связки:

Если всё сделано верно, будет возвращён действительный ответ.

Литература

При написании статьи использовалась литература из следующих источников:

  • dnsmasq on Arch Wiki;
  • stubby documentation.

4 commentary to post

DNSMASQ USER :
NetworkManager затрет /etc/resolv.conf, поэтому я настроил openresolv с интеграцией с NM.

В современных версиях Fedora конфигурационный файл /etc/resolv.conf — это символическая ссылка на виртуальный /run/systemd/resolve/stub-resolv.conf. Если пользователь удалит данную ссылку и создаст вместо этого текстовый файл, как сказано в заметке, всё будет работать штатно.

DNSMASQ USER :

Кстати, а вроде в NM можно просто указать dnsmasq и он будет его сам запускать со своими конфигами. Это хорошее решение?

Network Manager умеет автоматически запускать dnsmasq для использования в качестве DHCP-сервера при раздаче Wi-Fi или мостов, но конфиги он будет генерировать самостоятельно и без опций DNS.

Разделы сайта

  • HOWTO (92)
  • Новости (8)
  • Программирование (7)
  • Разное (3)
  • Разработка (18)
  • Рецензии (3)

Свежее на сайте

  • Настраиваем поддержку UEFI Secure Boot для драйверов NVIDIA
  • Используем TPM для хранения SSH-ключей
  • Работаем с GPG подписями и шифрованием в C#
  • Обходим проверку на наличие прав суперпользователя
  • Управляем профилями производительности Linux

Источник: www.easycoding.org

Как полностью удалить dsnmasq и каковы побочные эффекты от этого?

Я не хочу, чтобы dsnmasq работал все время. Я хочу удалить его. Как это сделать? Я также нашел эту ссылку ( http://overtag.dk/wordpress/2014/06/ubuntu-14-04-trusty-with-dns-server-and-networkmanager-disabling-dnsmasq/). Могу ли я следовать инструкциям, указанным здесь?

14 авг ’15 в 17:21 2015-08-14 17:21
2015-08-14 17:21

2 ответа

Если у вас нет компьютера для размещения кеша / сервера DNS, например, для точки доступа WiFi, используйте ap-hotspot Вы можете просто удалить его с помощью:

sudo apt-get remove dnsmasq

Насколько я знаю, это не требуется по умолчанию в большинстве установок Ubuntu.

Wilf 14 авг ’15 в 20:25 2015-08-14 20:25
2015-08-14 20:25

Давайте посмотрим, что man dnsmasq говорит о своей цели:

Dnsmasq принимает DNS-запросы и отвечает на них из небольшого локального кэша или перенаправляет их на реальный рекурсивный DNS-сервер. Он загружает содержимое / etc / hosts, чтобы можно было разрешить локальные имена хостов, которые не отображаются в глобальном DNS, а также отвечает на запросы DNS для хостов, настроенных по протоколу DHCP. Он также может выступать в качестве официального DNS-сервера для одного или нескольких доменов, позволяя локальным именам появляться в глобальном DNS. Он может быть настроен на проверку DNSSEC.

Так что если вам не нужно:

  • читать определенные IP-адреса, сохраненные в /etc/hosts
  • использовать локальный кеш DNS
  • использовать вашу машину в качестве DHCP-сервера

удаление dnsmasq не повлияет на тебя.

Лично у меня есть dnsmasq закомментировано в /etc/NetworkManager/NetworkManager.conf и использовать свой собственный DNS-сервер в /etc/dhcp/dhclient.conf ,

Sergiy Kolodyazhnyy 14 авг ’15 в 20:54 2015-08-14 20:54
2015-08-14 20:54

Steam рекомендует это непосредственно в качестве временного решения проблемы низкой скорости загрузки в Ubuntu. Steam ограничивает скорость загрузки 28 Мбит / с, а у меня соединение 200 Мбит / с. Терминал получает 150 Мбит / с с помощью быстрой команды, speedtest.com показывает скорость до 225 Мбит / с.

Как почистить пылесос Xiaomi dream

Так что это довольно большое падение. Сначала я подумал, что это просто неправильная конфигурация моей локальной сети или неправильные драйверы Ethernet, но, видимо, это просто проблема Steam.

Этой статье в Steam 6 лет, так что похоже, что эта проблема не прекращается последние шесть лет??

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

Так что в 20.04 есть применение. Если вы не используете Steam или не делаете то, что упомянуто выше.

Источник: ask-ubuntu.ru

Установка и примеры настройки Dnsmasq

Обновлено

Обновлено: 28.10.2022 Опубликовано: 03.09.2021

Используемые термины: Dnsmasq, DNS, Linux. Данная инструкция будет состоять из двух основных частей — установка программного обеспечения и примеры по его настройки под различные задачи. Мы рассмотрим примеры работы на системах Linux Ubuntu и Rocky Linux (CentOS).

Установка, настройка системы и запуск

1. Установка выполняется немного, по-разному, в зависимости от выбранного дистрибутива Linux. Рассмотрим примеры систем на базе Deb и RPM. а) Для Debian / Ubuntu (Deb):

apt install dnsmasq
б) Для Rocky Linux / CentOS (RPM):
yum install dnsmasq
Установка завершена.

После установки или старта сервиса мы можем увидеть ошибку:

failed to create listening socket for port 53: Address already in use

Как правило, она связана с тем, что на компьютере работает сервис systemd-resolved, который занял порт 53. Чтобы это исправить, отключаем его:

systemctl disable systemd-resolved —now
2. После установки разрешим автозапуск сервиса. Вводим команду:
systemctl enable dnsmasq
Для систем на базе RPM также необходимо запустить сервис:
systemctl start dnsmasq

3. Настраиваем брандмауэр. Нам необходимо открыть UDP порт 53. Как правило, используется 2 системы управления netfilter — iptables и firewalld. Рассмотрим обе. а) При использовании iptables (как правило, для систем на базе Deb):

iptables -I INPUT -p udp —dport 53 -j ACCEPT
И сохраняем правило. б) При использовании firewalld (как правило, для систем на базе RPM):
firewall-cmd —permanent —add-port=53/udp
firewall-cmd —reload

4. Проверяем работоспособность сервиса. На любом из компьютеров в сети делаем запрос при помощи nslookup:

nslookup dmosk.ru 192.168.0.15

* где 192.168.0.15 — адрес в сети нашего сервера, куда мы установили dnsmasq. Мы должны получить ответ на подобие:

Server: 192.168.0.15
Address: 192.168.0.15#53

Non-authoritative answer:
Name: dmosk.ru
Address: 92.53.96.18

Наш dnsmasq установлен и готов к дальнейшей настройке.

Примеры настройки dnsmasq

Переходим к основной части инструкции. Приведем примеры использования и соответствующей настройки dnsmasq.

1. Перевод запросов на другой DNS-сервер для определенного домена

Предположим, у нас есть задача — переводить все запросы для имен с доменом consul на другой DNS-сервер, который находится в нашей сети. Также, данный сервер слушает не на стандартном для NS-сервера порту (53), а на порту 8600. Кстати, это реальный пример работы при настройке кластера consul. Создаем конфигурационный файл:

Xiaomi body composition scale 2 обзор

vi /etc/dnsmasq.d/consul
В него добавим одну строку:
server=/consul/127.0.0.1#8600

* в данном примере мы будем переводить все запросы для домена consul на сервер 127.0.0.1 (в этом примере локальный сервер, но может быть любой) и порт 8600.

Если мы работаем в системе с включенным SELinux и переводим запросы на нестандартный порт, то необходимо добавить правило:

semanage port -a -t dns_port_t -p tcp 8600
* где 8600 — порт, на который переводим запросы DNS.
Чтобы настройки вступили в силу, перезапускаем dnsmasq:
systemctl restart dnsmasq

2. Настройка кэширования

По умолчанию, dnsmasq работает как кэширующий сервер. Мы же подредактируем настройки. Создаем конфигурационный файл:

vi /etc/dnsmasq.d/cache
cache-size=10000
all-servers
no-negcache

  • cache-size — размер кэша (количество хостов).
  • all-servers — задает поведение, при котором наш сервер будет отправлять запрос всем доступным ему серверам DNS и принимать ответ от того, кто первый ему ответит.
  • no-negcache — не кэшировать негативные ответы.

Чтобы настройки вступили в силу, перезапускаем dnsmasq:

systemctl restart dnsmasq

3. Подмена IP-адресов

Есть несколько вариантов подмены IP-адресов в dnsmasq. Для настройки создадим файл:

В зависимости от ситуации, применяем один из вариантов, описанных ниже.

а) Подмена одного адреса:

* в данном примере если наш сервер получит ответ 1.1.1.1, он его заменит на 2.2.2.2.

б) Подмена адресов в подсети:

* в данном примере все адреса из подсети 1.1.1.0/24 будут заменены на соответствующие адреса подсети 2.2.2.2/24.

* в данном примере адреса в диапазоне от 1.1.1.100 до 1.1.1.200 будут переопределены в адреса в диапазоне от 192.168.0.100 до 192.168.0.200.

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

systemctl restart dnsmasq

4. Произвольный адрес

Мы можем быстро добавить любой адрес и привязать его к доменному имени. Делается это с помощью директивы address:

address=/dmosk.local/127.0.0.1
address=/dmosk.local/192.168.0.15
address=/mail.dmosk.local/192.168.0.16

* в нашем примере dnsmasq будет знать о двух записях — dmosk.local и mail.dmosk.local. Первая будет разрешаться в два адреса.

systemctl restart dnsmasq

5. Форвард запросов на другой сервер

С помощью опции server мы можем указать серверы, на которые нужно передавать запрос DNS.

* в данном примере мы передадим запросы на серверы Google.

systemctl restart dnsmasq

6. Файл hosts

В зависимости от ситуации, нам может потребоваться разрешать некоторые имена с помощью файла /etc/hosts. Или наоборот — настройки из данного файла могут нам мешать.

В dnsmasq предусмотрена директива hosts, с помощью которой мы можем манипулировать результатами с использованием файла hosts.

а) Если мы хотим, чтобы данные из файла учитывались:

б) Если нам не нужны данные из файла:

systemctl restart dnsmasq

Это, далеко, не все возможности dnsmasq. По мере необходимости, они будут дополняться в данной инструкции.

Диагностика и решение проблем

По умолчанию, dnsmasq пишет не очень много логов. Чтобы это исправить, необходимо отредактировать конфигурацию. Для этого создаем файл:

* где опция log-queries разрешает логи запросов; log-facility позволяет задать путь до файла с логами.

Создаем каталог для хранения лога:

Перезапускаем dnsmasq, чтобы применить изменения:

systemctl restart dnsmasq

Прочитать лог можно командой (непрерывное чтение):

tail -f /var/log/dnsmasq/dnsmasq.log

Смотрите также

Возможно, также будет интересны инструкции:

Источник: www.dmosk.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
Китай Покупай