Комментарии 18
Добавьте, пожалуйста, пункт 0) с ответом на вопрос зачем это в принципе может быть нужно.
Простая установка, управление через вебинтерфейс.
Заодно рекламу порежете.
А Шаг 3 точно имеет смысл делать на каждой машине? Может это можно на роутере это настроить один раз для всех?
Согласен. Этим реально проще маршрутизатор озадачить, прописав в настройки DHCP необходимый сервер (сервера).
Но я считаю, что с функционалом данного локального сервера прекрасно справится маршрутизатор. Например, в домашнем Mikrotik я спокойно могу задать IP адреса локальным серверам через IP → DNS → Static.
Во-первых,
Пакет resolvconf устанавливается для того, чтобы в файл
/etc/resolv.conf
при перезапуске компьютера автоматически записывалась строчкаnameserver 127.0.0.1
Возможно вы получаете настройки сети по DHCP, поэтому и перезаписывается resolv.conf или используете какой-то сторонний нетворк мэнеджер. Потому, что например с дефолтным
/etc/network/interfaces
allow-hotplug eth0
iface eth0 inet static
address 192.168.1.2
netmask 255.255.255.0
gateway 192.168.1.1
Файл resolv.conf самостоятельно не изменяется.
Во-вторых,
failed to create listening socket for port 53: Address already in use
По умолчанию после установки Debian в минимальной конфигурации, никакие сервисы не прослушивают 53 порт. Возможно вам стоит уточнить, что такое у вас установленно и откуда, что данный порт занят.
По крайне мере, всё выше перечисленное, действительно для текущего latest Debian 11.6.
Послесловие, я не совсем понимаю, почему вы используете Ubuntu 18.04.4 LTS ведь это Old Releases. Единственная причина - это VPS от какого-то хостинг провайдера, но тогда бегите от него. К любому нормальному хостеру где у вас будет возможность самостоятельно установить систему с ISO, "обычный" дебиан\убунту. А то это всё равно, что купить старый, латанный автоваз, с дикими и непонятными изменениями от прошлых хозяев, и заниматься на нём тюнингом.
Добавьте в файл
/etc/hosts
необходимые домены и их IP адреса.
Но зачем, Бэрримор? address=/your.domain.name/11.22.33.44
в том же dnsmasq.conf
В этих ваших линухах нет даже DNS сервера из коробки?
echo 'local-data: "blah.blah.blah. IN A 192.168.x.y"' >> /var/unbound/unbound.conf
все необходимое и достаточное для домашнего DNS
В этих ваших линухах нет даже DNS сервера из коробки?
Всё есть в репах, просто по умолчанию не везде ставится - зависит от дистра и выбора пакетов при установке.
А в этих ваших виндах он сразу ставится и работает после установки, и на серверах, и на рабочих станциях? </sarcasm>
Где вы в винде видели unbound?
В *BSD, Solaris и их деривативах (eg TrueNas) является частью системы. Одной командой добавить в загрузку, второй добавить DNS запись.
Поправьте, если ошибаюсь, но unbound является dns или dhcp сервером? Кажется это просто кэширующий dns клиент или резолвер и запись в var/unbound/unbound.conf не сильно отличается от записи в hosts.
failed to create listening socket for port 53: Address already in use
FAILED to start up
Failed to start dnsmasq — A lightweight DHCP and caching DNS server.
Это нормально! Мы ещё не настроили сервер – ошибка происходит из-за этого
В Ubuntu 18.04.6 LTS по умолчанию установлен легковесный кэширующий DNS-сервер systemd-resolve(слушает 127.0.0.53)
sudo systemctl disable systemd-resolved --now
sudo systemctl enable --now dnsmasq
Пора начинать думать об апгрейде или подключаться к Extended Security Maintenance (ESM):
Free for personal use - Anyone can use Ubuntu Pro for free on up to 5 machines, or 50 if you are an official Ubuntu Community member.
Ubuntu 18.04.6 LTS - End of Standard Support: April 2023
Ubuntu 18.04.6 ESM - Start of ESM: April 2023 End of Life: April 2028
Статья хорошая для тех кто ничего не понимает и никогда такого не делал. Теперь такую же про email с начала, и отдельно про файрволл тоже с начала.
Это нормально! Мы ещё не настроили сервер – ошибка происходит из-за этого.
Это не нормально, это лень разработчика обработать ситуации.
Начнем критиковать.
Если вы впервые столкнулись с необходимостью поднять DNS-сервер для локальной сети под Linux, то эта статья – для вас.
Эта статья все-таки не для вас
Преимущество предлагаемого способа – простота: сервер можно настроить буквально за несколько минут.
Совершив много лишних действий
Но этот способ, скорее всего, не подойдёт для продакшн серверов.
Действительно, данный способ применим только для мелких локальных сетей.
Автор статьи провёл несколько часов в борьбе с ошибками, багами и непонятным поведением системы прежде чем получил стабильный результат.
За несколько часов автор родил только очередной велосипед (или троллейбус из буханки хлеба, кому как нравится)
На хостах установлен Ubuntu 18.04.4 LTS (для других версий не проверялось).
Автору надо обновить ОС. Уже успело выйти 2 LTS и 7 обычных выпусков Ubuntu
Шаг 1. Установка необходимых пакетов
Не надо вообще ничего ставить. На сервере заполняем /etc/hosts.
Например:
1.2.3.4 myserver.tst
Главное помнить, что не надо использовать домены "от балды".
Шаг 2. Настройка пакетов
Предполагаем, что у вас не древний дистрибутив с systemd.
Проверяем работу systemd-resolved.service
sudo systemctl status systemd-resolved.service
Если он в состоянии disabled, то включаем
sudo systemctl enable systemd-resolved.service
Открываем в любимом редакторе (я советую vi :trollface ) /etc/systemd/resolved.conf
После DNS= вписываем ваш любимый сервер. Если вписать 8.8.8.8:853#dns.google, то у вас даже будет DoT от Google. Делаем Cache=yes для того, чтобы работало кэширование запросов. В DNSStubListenerExtra= вписываем ip вашего сервера. ReadEtcHosts= устанавливаем в yes. Сохраняем изменения и перезапускаем сервис.
sudo systemctl restart systemd-resolved.service
Все, мы запустили на своем сервере кэширующий dns-сервер с разрешением локальных имен и при этом ничего даже не ставили.
Лично я в краю угла ставлю не кеширование или порезка рекламы за счет BL, а возможность шифровать DNS за счет протоколов: DoH/DoT и DNScrypt v2.
На втором месте идет использование локальных доменов, то есть внутри своей сети вместо IP можно привязать любой(почти) домен, хоть домен хабра, и пользовать его и субдомены для своих внутренних хостов. Работает без интернета, если кто не понял. Для хоумлаба прям мастхев.
Эти топики было бы хорошо раскрыть раз уж идет спич за локальный DNS.
Как настроить простой DNS-сервер для локальной сети