AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / ubuntu / 问题

问题[dnsmasq](ubuntu)

Martin Hope
CodeConnoisseur
Asked: 2020-09-01 06:13:30 +0800 CST

尝试使用 dnsmasq 和网络管理器将 .local 解析为 127.0.0.1

  • 0

我在 ubuntu 20.04 上,我正在尝试在本地开发 php 项目。我想要的是能够批量虚拟主机本地项目,当我创建项目并将其添加.local到项目名称时,始终解析为 127.0.0.1。到目前为止我已经尝试过:

  1. 禁用并停止systemd-resolved。

    sudo systemctl stop systemd-resolved
    sudo systemctl disable systemd-resolved
    
  2. 删除符号链接resolv.conf

    sudo rm /etc/resolv.conf
    
  3. 在其中创建了一个新resolv.conf文件/etc/并添加了nameserver 8.8.8.8

  4. 已安装dnsmasq

  5. 在/etc/NetworkManager/NetworkManager.conf我有以下内容:

    [main]
    dns=dnsmasq
    plugins=ifupdown,keyfile
    
    [ifupdown]
    managed=false
    
    [device]
    wifi.scan-rand-mac-address=no
    
  6. 在/etc/NetworkManager/dnsmasq.d我创建了一个local.conf文件,其中包含:

    address=/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          

根据 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
network-manager dns apache2 dnsmasq
  • 2 个回答
  • 583 Views
Martin Hope
kamsiinov
Asked: 2020-05-27 06:07:21 +0800 CST

安装后 Ubuntu 18.04 缺少 dnsmasq 服务

  • 0

我刚刚在 Azure 上部署了全新的 Ubuntu 18.04。安装 dnsmasq 并注意到它完全缺少服务文件。守护进程本身运行良好,但我希望它在启动时启动。我怎么能做到这一点?

dnsmasq azure
  • 1 个回答
  • 885 Views
Martin Hope
Turnip Wizard
Asked: 2019-09-03 09:03:46 +0800 CST

在 18.04 中将主机添加到主机文件会破坏 DNS,但在 16.04 中不会

  • 1

编辑

我设法找出了我所缺少的东西,这清楚地表明了如何解决我的问题。事实证明,在 16.04 和 18.04 之间,Ubuntu 和衍生产品从基于 dnsmasq 的东西默认切换到基于 systemd-resolved 的东西,并且 systemd-resolved 比 dnsmasq 更不愿意承受/etc/hosts.

下面是我试图描述的原始问题,我只是在编辑页面上添加这个关于这里有答案的问题,因为我认为我应该修复标签以更好地反映结果相关组件。


原帖

所以,我最近从 xenial (16.04) 转移到了仿生 (18.04),并且我在解决至少我认为有解决方案的问题方面取得了很大的成功。我想我要归结为最后一件事,这不是我希望的那样,我希望有一个解决办法。

在 16.04 中,我曾经有一个很长的主机文件,甚至无法加载已知的恶意站点。它对我来说效果很好,如果有任何问题,我可以检查相关域是否存在,检查它是如何到达那里的,并自行决定是否将其取消列入黑名单。

我试图从带有 16.04 的旧驱动器中迁移我的主机文件,但突然之间什么都加载不出来,所以我不得不恢复。在比较了一下之后,我发现了一个微小的差异(我的新主机文件包括我的计算机主机名的两个版本,一个以“.lan”结尾)并尝试纠正它以查看它是否可以解决问题。没有骰子。

我可以将项目添加到列表中,如果我复制我的域候选列表,我只是不想加载那些被阻止的好,但是当我添加曾经工作的大量列表时,它似乎使 DNS 永远占用并且永远不会解决任何问题. 这是我几天前以同样方式添加的主机列表。

我最好的想法是从哪里开始尝试进一步研究 xenial 和 bionic 之间的网络发生的任何变化(我不得不重新控制我的现代 eth0 名称,因为一些新的东西试图自动-管理它),但我什至花了一些时间才找到成功让我重新控制有线网络的指南,老实说,我什至不确定更改的整个范围是什么。

有没有其他人使用主机文件来阻止一堆域并碰巧知道这里发生了什么?是否有一些设置更改了默认设置并影响主机文件解析,我需要将其设置为旧设置或其他什么?我会对文件本身更加怀疑,但它在 xenial 下工作得很好,这让我相当确定仿生的变化是相关的,而不仅仅是主机文件本身是错误的(或者如果是,它是错误的一种在历史上一直有效的方式,我一直在使用相同的来源)。

dns hosts dnsmasq systemd-resolved 18.04
  • 1 个回答
  • 1231 Views
Martin Hope
crusy
Asked: 2019-08-12 23:01:11 +0800 CST

如何在没有 netstat 的情况下查看 dnsmasq 正在监听的地址

  • 0

我曾经运行过sudo netstat -tulpen | grep dnsmasq,但是 netstat 已经过时了。这个答案说可以ss用作替代方案,但我无法获得所需的输出。即ss -ltu | grep dnsmasq不打印任何东西,尽管 dnsmasq 显然正在运行(我的域得到解决)。

可以用ss查看dnsmasq的监听地址吗?如果是这样:如何?如果不是:netstat 的未弃用替代方案是什么?

dns dnsmasq netstat
  • 1 个回答
  • 920 Views
Martin Hope
Pritzl
Asked: 2019-07-08 10:03:11 +0800 CST

使用 dnsmasq 将 DNS 请求转发到跳转服务器失败

  • 1

我的目标是将某些与工作相关的主机的 DNS 请求转发到能够解析这些请求的跳转服务器。

我在本地映射53了跳转服务器上的端口5353,如下所示:

ssh -L 5353:localhost:53 pritzl@jump

在本次会议中,我能够nslookup server.work。现在我希望能够在家里的机器上做同样的事情。

我配置dnsmasq.conf如下/etc/NetworkManager/dnsmasq.d/dnsmasq.conf:

server=/google.com/1.1.1.1
server=/server.work/127.0.0.1#5353

然后,我重新启动了网络管理器:service network-manager restart.

现在,让我们测试一下:

  • 对于google.com,我得到:
pritzl@pritzl-vault:~$ nslookup google.com
Server:     127.0.1.1
Address:    127.0.1.1#53

Non-authoritative answer:
Name:   google.com
Address: 172.217.17.78
  • 对于server.work,我得到:
pritzl@pritzl-vault:~$ nslookup server.work
;; connection timed out; no servers could be reached
  • 对于server-2.work,我立即得到:
pritzl@pritzl-vault:~$ nslookup server-2.work
Server:     127.0.1.1
Address:    127.0.1.1#53

** server can't find server-2.work: NXDOMAIN

(关于后者,我想这是有道理的,因为我的 ISP 的 DNS 不知道server-2.work,并且可以立即响应。我想我应该更改 mydnsmasq.conf以包含来自 的所有内容*.work,但这是一个很好的限制性测试。)

出了点问题,但我不知道是什么。我该如何继续?

附加信息

我也尝试设置server=/google.com/127.0.0.1#5353,dnsmsaq.conf然后nslookup google.com不再工作(除了没有任何工作的结论,不仅仅是与工作相关的主机)。我不确定这究竟意味着什么,但我认为在此处添加这是一个有趣的测试。

networking ssh dns dnsmasq 16.04
  • 1 个回答
  • 328 Views
Martin Hope
J. le Roux
Asked: 2018-11-30 04:50:29 +0800 CST

如何更改 systemd 服务的启动顺序

  • 5

我正在运行的家庭网络上的 Ubuntu 18.04 服务器
:

  • 用于 DHCP 和 DNS 的 dnsmasq
  • nginx 作为某些 Web 应用程序的反向代理(在 localhost 和其他主机上运行)

nginx 反向代理配置使用主机名,例如:

location / {
        proxy_pass http://nas.mydomain.com:8080;

但是,当重新启动服务器时,nginx 尝试启动但由于无法解析其配置中的主机名而失败。如果我在启动后手动启动 nginx,它启动时不会出错。

这让我相信 nginx 在 dnsmasq 可用于解析主机名之前启动。

有没有办法强制 nginx 在 dnsmasq 之后启动?

server systemd nginx dnsmasq
  • 1 个回答
  • 3248 Views
Martin Hope
Phil
Asked: 2018-11-15 23:32:17 +0800 CST

带有 dnsmasq 的主服务器 DNS

  • 0

在这里用 dnsmasq 设置 DNS 和 DHCP 以及用 netplan 做事的新方法来拉我的头发几天。

WAN-router is on 192.168.0.1 - works fine

LAN-router is on 192.168.1.1 - DHCP works fine, handing out 192.168.1.x addresses as it should. Can ping google.com

Client laptop is on 192.168.1.181 - Gets IP, can ping LAN-router, can ping IP addresses directly (such as 8.8.8.8) but traceroute and DNS does not work

这是我的 dnsmasq 配置:

bogus-priv
strict-order
filterwin2k
expand-hosts
domain=home
no-resolv
listen-address=127.0.0.1
listen-address=192.168.1.1
#DHCP range
dhcp-range=192.168.1.1,192.168.1.254,72h
dhcp-option=option:router,192.168.0.1

# Upstream name servers
server=192.168.0.1
server=8.8.4.4
server=8.8.8.8

dnsmasq 状态,启动正常:

Nov 15 06:54:17 router systemd[1]: Starting dnsmasq - A lightweight DHCP and caching DNS server...
Nov 15 06:54:17 router dnsmasq[2000]: dnsmasq: syntax check OK.
Nov 15 06:54:17 router dnsmasq[2030]: started, version 2.79 cachesize 150
Nov 15 06:54:17 router dnsmasq[2030]: compile time options: IPv6 GNU-getopt DBus i18n IDN DHCP DHCPv6 no-Lua TFTP conntrack ipset auth DNSSEC loop-detect inotify
Nov 15 06:54:17 router dnsmasq-dhcp[2030]: DHCP, IP range 192.168.1.1 -- 192.168.1.254, lease time 3d
Nov 15 06:54:17 router dnsmasq[2030]: using nameserver 8.8.8.8#53
Nov 15 06:54:17 router dnsmasq[2030]: using nameserver 8.8.4.4#53
Nov 15 06:54:17 router dnsmasq[2030]: using nameserver 192.168.0.1#53
Nov 15 06:54:17 router dnsmasq[2030]: read /etc/hosts - 7 addresses
Nov 15 06:54:17 router systemd[1]: Started dnsmasq - A lightweight DHCP and caching DNS server.

ip地址显示:

2: enp1s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 00:e8:4c:68:61:52 brd ff:ff:ff:ff:ff:ff
    inet 192.168.0.205/24 brd 192.168.0.255 scope global dynamic enp1s0
       valid_lft 1962sec preferred_lft 1962sec
    inet6 fe80::2e8:4cff:fe68:6152/64 scope link
       valid_lft forever preferred_lft forever
3: enp2s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 00:e8:4c:68:61:53 brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.1/24 brd 192.168.1.255 scope global enp2s0
       valid_lft forever preferred_lft forever
    inet6 fe80::2e8:4cff:fe68:6153/64 scope link
       valid_lft forever preferred_lft forever

网络计划-yaml:

network:
    renderer: networkd
    ethernets:
        enp1s0:
            addresses: []
            dhcp4: true
        enp2s0:
            addresses: [192.168.1.1/24]
            gateway4: 192.168.0.1
            dhcp4: false
            nameservers:
              search: [home]
              addresses: [192.168.0.1,8.8.8.8,8.8.4.4]
    version: 2

我敢肯定,我一直把它弄糊涂了。有一段时间,我能够从客户端笔记本电脑解析名称,但无法进行实际的数据传输,因此实际上无法真正访问互联网。

这对我来说有点新,所以会很感激任何指针。

networking dns dnsmasq 18.04 netplan
  • 1 个回答
  • 1494 Views
Martin Hope
flomei
Asked: 2018-10-20 12:06:39 +0800 CST

使用 dnsmasq 打破了挖掘等等

  • 1

我正在尝试dnsmasq在 Ubuntu 18.10 上设置为地址解析器。

到目前为止,我禁用systemd-resolved了默认解析器并引入dnsmasq了。运行netstat -tulpn显示以下内容:

> sudo netstat -tulpn
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 0.0.0.0:53              0.0.0.0:*               LISTEN      31609/dnsmasq       
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      561/sshd            
tcp        0      0 0.0.0.0:443             0.0.0.0:*               LISTEN      4614/openvpn        
tcp6       0      0 :::53                   :::*                    LISTEN      31609/dnsmasq       
tcp6       0      0 :::22                   :::*                    LISTEN      561/sshd            
udp        0      0 0.0.0.0:53              0.0.0.0:*                           31609/dnsmasq       
udp        0      0 XXX.XXX.XX.XX:YY        0.0.0.0:*                           440/systemd-network 
udp6       0      0 :::53                   :::*                                31609/dnsmasq

到目前为止,我认为这很好,因为现在dnsmasq正在侦听端口 53。

我的/etc/resolv.conf样子是这样的:

nameserver 127.0.0.1
nameserver 127.0.1.1
nameserver 127.0.0.53

我不确定第二行,但我认为到目前为止也应该没问题。

然而,当我尝试运行时dig,ping连接总是超时:

> dig askubuntu.com

; <<>> DiG 9.11.4-3ubuntu5-Ubuntu <<>> askubuntu.com
;; global options: +cmd
;; connection timed out; no servers could be reached

我在哪里做错了什么,所以我破坏了这些功能?

networking dns dnsmasq 18.10
  • 1 个回答
  • 494 Views
Martin Hope
Ev.
Asked: 2018-09-20 03:15:20 +0800 CST

Dnsmasq 无法解析 Ubuntu 18 客户端上的别名

  • 2

将几台机器从 Ubuntu 16.04 升级到 18.04 让我意识到 Ubuntu 18 无法解析我在 dnsmasq 中配置的别名。

/etc/dnsmasq.conf

[...]
# Include another lot of configuration options.
#conf-file=/etc/dnsmasq.more.conf
#conf-dir=/etc/dnsmasq.d
conf-file=/etc/dnsmasq_alias.conf
[...]

/etc/dnsmasq_alias.conf

# cat dnsmasq_alias.conf 
# Provide an alias for a "local" DNS name. Note that this _only_ works
# for targets which are names from DHCP or /etc/hosts. Give host
# "bert" another name, bertrand
# NOTE: It is important to set FQDN to CNAME: cname=bug.domain.name,bugzilla
cname=ci.company.intranet,git-lab
cname=gitlab.company.intranet,git-lab
cname=invoice.company.intranet,prod-db-inv-01

在 Ubuntu 16 上,如果我 pinggitlab或gitlab.company.intranet它可以正常工作,但如果在 Ubuntu 18 中执行相同操作,则它不会。

由于它一直在 Windows 和 Ubuntu 16.04 服务器上正常工作,我认为这可能与 Ubuntu 的新版本(18.04)有关?

Dnsmasq 在 Ubuntu 16.04 上运行。

dnsmasq 18.04
  • 1 个回答
  • 867 Views
Martin Hope
cmak.fr
Asked: 2018-05-06 07:47:10 +0800 CST

如何添加 dnsmasq 并保持 systemd-resolved(18.04 到 20.04)

  • 14

我想通过 dnsmasq 获得快速的 dns 解析并保持默认的 systemd-resolved。

寻找一种优雅的方式来做到这一点

network-manager dns dnsmasq systemd-resolved
  • 5 个回答
  • 22109 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何运行 .sh 脚本?

    • 16 个回答
  • Marko Smith

    如何安装 .tar.gz(或 .tar.bz2)文件?

    • 14 个回答
  • Marko Smith

    如何列出所有已安装的软件包

    • 24 个回答
  • Marko Smith

    无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗?

    • 25 个回答
  • Martin Hope
    Flimm 如何在没有 sudo 的情况下使用 docker? 2014-06-07 00:17:43 +0800 CST
  • Martin Hope
    Ivan 如何列出所有已安装的软件包 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    La Ode Adam Saputra 无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗? 2010-11-30 18:12:48 +0800 CST
  • Martin Hope
    David Barry 如何从命令行确定目录(文件夹)的总大小? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher “以下软件包已被保留:”为什么以及如何解决? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford 如何删除 PPA? 2010-07-30 01:09:42 +0800 CST

热门标签

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve