Пытаюсь разрешить .local в 127.0.0.1 с помощью dnsmasq и Network Manager

Я использую ubuntu 20.04 и пытаюсь разрабатывать php-проекты локально. Я хочу иметь возможность массово размещать локальные проекты виртуального хоста, и когда я создаю проект и добавляю .local к имени проекта, всегда принимаю разрешение 127.0.0.1. Что я пробовал до сих пор:

  1. Отключить и остановить systemd-resolved .

     sudo systemctl stop systemd-resolved
    sudo systemctl отключить systemd-resolved
     
  2. Удалить символическую ссылку resolv.conf

     sudo rm /etc/resolv.conf
     
  3. Создан новый файл resolv.conf в / etc / и добавлен сервер имен 8.8.8.8

  4. Установлен dnsmasq

  5. В /etc/NetworkManager/NetworkManager.conf У меня есть следующее:

      [основной]
    dns = dnsmasq
    plugins = ifupdown, keyfile
    
     [ifupdown]
    управляемый = ложный
    
     [устройство]
    wifi.scan-rand-mac-address = нет
     
  6. В /etc/NetworkManager/dnsmasq.d я создал файл local.conf , который имеет:

     адрес = / local / 127.0.0.1
     
  7. Перезагрузите сетевой менеджер, но каждый раз, когда я это делаю, он сбрасывает мой resolv.conf на 127.0.1.1 , поэтому мне нужно сбросить сервер имен на 8.8. 8.8 .

Вывод sudo netstat -anlp | grep 53

tcp        0      0 0.0.0.0:53              0.0.0.0:*               LISTEN      39737/dnsmasq       
tcp6       0      0 :::53                   :::*                    LISTEN      39737/dnsmasq       
tcp6       0      0 2600:8800:86ac:2::53030 2606:4700::6810:5f4:443 ESTABLISHED 4802/chrome --type= 
tcp6       0      0 2600:8800:86ac:2::53936 2a04:fa87:fffe::c00:443 ESTABLISHED 4802/chrome --type= 
tcp6       0      0 2600:8800:86ac:2::57530 2600:1f1c:a99:832c::443 ESTABLISHED 4802/chrome --type= 
udp        0      0 0.0.0.0:53              0.0.0.0:*                           39737/dnsmasq       
udp        0      0 224.0.0.251:5353        0.0.0.0:*                           4759/chrome         
udp        0      0 224.0.0.251:5353        0.0.0.0:*                           4802/chrome --type= 
udp        0      0 0.0.0.0:5353            0.0.0.0:*                           1109/avahi-daemon:  
udp6       0      0 :::53                   :::*                                39737/dnsmasq       
udp6       0      0 2600:8800:86ac:2::35397 2607:f8b0:4007:803::443 ESTABLISHED 4802/chrome --type= 
udp6       0      0 2600:8800:86ac:2::53965 2607:f8b0:400e:c09::443 ESTABLISHED 4802/chrome --type= 
udp6       0      0 :::5353                 :::*                                1109/avahi-daemon:  
udp6       0      0 2600:8800:86ac:2::38534 2607:f8b0:4007:80f::443 ESTABLISHED 4802/chrome --type= 
unix  2      [ ACC ]     STREAM     LISTENING     75311    3037/Xorg            @/tmp/.X11-unix/X0
unix  2      [ ACC ]     STREAM     LISTENING     75312    3037/Xorg            /tmp/.X11-unix/X0
unix  2      [ ACC ]     STREAM     LISTENING     40653    1386/mysqld          /var/run/mysqld/mysqlx.sock
unix  3      [ ]         STREAM     CONNECTED     970535   44951/chrome --type  
unix  3      [ ]         STREAM     CONNECTED     21922    531/systemd-udevd    
unix  3      [ ]         STREAM     CONNECTED     805753   2900/pulseaudio      /run/user/1000/pulse/native
unix  3      [ ]         STREAM     CONNECTED     164653   7749/gdm-session-wo  
unix  3      [ ]         STREAM     CONNECTED     970534   4759/chrome          
unix  3      [ ]         STREAM     CONNECTED     84953    3037/Xorg            @/tmp/.X11-unix/X0
unix  3      [ ]         STREAM     CONNECTED     129536   4952/chrome --type=  
unix  3      [ ]         STREAM     CONNECTED     129538   4759/chrome          
unix  3      [ ]         STREAM     CONNECTED     129535   4759/chrome          
unix  3      [ ]         STREAM     CONNECTED     81853    3294/ibus-daemon     
unix  3      [ ]         STREAM     CONNECTED     109534   4073/gnome-terminal  
unix  2      [ ]         DGRAM                    21931    531/systemd-udevd    
unix  3      [ ]         STREAM     CONNECTED     88353    3434/dconf-service   
unix  3      [ ]         STREAM     CONNECTED     129539   4957/chrome --type=  
unix  3      [ ]         STREAM     CONNECTED     129153   1/init               /run/systemd/journal/stdout
unix  3      [ ]         STREAM     CONNECTED     83553    3393/ibus-engine-si  
unix  3      [ ]         DGRAM                    21933    531/systemd-udevd    
unix  3      [ ]         STREAM     CONNECTED     97533    3622/evolution-sour  
unix  3      [ ]         STREAM     CONNECTED     89353    3600/gnome-shell-ca  
unix  3      [ ]         DGRAM                    21934    531/systemd-udevd    
unix  3      [ ]         SEQPACKET  CONNECTED     130853   4759/chrome          
unix  3      [ ]         STREAM     CONNECTED     83353    1/init               /run/systemd/journal/stdout
unix  3      [ ]         STREAM     CONNECTED     132553   4611/update-notifie  
unix  3      [ ]         STREAM     CONNECTED     39532    1903/rtkit-daemon    
unix  3      [ ]         STREAM     CONNECTED     100532   2906/dbus-daemon     /run/user/1000/bus
unix  3      [ ]         STREAM     CONNECTED     868534   2900/pulseaudio      /run/user/1000/pulse/native
unix  3      [ ]         STREAM     CONNECTED     35395    1456/kerneloops      
unix  3      [ ]         STREAM     CONNECTED     28453    1114/dbus-daemon     /run/dbus/system_bus_socket
unix  3      [ ]         STREAM     CONNECTED     100653   3660/gsd-media-keys  
unix  3      [ ]         STREAM     CONNECTED     35396    1458/kerneloops      
unix  3      [ ]         STREAM     CONNECTED     93535    3622/evolution-sour  
unix  3      [ ]         STREAM     CONNECTED     708953   4759/chrome          
unix  3      [ ]         STREAM     CONNECTED     100530   2906/dbus-daemon     /run/user/1000/bus
unix  3      [ ]         STREAM     CONNECTED     35394    1421/whoopsie        
unix  3      [ ]         STREAM     CONNECTED     968853   1989/master          

Per Brian Turek Я запустил dnsmasq, затем перезагрузил NetoworkManager.service, затем выполнил ps aux | grep dnsmasq , и это результат:

nobody    103697  0.0  0.0  14776  4264 ?        S    06:12   0:00 /usr/sbin/dnsmasq --no-resolv --keep-in-foreground --no-hosts --bind-interfaces --pid-file=/run/NetworkManager/dnsmasq.pid --listen-address=127.0.1.1 --cache-size=0 --clear-on-reload --conf-file=/dev/null --proxy-dnssec --enable-dbus=org.freedesktop.NetworkManager.dnsmasq --conf-dir=/etc/NetworkManager/dnsmasq.d
paul    103707  0.0  0.0   9028   676 pts/0    S+   06:12   0:00 grep --color=auto --exclude-dir=.bzr --exclude-dir=CVS --exclude-dir=.git --exclude-dir=.hg --exclude-dir=.svn --exclude-dir=.idea --exclude-dir=.tox dnsmasq
0
задан 1 September 2020 в 16:14

2 ответа

Я думаю, что NetworkManager работает должным образом. NetworkManager предположительно запускает экземпляр DNSmasq и настраивает ваш компьютер на его использование для разрешения DNS-адреса (таким образом изменяя /etc/resolv.conf).

Я думаю, вы хотите добавить server = 8.8.8.8 в ваш /etc/NetworkManager/dnsmasq.d/local.conf , а также no-resolv . Это должно привести к тому, что DNSmasq будет использовать Google в качестве восходящего DNS, а ваш компьютер будет использовать DNSmasq в качестве локального преобразователя.

1
ответ дан 4 January 2021 в 08:23

В ответ на этот вопрос заслуга Брайана Турека. Оказывается, мне пришлось отключить dnsmasq sudo systemctl stop dnsmaq.service , а затем перезапустить решение systemd, поскольку NetworkManager запускал собственный экземпляр dnsmasq. Затем, чтобы получить все мои локальные проекты в папке / home / projects / www / , мне пришлось отключить все текущие сайты с поддержкой сайтов, найденные в / etc / apache2 / с поддержкой сайтов . 000.default.conf препятствовал правильной загрузке любых других сайтов.

0
ответ дан 4 January 2021 в 08:23

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

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