Ubuntu 16 搭建的内网 Dnsmasq 缓存服务器一直启动失败

2017-08-06 16:25:32 +08:00
 taobibi
Ubuntu 16.04.3 LTS 安装的 Dnsmasq
配置文件没发现有什么问题
listen-address=192.168.0.4,127.0.0.1
cache-size=1500
no-resolv
no-poll
server=208.67.222.222#5353
server=208.67.222.220#5353
server=/cn/114.114.114.114
server=223.5.5.5
server=180.76.76.76




状态提示

● dnsmasq.service - dnsmasq - A lightweight DHCP and caching DNS server
Loaded: loaded (/lib/systemd/system/dnsmasq.service; enabled; vendor preset:
Drop-In: /run/systemd/generator/dnsmasq.service.d
└─50-dnsmasq-$named.conf, 50-insserv.conf-$named.conf
Active: failed (Result: exit-code) since Sun 2017-08-06 16:21:37 CST; 17s ago
Process: 1646 ExecStart=/etc/init.d/dnsmasq systemd-exec (code=exited, status=
Process: 1642 ExecStartPre=/usr/sbin/dnsmasq --test (code=exited, status=0/SUC

Aug 06 16:21:37 localhost systemd[1]: Starting dnsmasq - A lightweight DHCP and
Aug 06 16:21:37 localhost dnsmasq[1642]: dnsmasq: syntax check OK.
Aug 06 16:21:37 localhost dnsmasq[1646]: dnsmasq: failed to create listening soc
Aug 06 16:21:37 localhost systemd[1]: dnsmasq.service: Control process exited, c
Aug 06 16:21:37 localhost systemd[1]: Failed to start dnsmasq - A lightweight DH
Aug 06 16:21:37 localhost systemd[1]: dnsmasq.service: Unit entered failed state
Aug 06 16:21:37 localhost systemd[1]: dnsmasq.service: Failed with result 'exit-
8445 次点击
所在节点    DNS
17 条回复
Counter
2017-08-06 16:33:50 +08:00
关闭 selinux 再试一下
zent00
2017-08-06 19:12:18 +08:00
@Counter Ubuntu 哪来的时候 SELlinux
zent00
2017-08-06 19:19:23 +08:00
whx20202
2017-08-06 19:19:43 +08:00
failed to create listening soc 谷歌下这一句试试
taobibi
2017-08-06 19:20:17 +08:00
@Counter 乌班图没有关这个的命令?好像也没有这个
whoops
2017-08-06 19:25:32 +08:00
Aug 06 16:21:37 localhost dnsmasq[1646]: dnsmasq: failed to create listening soc
这都报错了,不过没有显示完整
应该是 Aug 06 16:21:37 localhost dnsmasq[1646]: dnsmasq: failed to create listening socket
你直接运行 dnsmasq 看看具体报错内容


或者如果你要监听所有地址把 listen-address=192.168.0.4,127.0.0.1 去掉看看
ETiV
2017-08-06 19:26:25 +08:00
推荐配置文件里
listen-address=0.0.0.0

然后你这问题,先
sudo netstat -lupn
看看有没有 :53 在占用着,有的话,就 kill 掉最后那列的数字部分
再启动 dnsmasq
whoops
2017-08-06 19:28:16 +08:00
才注意到你用的是默认端口,应该是你的权限不够,1024 端口下的需要用 root 权限,所以会报 failed to create listening socket
whoops
2017-08-06 19:37:05 +08:00
具体看报错日志,dnsmasq.service 安装时生成的,应该不是 root 权限问题,
有可能就是三楼给出的链接,端口被占用了
ecutuning
2017-08-06 22:55:26 +08:00
很显然是因为 listen-address 的IP写错了。
taobibi
2017-08-07 17:12:46 +08:00
@whoops 我执行命令前已经 sudo su 了。都是在 root 权限操作的
l 刚刚 isten-address=0.0.0.0 改为试试
taobibi
2017-08-07 17:14:57 +08:00
@whoops 会不会是中文版乌班图的 bug?
taobibi
2017-08-07 17:20:05 +08:00
@ETiV
sudo netstat -lupn
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
udp 0 0 192.168.122.1:53 0.0.0.0:* 2586/dnsmasq
udp 0 0 192.168.122.1:53 0.0.0.0:* 1557/named
udp 0 0 172.19.66.239:53 0.0.0.0:* 1557/named
udp 0 0 127.0.0.1:53 0.0.0.0:* 1557/named
udp 0 0 127.0.0.53:53 0.0.0.0:* 1546/systemd-resolv
udp 0 0 0.0.0.0:67 0.0.0.0:* 2586/dnsmasq
udp 0 0 0.0.0.0:68 0.0.0.0:* 1438/dhclient
udp 0 0 0.0.0.0:5355 0.0.0.0:* 1546/systemd-resolv
udp6 0 0 :::53 :::* 1557/named
udp6 0 0 :::5355 :::* 1546/systemd-resolv


named 怎么卸载掉,好像占用 53 端口了
whoops
2017-08-07 21:30:11 +08:00
@taobibi
named 就是 bind 啊,你 apt-get remove bind9 看看
taobibi
2017-08-08 08:06:13 +08:00
@whoops 非常感谢,原来是这个原因,已经正常了。bind9 我没安装过啊?这个是系统默认的吗?我怕有问题 Ubuntu 还是新装了一场一次
taobibi
2017-08-08 09:46:46 +08:00
@whoops 多问一句,如果局域网内其他电脑要使用这个 DNS,是不是还需要
iptables -t nat
配置?
怎么个写法?
whoops
2017-08-08 21:21:38 +08:00
@whoops 你这种情况在同一个局域网的不需要配置 iptables 规则
bind 是好多 linux 默认的域名服务程序,安装的时候不选不会安装的,如果安装了卸载掉就是了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/380823

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX