启动或重启 dnsmasq 提示端口 53 被占用的解决方案
前言
Linux 开启热点需要使用 dnsmasq 服务,而这个服务使用 53 端口。但是 53 端口可能被占用,这是 dnsmasq 就会报错:
failed to create listening socket for port 53: 地址已在使用
下面给出该错误的解决方案。
查看占用端口情况
-
终端命令查看端口占用:
sudo netstat -anlp | grep -w LISTEN
可以看到:
...... tcp 0 0 127.0.0.53:53 0.0.0.0:* LISTEN 735/systemd-resolved ...... tcp6 0 0 :::53 :::* LISTEN 735/systemd-resolved
停用占用 53 端口的服务
-
停用 systemd-resolved 服务。
- 不一定是 systemd-resolved 服务,请根据自身情况进行修正。
sudo systemctl stop systemd-resolved
-
编辑 /etc/systemd/resolved.conf 文件。
sudo vim /etc/systemd/resolved.conf
-
修改文件中,
[Resolve]
部分。[Resolve] DNS=8.8.8.8 #取消注释,增加dns #FallbackDNS= #Domains= #LLMNR=no #MulticastDNS=no #DNSSEC=no #Cache=yes DNSStubListener=no #取消注释,把yes改为no
-
创建修改文件链接。
sudo ln -sf /run/systemd/resolve/resolv.conf /etc/resolv.conf
-
已经解除了 53 端口的占用。