В Ubuntu 14.04 я использую dnsmasq для разрешения доменов wildcard example.com на локальный компьютер (домашний компьютер).
После долгого прочтения я не могу на всю жизнь разобраться в том же на чистой установке 18.04.
Все, чего я хочу достичь на данный момент, это:
- для
ping example.com
пинга 127.0.0.1, а не 93.184.216.34; - для
ping anysubdomain.example.com
также пинг 127.0.0.1; - а за
ping google.com
пинговать реальный google.com через роутер / IP DNS.
Конечно, это должно быть просто, даже тривиально?
Но я в тупике. Я могу получить разрешение example.com, но только за счет взлома всего остального.
Как я могу это сделать?
Ответы:
Вот шаги для Ubuntu 18.04. Это немного долго, так
systemd-resolved
как не очень хорошо сNetworkManager
настройкойdnsmasq
.Тем не менее, я все же рекомендую начинать
dnsmasq
с тогоNetworkManager
, что изменения в подключении к сети (WIFI, проводная связь, ...) будут обрабатываться прозрачно.Включить dnsmasq в NetworkManager
Отредактируйте файл
/etc/NetworkManager/NetworkManager.conf
и добавьте строкуdns=dnsmasq
в[main]
раздел, это будет выглядеть так:Позвольте NetworkManager управлять
/etc/resolv.conf
Настройка
example.com
Перезагрузка
NetworkManager
и тестированиеNetworkManager должен быть перезагружен, чтобы изменения вступили в силу.
Затем мы можем убедиться, что можем попасть на какой-то обычный сайт:
И, наконец, убедитесь, что
example.com
и субдомены разрешены как127.0.0.1
:источник
/etc/resolv.conf
указывает/run/systemd/resolve/stub-resolv.conf
по умолчанию.Сначала убедитесь, что в
/etc/NetworkManager/NetworkManager.conf
следующей строке нет или закомментировано:Перезапустите NetworkManager:
Убедитесь, что dnsmasq, управляемый NetworkManager, больше не работает, либо завершив процесс, либо перезагрузив систему.
Затем установите dnsmasq:
Добавьте следующее к
/etc/dnsmasq.d/example.com
:Перезапустите dnsmasq:
Теперь вы должны иметь подстановочный знак dns подстановки для example.com.
источник
sudo apt install dnsmasq
выдается ошибка «не удалось создать прослушивающий сокет для порта 53: адрес уже используется». В любом случае я продолжал до конца, если последующий шаг разрешит это, но это не сработало, и это не сработало.Это будет не так просто, как редактирование файла hosts. У вас есть несколько вариантов:
Это DNS-прокси Python, который будет обрабатывать подстановочные знаки в / etc / hosts
Использование DNSmasq
источник
netstat -tulpn
проверить, что использует порт? РЕДАКТИРОВАТЬ: Неважно, видел принятый ответ. проблема в системном разрешении.