English

dnsmasq

轻量级 DNS 转发与 DHCP 服务,可为局域网提供 DNS 解析、缓存与 IP 地址分配,配置简单、资源占用极低。

标签:androidlinuxclinetwork官方网站 ↗源代码 ↗

版本说明:TODO:请补充版本信息与下载链接。

下载 vTODO

使用说明

简介

dnsmasq 是一个轻量级的 DNS 转发器与 DHCP 服务器,常用于路由器、虚拟机与嵌入式设备中,为局域网提供 DNS 解析缓存和 IP 地址分配。Android 设备上也预置了 dnsmasq,常用于热点(Tethering)场景。

常用命令

# 前台启动(打印日志)
dnsmasq -d

# 指定配置读取的额外主机文件
dnsmasq --no-hosts --addn-hosts=/path/to/hosts

# 指定上游 DNS
dnsmasq --server=8.8.8.8 --server=114.114.114.114

# 测试配置文件语法
dnsmasq --test

# 指定日志文件
dnsmasq --log-facility=/var/log/dnsmasq.log

# 指定监听地址与 DHCP 范围
dnsmasq --listen-address=192.168.1.1 --dhcp-range=192.168.1.50,192.168.1.150,12h

常用参数说明

参数 说明
-d 前台运行并打印日志
--server=<ip> 指定上游 DNS 服务器
--no-hosts 不读取系统 /etc/hosts
--addn-hosts=<file> 读取额外主机文件
--dhcp-range=<start>,<end>,<lease> 指定 DHCP 地址范围
--test 校验配置文件
--log-facility=<file> 指定日志文件

注意事项

  • 默认读取 /etc/dnsmasq.conf,也可用 -C <file> 指定配置。
  • 修改配置后需重启 dnsmasq 生效,可用 --test 先校验语法。
  • 与系统自带的 systemd-resolved 等 DNS 服务可能存在端口冲突(53 端口)。