Автор Тема: Изменение настроек DNS  (Прочитано 2369 раз)

Онлайн ivm

  • Ветеран
  • *****
  • Сообщений: 1493
Изменение настроек DNS
« : 16 Августа 2015, 18:21:22 »
Последнее время в системе применяется механизм автоматического выбора dns. Изменение файла /etc/resolv.conf сохраняются до перезагрузки.
Нашлось хорошее решение, позволяющее "сохранить" нужные изменения. sudo touch /etc/network/if-up.d charge_dns
sudo nano /etc/network/if-up.d/charge_dns
и вставляем в него желаемый сервер(ы)
Цитировать
#! /bin/sh
echo "nameserver Х.Х.Х.Х" > /etc/resolv.conf
echo "nameserver 8.8.8.8" >> /etc/resolv.conf
echo "nameserver 8.8.4.4" >> /etc/resolv.conf

остаётся дать права на исполнение полученному скрипту
sudo chmod +x /etc/network/if-up.d/charge_dns
решение найдено на Форуме русскоязычного сообщества Ubuntu
Что непонятно спрашиваем, если всё понятно - пользуемся.

Онлайн ivm

  • Ветеран
  • *****
  • Сообщений: 1493
Re: Изменение настроек DNS
« Ответ #1 : 13 Мая 2016, 13:17:26 »
Есть ещё другой путь.
Заходим в /run/resolvconf/ и смотрим на файл resolv.conf. Открываем его от администратора в Pluma и изменяем цифры, указанные в строке nameserver, на 8.8.8.8, т.е. приводим к виду # Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
nameserver 8.8.8.8
Работает до перезагрузки.
 
Что непонятно спрашиваем, если всё понятно - пользуемся.

Онлайн ivm

  • Ветеран
  • *****
  • Сообщений: 1493
Re: Изменение настроек DNS
« Ответ #2 : 10 Января 2017, 18:06:08 »
Как говорит мой друг, интересно девки пляшут...  :)
Ещё более интересно выглядит картина с сетевым соединением в тестовой 17.04.
Gradio работает, пинги есть, т.е. связь с интернетом нормальная. А в браузере может возникнуть такое сообщение:
Цитировать
Не удается получить доступ к сайту

Не удается найти DNS-адрес сервера forum.matuntu.org.
Попробуйте сделать следующее:
Проверьте настройки прокси-сервера, брандмауэра и DNS.

DNS_PROBE_FINISHED_BAD_CONFIG
При этом resolv.conf следующего содержания:
cat /etc/resolv.conf
Цитировать
# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
# 127.0.0.53 is the systemd-resolved stub resolver.
# run "systemd-resolve --status" to see details about the actual nameservers.

nameserver 127.0.0.53
Ух ты, какой сервер! Насколько я знаю, связь между DNS-серверами осуществляется через 53-й порт. Но тогда в записи сервера порт намесервера должен быть отделён от адреса двоеточием. Попробовал банально заменить на четыре восьмёрки и проблема исчерпана до следующей перезагрузки.
Проблема связи оказывается в неправильном механизме конфигурирования resolv.conf. Но мы знаем, как бороться с этой проблемой. 
Что непонятно спрашиваем, если всё понятно - пользуемся.

Оффлайн vita

  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 2286
  • Да будет свет!
Re: Изменение настроек DNS
« Ответ #3 : 13 Марта 2017, 11:47:20 »
Пользователям, тестирующим Ubuntu 17.04, на убунтовском форуме до устранения проблемы разработчиками подсказали откатить версию NM с последующей блокировкой от обновления.
« Последнее редактирование: 17 Марта 2017, 21:15:24 от vita »
Делай с нами, делай как мы, делай лучше нас!

Онлайн ivm

  • Ветеран
  • *****
  • Сообщений: 1493
Re: Изменение настроек DNS
« Ответ #4 : 13 Марта 2017, 14:50:53 »
Мне приходилось сталкиваться с ситуацией, когда провайдер очень долго настраивал свои DNS-сервера. И сервер, который ещё вчера работал, сегодня мог тупить. Второй DNS при этом в связи с возникшей нагрузкой также через некоторое время начинал тормозить. При переходе на альтернативные сервера всегда возникал вопрос, как померить качество доступа к серверу. Нашёл такое решение.
Для оценки DNS в линуксе есть пакет ldnsutils и его нужно установить: sudo apt install ldnsutilsПосле его установки станут доступны инструменты для тестирования DNS.
Можно указать IP-адрес конкретного сервера имен, минуя настройки в файле /etc/resolv.conf:
Цитировать
drill @ip.of.name.server www5.yahoo.com
Например, drill @8.8.8.8 www5.yahoo.com вывод:
Цитировать
;; ->>HEADER<<- opcode: QUERY, rcode: NXDOMAIN, id: 11185
;; flags: qr rd ra ; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0
;; QUESTION SECTION:
;; www5.yahoo.com.   IN   A

;; ANSWER SECTION:

;; AUTHORITY SECTION:
yahoo.com.   10   IN   SOA   ns1.yahoo.com. hostmaster.yahoo-inc.com. 2017031203 3600 300 1814400 600

;; ADDITIONAL SECTION:

;; Query time: 169 msec
;; SERVER: 8.8.8.8
;; WHEN: Mon Mar 13 14:09:55 2017
;; MSG SIZE  rcvd: 93
Можно заметить, что в новом resolv.conf Ubuntu 17.04 прописан nameserver 127.0.0.53, его тест в локальной сети после роутера секунд через 15-20 завершится ошибкой:
Цитировать
Error: error sending query: Could not send or receive, because of network error
Но при проверке в провайдерской сети напрямую без роутера показывает:
Цитировать
;; ->>HEADER<<- opcode: QUERY, rcode: SERVFAIL, id: 9410
;; flags: qr rd ra ; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;; www5.yahoo.com.   IN   A

;; ANSWER SECTION:

;; AUTHORITY SECTION:

;; ADDITIONAL SECTION:

;; Query time: 133 msec
;; SERVER: 127.0.0.53
;; WHEN: Mon Mar 13 14:39:33 2017
;; MSG SIZE  rcvd: 32
При выполнении с учётом реальных настроек локальной сети к DNS, прописанным в роутере, выглядит так:
Цитировать
drill @192.168.1.1 www5.yahoo.com
;; ->>HEADER<<- opcode: QUERY, rcode: NXDOMAIN, id: 6957
;; flags: qr rd ra ; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0
;; QUESTION SECTION:
;; www5.yahoo.com.   IN   A

;; ANSWER SECTION:

;; AUTHORITY SECTION:
yahoo.com.   600   IN   SOA   ns1.yahoo.com. hostmaster.yahoo-inc.com. 2017031203 3600 300 1814400 600

;; ADDITIONAL SECTION:

;; Query time: 241 msec
;; SERVER: 192.168.1.1
;; WHEN: Mon Mar 13 13:36:34 2017
;; MSG SIZE  rcvd: 93
Теперь можно сравнить полученные параметры DNS серверов, например, время запроса  (Query time) и т.д.
Время доступа к DNS, прописанный в роутере, с ума сойти какой большой.
Что непонятно спрашиваем, если всё понятно - пользуемся.

Оффлайн vita

  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 2286
  • Да будет свет!
Re: Изменение настроек DNS
« Ответ #5 : 13 Марта 2017, 15:18:19 »
В Matuntu-X64-M116 на основе Ubuntu 16.04.2 (выход в интернет через Wi-Fi)
cat /etc/resolv.conf показывает:
Цитировать
# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8 )
#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
nameserver 127.0.1.1
Никаких проблем с DNS серверами нет. Проверка этого IP при помощи интрумента drill drill @127.0.1.1 www5.yahoo.com
Цитата: drill @127.0.1.1 www5.yahoo.com
; ->>HEADER<<- opcode: QUERY, rcode: NXDOMAIN, id: 39285
;; flags: qr rd ra ; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0
;; QUESTION SECTION:
;; www5.yahoo.com.   IN   A

;; ANSWER SECTION:

;; AUTHORITY SECTION:
yahoo.com.   600   IN   SOA   ns1.yahoo.com. hostmaster.yahoo-inc.com. 2017031300 3600 300 1814400 600

;; ADDITIONAL SECTION:

;; Query time: 108 msec
;; SERVER: 127.0.1.1
;; WHEN: Mon Mar 13 15:11:58 2017
;; MSG SIZE  rcvd: 93
Проблемы с настройками DNS появились только в тестовых версиях Ubuntu 17.04.
Делай с нами, делай как мы, делай лучше нас!

Онлайн ivm

  • Ветеран
  • *****
  • Сообщений: 1493
Re: Изменение настроек DNS
« Ответ #6 : 13 Марта 2017, 15:44:56 »
Есть такая статья  от 2015 года в переводе на русский Как заменить менеджер сетевых соединений NetworkManager на systemd-networkd в Linux.
Может рекомендации из статьи окажутся лучше, чем совет в "ортопедической клинике" форума Ubuntu.ru - вернуться к старому пакету NM и заблокировать его версию от обновления.
Что непонятно спрашиваем, если всё понятно - пользуемся.

Онлайн ivm

  • Ветеран
  • *****
  • Сообщений: 1493
Re: Изменение настроек DNS
« Ответ #7 : 15 Марта 2017, 15:38:11 »
Обратил внимание на то, что в новом пакете resolvconf  дефолтным nameserver числится 127.0.0.53 (127.0.0.53 is the systemd-resolved stub resolver).
Нашёл объяснение, что
Цитата: в переводе
/usr/lib/systemd/resolv.conf файл /usr/lib/systemd/resolv.conf , который перечисляет заглушку DNS 127.0.0.53 (см. Выше) как только DNS-сервер. Этот файл может быть символически связан с /etc/resolv.conf для того, чтобы /etc/resolv.conf клиенты, которые обходят /etc/resolv.conf DNS-API, для разрешения systemd . Этот режим работы рекомендуется.
В локальной сети это решение не работает, только напрямую через сеть провайдера. Поэтому вспоминается песня из Кин-Дза-Дза: "Мама, мама, что я буду делать?!"
Что непонятно спрашиваем, если всё понятно - пользуемся.

Онлайн ivm

  • Ветеран
  • *****
  • Сообщений: 1493
Re: Изменение настроек DNS
« Ответ #8 : 17 Марта 2017, 18:13:12 »
Сейчас у меня в Zesty интернет через роутер работает без проблем.
Проблему надеялся решить, создав файл resolv.conf в /etc взамен ссылочного как это работало раньше. Прописал гугловский PDNS, но это не помогло. Посмотрел в свойствах проводного соединения. Оказалось, что там есть возможность во вкладке IPv4 прописать дополнительные DNS, что я и сделал, прописал любимые четыре восьмёрки

После перезагрузки созданный файл /etc/resolv.conf остался, но содержание его изменилось на такое:
Цитата: cat /etc/resolv.conf
# Generated by NetworkManager
nameserver 127.0.1.1
Ранее я пробовал прописывать вручную адрес этого сервера, но преобразование доменных имён не работало. Теперь же сеть заработала нормально. Проверка настроек проводного соединения показала, что прописанный мной дополнительный DNS остался после перезагрузки. Судя по всему это и есть решение возникшей проблемы и даёт возможность прописать нужный DNS.
Что непонятно спрашиваем, если всё понятно - пользуемся.

Оффлайн vita

  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 2286
  • Да будет свет!
Re: Изменение настроек DNS
« Ответ #9 : 17 Марта 2017, 20:58:12 »
Данное решение оказалось весьма простым и эффективным также при использовании Wi-Fi соединения.
Огромное спасибо!
Делай с нами, делай как мы, делай лучше нас!

Оффлайн vita

  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 2286
  • Да будет свет!
Re: Изменение настроек DNS
« Ответ #10 : 29 Апреля 2017, 12:29:51 »
Некоторые варианты решения проблем в связи с переходом в Ubuntu 17.04 на использование systemd-resolved приведены здесь и здесь.  Хотя из комментариев по второй ссылке от 24 апреля следует вывод:
Цитировать
ошибка была устранена последними обновлениями
« Последнее редактирование: 28 Июня 2017, 11:02:10 от vita »
Делай с нами, делай как мы, делай лучше нас!

Онлайн ivm

  • Ветеран
  • *****
  • Сообщений: 1493
Re: Изменение настроек DNS
« Ответ #11 : 01 Мая 2017, 10:02:11 »
Сейчас всё нормализовалось, только небольшая задержка в самом начале работы с DNS. Причина очевидно кроется в том, что служба кэширования и проверки DNS (DNSSEC) в целях безопасности поставляется в предустановленной Ubuntu 17.04 и от неё производных дистрибутивов. Эту службу можно отключить, но DNSSEC предназначена для защиты от проникновения извне. Поэтому лучше подождать немного после входа в веббраузер, а затем всё будет функционировать в штатном режиме.
Что непонятно спрашиваем, если всё понятно - пользуемся.

Оффлайн vita

  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 2286
  • Да будет свет!
Re: Изменение настроек DNS
« Ответ #12 : 28 Июня 2017, 11:23:14 »
Выявлена уязвимость в systemd-resolved, поставляемом в составе systemd кэширующем DNS-резолвере,  которая потенциально может привести к выполнению кода при обработке специально оформленного ответа от DNS-сервера, подконтрольного злоумышленнику. Проблема вызвана ошибкой в расчёте размера памяти для обработки запроса, которая может привести к тому, что TCP-ответ не уместится в выделенный буфер.
Как утверждается на сайте OpenNet,
Цитировать
Проблеме подвержены версии systemd с 223 по 233 включительно. Обновление с устранением проблемы выпущено для Fedora Linux и Ubuntu, но пока недоступно для Debian Stretch. Проблема не затрагивает Red Hat Enterprise Linux 7 и производные дистрибутивы.
Для проверки версии systemd достаточно в терминале ввести команду: systemd --vВ Matuntu-Z64 получен такой вывод:
Цитировать
systemd 232
+PAM +AUDIT +SELINUX +IMA +APPARMOR +SMACK +SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS +ACL +XZ +LZ4 +SECCOMP +BLKID +ELFUTILS +KMOD +IDN
Сегодняшние обновления коснулись и systemd.

P.s.: Сторонний репозиторий ppa:pitti/systemd после подключения позволяет в Ubuntu 17.04 (zesty) повысить версию systemd на сегодняшний момент до 233+upstream20170510-0.master, но мне понравилось предупреждение:
Цитировать
Этот PPA регулярно получает пакеты для текущего ведущего устройства systemd и другие экспериментальные изменения.

ПРЕДУПРЕЖДЕНИЕ! Не используйте это, если вы не знаете, что делаете!
Делай с нами, делай как мы, делай лучше нас!

Онлайн ivm

  • Ветеран
  • *****
  • Сообщений: 1493
Re: Изменение настроек DNS
« Ответ #13 : 28 Июня 2017, 13:45:18 »
Интересные статьи по рассматриваемой теме можно почитать здесь и на Хабрахабре.
Что непонятно спрашиваем, если всё понятно - пользуемся.