Если ты когда-нибудь пытался разобраться, почему браузер под Ubuntu тормозит на ровном месте, почти всегда виноват DNS. Да, та самая «телефонная книга Интернета», которая превращает доменные имена в IP-адреса. В теории все красиво — ты вводишь site.com, система ходит в сеть, находит IP, ты смотришь котиков. На практике — твой провайдер «обновляет» свои записи раз в месяц, и ты смотришь на белый экран с кружком загрузки.
Проблему решает простой трюк: поставить нормальные публичные DNS-серверы. Google, Cloudflare, OpenDNS — выбор за тобой.
- Google (8.8.8.8, 8.8.4.4)
- Cloudflare (1.1.1.1 и 1.0.0.1)
- OpenDNS (208.67.222.222, 208.67.220.220)
- Level3 (209.244.0.3, 209.244.0.4)
Но тут есть нюанс: Ubuntu 18.04 с systemd-resolved больше не любит, когда ты лезешь прямо в /etc/resolv.conf. Этот файл теперь — просто ссылочка, а всю магию делает systemd и Netplan.
Netplan вместо старого /etc/resolv.conf
Раньше было просто: открыл resolv.conf, поменял адреса, сохранил, забыл. Теперь файлы /etc/resolv.conf — символические ссылки, и трогать их руками — все равно что пытаться водить танк на скейтборде. Система просто перезапишет твои изменения через секунду.
Ubuntu 18.04 использует Netplan. Файлы лежат в /etc/netplan. Обычно это 01-netcfg.yaml или 50-cloud-init.yaml. Содержимое выглядит примерно так:
network:
version: 2
renderer: networkd
ethernets:
ens3:
dhcp4: no
addresses:
- 192.168.121.199/24
gateway4: 192.168.121.1
nameservers:
addresses: [8.8.8.8, 8.8.4.4]
Если хочешь поставить Cloudflare — меняешь addresses на [1.1.1.1, 1.0.0.1]. Никаких магических команд, просто редактируешь YAML, сохраняешь.
⚠️ Лови фишку: YAML не прощает табы и лишние пробелы. Сделал криво — Netplan ругнется, сеть не поднимется, и ты останешься без интернета. Вот тебе пример, как не надо:
nameservers: addresses: [1.1.1.1, 1.0.0.1] # Неправильно, сломает всё Правильная версия с отступами — выше.
Применяем изменения
После редактирования не ждешь, пока система сама догадается. Делаешь:
sudo netplan apply
Все, Netplan сгенерировал конфиги для systemd-resolved и теперь твоя Ubuntu реально знает, куда идти за сайтами.
Чтобы проверить, что DNS обновился, используй:
systemd-resolve --status | grep 'DNS Servers' -A2
И увидишь что-то вроде:
DNS Servers: 1.1.1.1
1.0.0.1 Если там по-прежнему IP провайдера — значит где-то напортачил в YAML.
Почему это важно
Прокачанные DNS-серверы — это не про «красивое число». Без нормального резолвера:
- сайты грузятся по 10 секунд или зависают навечно;
- старые записи провайдера ведут тебя на мертвые IP;
- иногда вообще никакой интернет, потому что твоя система тупо ждет ответа, которого нет.
Настроил нормальные DNS — все летает, как должно. Забыл про это — месяц будешь гадать, почему WordPress тормозит.
Советы, чтобы не выстрелить себе в ногу
- Не редактируй /etc/resolv.conf руками. Systemd-resolved любит его больше, чем тебя.
- Следи за отступами в YAML. Любая ошибка — сеть падает, и привет, ночные звонки.
- Проверяй DNS после apply. Если что-то не так — откат, иначе все сервисы начнут материться.
- Используй быстрые публичные DNS. Cloudflare, Google, OpenDNS — они реально быстрее, чем твой провайдер.
В итоге, настраивая DNS через Netplan, ты получаешь полный контроль, без старых костылей и тупой зависимости от провайдера. И главное — больше не смотришь на кружки загрузки и не материшь Ubuntu, когда банально сайт не грузится.
0 комментариев