当前位置: 首页 > 工具软件 > Dnsmasq > 使用案例 >

docker部署dnsmasq

魏学智
2023-12-01

一、概述

DNSmasq是一个小巧且方便地用于配置DNS和DHCP的工具,适用于小型网络,它提供了DNS功能和可选择的DHCP功能。它服务那些只在本地适用的域名,这些域名是不会在全球的DNS服务器中出现的。DHCP服务和DNS服务结合,并且允许DHCP分配的地址能在DNS中正常解析,而这些DHCP分配的地址和相关命令可以配置到每台主机中,也可以配置到一台核心设备中(比如路由器),DNSmasq支持静态和动态两种DHCP配置方式。

二、安装

环境说明

操作系统:centos 7.6
docker版本:20.10.5
ip地址:192.168.25.114

下载镜像

	docker pull jpillora/dnsmasq

配置文件
新建配置文件

	mkdir -p /data/images/dns
	vi /data/images/dns/dnsmasq.conf

内容如下

	#dnsmasq config, for a complete example, see:
	#http://oss.segetech.com/intra/srv/dnsmasq.conf
	#不加载本地的 /ettc/hosts文件
	no-hosts
	#本地缓存时间
	local-ttl=3600
	#另一个DNS服务地址
	server=192.168.250.1
	#开启日志选项
	log-queries
	#异步log,缓解阻塞,提供性能
	log-async=100
	#最大缓存条数
	cache-size=1000000
	#DNS转发最大值
	dns-forward-max=1000000
	#需局解析的域名配置
	address=/paas.bkwanwei.com/192.168.104.248
	address=/cmdb.bkwanwei.com/192.168.104.248
	address=/job.bkwanwei.com/192.168.104.248
	address=/jobapi.bkwanwei.com/192.168.104.248
	address=/nodeman.bkwanwei.com/192.168.104.249

编辑容器启动文件

   vim /data/images/dns/start.sh
   chmod +x start.sh

内容如下

docker run \
--name dnsmasq \
-d -p 53:53/udp \
-p 8080:8080 \
-v /data/images/dns/dnsmasq.conf:/etc/dnsmasq.conf \
--log-opt "max-size=100m" \
-e "HTTP_USER=admin" \
-e "HTTP_PASS=W@gs2021*" \
--restart always \
jpillora/dnsmasq

web登录
http://192.168.25.114:8080/

三、测试

本地配置DNS:192.168.25.114

#nslookup paas.bkwanwei.com 
Server:		192.168.25.114
Address:	192.168.25.114#53

Name:	paas.bkwanwei.com
Address: 192.168.104.248

解析正常。

 类似资料: