Как настроить локальное подстановочное (127.0.0.1) разрешение домена на 18.04?

Если у вас есть как Intel, так и Nvidia, неплохо было бы установить утилиту Nvidia X Server Settings; вы можете сделать это из загрузчика программного обеспечения Ubuntu или выполните:

sudo apt-get nvidia-settings

и просто сделайте nvidia-settings в bash afterwards; или открыть его вручную. Это позволит вам увидеть, какая карта используется или выбрать карту, которую вы хотите использовать.

Удачи!

5
задан 3 May 2018 в 10:26

9 ответов

Вот шаги для ubuntu 18.04. Это немного немного, так как systemd-resolved не очень хорошо работает с NetworkManager при настройке с помощью dnsmasq.

Тем не менее я по-прежнему рекомендую запустить dnsmasq с NetworkManager, потому что сетевое подключение изменяется ( WIFI, wired, ...) будет обрабатываться прозрачно.

Включить dnsmasq в NetworkManager

Отредактируйте файл /etc/NetworkManager/NetworkManager.conf и добавьте строку dns=dnsmasq в [main] раздел будет выглядеть так:

[main]
plugins=ifupdown,keyfile
dns=dnsmasq

[ifupdown]
managed=false

[device]
wifi.scan-rand-mac-address=no

Включить dnsmasq в NetworkManager

sudo rm /etc/resolv.conf ; sudo ln -s /var/run/NetworkManager/resolv.conf /etc/resolv.conf

Настроить example.com

echo 'address=/.example.com/127.0.0.1' | sudo tee /etc/NetworkManager/dnsmasq.d/example.com-wildcard.conf

Настроить example.com

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

sudo systemctl reload NetworkManager

Затем мы можем проверить, что мы можем достичь некоторый обычный сайт:

dig askubuntu.com +short
151.101.129.69
151.101.65.69
151.101.1.69
151.101.193.69

И, наконец, убедитесь, что example.com и поддомены разрешены как 127.0.0.1:

dig example.com askubuntu.example.com a.b.c.d.example.com +short
127.0.0.1
127.0.0.1
127.0.0.1
2
ответ дан 22 May 2018 в 11:07
  • 1
    что вы имеете в виду с «systemd-resolved», не очень хорошо работает с NetworkManager »? – Sebastian Stark 4 May 2018 в 13:32
  • 2
    Когда NetworkManager использует dns = dnsmasq, он должен сказать systemd-разрешено использовать dnsmasq, может быть автоматическим. – pim 4 May 2018 в 14:50
  • 3
    Спасибо, это сработало отлично! Кажется, я не могу дать тебе щедрость еще час, и, когда она ушла утром, я ухожу сейчас и сделаю это, когда вернусь завтра. – Nick Rice 5 May 2018 в 03:14

Вот шаги для ubuntu 18.04. Это немного немного, так как systemd-resolved не очень хорошо работает с NetworkManager при настройке с помощью dnsmasq.

Тем не менее я по-прежнему рекомендую запустить dnsmasq с NetworkManager, потому что сетевое подключение изменяется ( WIFI, wired, ...) будет обрабатываться прозрачно.

Включить dnsmasq в NetworkManager

Отредактируйте файл /etc/NetworkManager/NetworkManager.conf и добавьте строку dns=dnsmasq в [main] раздел будет выглядеть так:

[main] plugins=ifupdown,keyfile dns=dnsmasq [ifupdown] managed=false [device] wifi.scan-rand-mac-address=no

Включить dnsmasq в NetworkManager

sudo rm /etc/resolv.conf ; sudo ln -s /var/run/NetworkManager/resolv.conf /etc/resolv.conf

Настроить example.com

echo 'address=/.example.com/127.0.0.1' | sudo tee /etc/NetworkManager/dnsmasq.d/example.com-wildcard.conf

Настроить example.com

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

sudo systemctl reload NetworkManager

Затем мы можем проверить, что мы можем достичь некоторый обычный сайт:

dig askubuntu.com +short 151.101.129.69 151.101.65.69 151.101.1.69 151.101.193.69

И, наконец, убедитесь, что example.com и поддомены разрешены как 127.0.0.1:

dig example.com askubuntu.example.com a.b.c.d.example.com +short 127.0.0.1 127.0.0.1 127.0.0.1
3
ответ дан 17 July 2018 в 15:43

Вот шаги для ubuntu 18.04. Это немного немного, так как systemd-resolved не очень хорошо работает с NetworkManager при настройке с помощью dnsmasq.

Тем не менее я по-прежнему рекомендую запустить dnsmasq с NetworkManager, потому что сетевое подключение изменяется ( WIFI, wired, ...) будет обрабатываться прозрачно.

Включить dnsmasq в NetworkManager

Отредактируйте файл /etc/NetworkManager/NetworkManager.conf и добавьте строку dns=dnsmasq в [main] раздел будет выглядеть так:

[main] plugins=ifupdown,keyfile dns=dnsmasq [ifupdown] managed=false [device] wifi.scan-rand-mac-address=no

Включить dnsmasq в NetworkManager

sudo rm /etc/resolv.conf ; sudo ln -s /var/run/NetworkManager/resolv.conf /etc/resolv.conf

Настроить example.com

echo 'address=/.example.com/127.0.0.1' | sudo tee /etc/NetworkManager/dnsmasq.d/example.com-wildcard.conf

Настроить example.com

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

sudo systemctl reload NetworkManager

Затем мы можем проверить, что мы можем достичь некоторый обычный сайт:

dig askubuntu.com +short 151.101.129.69 151.101.65.69 151.101.1.69 151.101.193.69

И, наконец, убедитесь, что example.com и поддомены разрешены как 127.0.0.1:

dig example.com askubuntu.example.com a.b.c.d.example.com +short 127.0.0.1 127.0.0.1 127.0.0.1
4
ответ дан 23 July 2018 в 16:41

Это будет не так просто, как отредактировать файл hosts. У вас есть несколько вариантов:

Этот прокси-сервер python DNS, который будет обрабатывать подстановочные знаки в / etc / hosts

Этот прокси-сервер python

0
ответ дан 22 May 2018 в 11:07
  • 1
    Благодарю. Ваша ссылка на вопрос DNSmasq - это то, что я делаю в 14.04. Просто делать то же самое в новой установке 18.04 не работает из-за конфликта портов. Поэтому из коробки нужно что-то еще делать по сравнению с этим. Рассматривая весь этот код, необходимый для прокси-сервера python, я не могу поверить всему, что необходимо. Это было не раньше, чем, я полагаю, для тех, кто настаивал на использовании / etc / hosts. – Nick Rice 5 May 2018 в 00:20
  • 2
    Можете ли вы netstat -tulpn проверить, что использует порт? EDIT: Nevermind, увидел принятый ответ. проблема в systemd-разрешении. – Harikrishnan R 10 May 2018 в 16:16

Сначала убедитесь, что в /etc/NetworkManager/NetworkManager.conf следующая строка отсутствует или закомментирована:

dns=dnsmasq

Перезапустить NetworkManager:

sudo systemctl restart NetworkManager

Убедитесь, что dnsmasq, управляемый NetworkManager

Затем установите dnsmasq:

sudo apt install dnsmasq

Добавьте в /etc/dnsmasq.d/example.com следующее:

address=/example.com/127.0.0.1
. ]

Перезагрузите dnsmasq:

sudo systemctl restart dnsmasq

Теперь вы должны иметь переопределитель dns для example.com.

0
ответ дан 22 May 2018 в 11:07
  • 1
    Я не мог заставить это работать. Сразу после чистой минимальной установки (с опцией «удалить диск») sudo apt install dnsmasq дает «не удалось создать прослушивающий сокет для порта 53: адрес уже используется», ошибка. Я все равно продолжал до конца, если последующий шаг разрешил это, но этого не произошло, и это не сработало. – Nick Rice 5 May 2018 в 03:11
  • 2
    Затем dnsmasq, запущенный NetworkManager, все еще работает. Поэтому сначала его следует деактивировать, в конце концов убить, и только тогда должен быть установлен пакет dnsmasq. – Sebastian Stark 5 May 2018 в 03:14
  • 3
    Спасибо, Себастьян. Однако я уже принял ответ pim, который работал безупречно, поэтому я могу двигаться дальше, не играя с ним больше. – Nick Rice 5 May 2018 в 03:25
  • 4
    @NickRice Нет проблем с этим, но, возможно, другие хотят попробовать – Sebastian Stark 5 May 2018 в 04:19
  • 5
    Да, конечно, Себастьян. Сначала я попробовал свой ответ, потому что это был самый простой, и если все, что ему нужно, это добавленный начальный шаг, тогда он очень хороший. – Nick Rice 5 May 2018 в 10:41

Это будет не так просто, как отредактировать файл hosts. У вас есть несколько вариантов:

Этот прокси-сервер python DNS, который будет обрабатывать подстановочные знаки в / etc / hosts

Этот прокси-сервер python

0
ответ дан 17 July 2018 в 15:43

Сначала убедитесь, что в /etc/NetworkManager/NetworkManager.conf следующая строка отсутствует или закомментирована:

dns=dnsmasq

Перезапустить NetworkManager:

sudo systemctl restart NetworkManager

Убедитесь, что dnsmasq, управляемый NetworkManager

Затем установите dnsmasq:

sudo apt install dnsmasq

Добавьте в /etc/dnsmasq.d/example.com следующее:

address=/example.com/127.0.0.1 . ]

Перезагрузите dnsmasq:

sudo systemctl restart dnsmasq

Теперь вы должны иметь переопределитель dns для example.com.

0
ответ дан 17 July 2018 в 15:43

Это будет не так просто, как отредактировать файл hosts. У вас есть несколько вариантов:

Этот прокси-сервер python DNS, который будет обрабатывать подстановочные знаки в / etc / hosts

Этот прокси-сервер python

0
ответ дан 23 July 2018 в 16:41
  • 1
    Благодарю. Ваша ссылка на вопрос DNSmasq - это то, что я делаю в 14.04. Просто делать то же самое в новой установке 18.04 не работает из-за конфликта портов. Поэтому из коробки нужно что-то еще делать по сравнению с этим. Рассматривая весь этот код, необходимый для прокси-сервера python, я не могу поверить всему, что необходимо. Это было не раньше, чем, я полагаю, для тех, кто настаивал на использовании / etc / hosts. – Nick Rice 5 May 2018 в 00:20
  • 2
    Можете ли вы netstat -tulpn проверить, что использует порт? EDIT: Nevermind, увидел принятый ответ. проблема в systemd-разрешении. – Harikrishnan R 10 May 2018 в 16:16

Сначала убедитесь, что в /etc/NetworkManager/NetworkManager.conf следующая строка отсутствует или закомментирована:

dns=dnsmasq

Перезапустить NetworkManager:

sudo systemctl restart NetworkManager

Убедитесь, что dnsmasq, управляемый NetworkManager

Затем установите dnsmasq:

sudo apt install dnsmasq

Добавьте в /etc/dnsmasq.d/example.com следующее:

address=/example.com/127.0.0.1 . ]

Перезагрузите dnsmasq:

sudo systemctl restart dnsmasq

Теперь вы должны иметь переопределитель dns для example.com.

0
ответ дан 23 July 2018 в 16:41
  • 1
    Я не мог заставить это работать. Сразу после чистой минимальной установки (с опцией «удалить диск») sudo apt install dnsmasq дает «не удалось создать прослушивающий сокет для порта 53: адрес уже используется», ошибка. Я все равно продолжал до конца, если последующий шаг разрешил это, но этого не произошло, и это не сработало. – Nick Rice 5 May 2018 в 03:11
  • 2
    Затем dnsmasq, запущенный NetworkManager, все еще работает. Поэтому сначала его следует деактивировать, в конце концов убить, и только тогда должен быть установлен пакет dnsmasq. – Sebastian Stark 5 May 2018 в 03:14
  • 3
    Спасибо, Себастьян. Однако я уже принял ответ pim, который работал безупречно, поэтому я могу двигаться дальше, не играя с ним больше. – Nick Rice 5 May 2018 в 03:25
  • 4
    @NickRice Нет проблем с этим, но, возможно, другие хотят попробовать – Sebastian Stark 5 May 2018 в 04:19
  • 5
    Да, конечно, Себастьян. Сначала я попробовал свой ответ, потому что это был самый простой, и если все, что ему нужно, это добавленный начальный шаг, тогда он очень хороший. – Nick Rice 5 May 2018 в 10:41

Другие вопросы по тегам:

Похожие вопросы: