dnsmasq配置域名重定向和dns缓存

1. dnsmasq简介

DNSmasq是一个小巧且方便地用于配置DNS和DHCP的工具,它提供了DNS功能和可选择的DHCP功能,它服务那些只在本机和局域网可用的域名,这些域名是不会在全球的DNS服务器中出现的,既不能通过外网访问。本文主要实现:使用dnsmasq通过缓存来加速dns解析,提高上网速度,以及比hosts更强大的域名重定向功能,为在本机测试二级域名提供了很大的方便。

2. dnsmasq安装
1
sudo apt-get install dnsmasq
3. dnsmasq配置

(1)dnsmasq的配置文件为/etc/dnsmasq.conf,编辑该文件,添加:
listen-address=127.0.0.1
cache-size=150
(2)添加新的DNS服务器

1
sudo vim /etc/resolv .conf

最上面添加 nameserver 127.0.0.1
就可以使用127.0.0.1即本地的dnsmasq作为dns服务器了。dnsmasq默认会使用/etc/resolv.conf中的nameserver来作为自己的上游dns服务器,你也可以自己指定dns服务器,
(3)用dnsmasq代替hosts文件
普通hosts文件配置很方便,但是不支持通配符,像*.app.com 192.168.x.x是不可以的,但dnsmasq是支持的,编辑dnsmasq.conf,添加:address=/.tuli.com/192.168.x.x

4. 启动,重启,终止dnsmasq
1
2
3
sudo /etc/init .d / dnsmasq start
sudo /etc/init .d / dnsmasq stop
sudo /etc/init .d / dnsmasq restart
5. 测试重定向

打开浏览器,输入www.app.com alexzhou.app.com xxx.app.com等,结合nginx做反向代理就可以成功的打开应用了。

6. 测试dns缓存
1
2
3
4
5
6
7
8
9
10
11
12
13
dig www.google.com
......
;; Query time : 205 msec
;; SERVER: 127.0.0.1 #53(127.0.0.1)
;; WHEN: Thu Aug 16 13:39:03 2012
;; MSG SIZE  rcvd: 478
 
dig www.google.com
......
;; Query time : 0 msec
;; SERVER: 127.0.0.1 #53(127.0.0.1)
;; WHEN: Thu Aug 16 13:39:07 2012
;; MSG SIZE  rcvd: 46

第一次Query time:205毫秒,第二次0毫秒,dns解析速度明显提升。
ps:dig命令是一个用于查询 DNS 域名服务器的工具,它执行 DNS 搜索,显示从受请求的域名服务器返回的信息,在 unix 和 linux 下,建议使用 dig 命令来代替 nslookup。

Dnsmasq是一个轻量级的DNS和DHCP服务器软件,它可以作为本地DNS缓存服务器来使用。使用Dnsmasq作为DNS缓存服务器可以提高DNS解析速度,并减少网络带宽的使用。以下是如何在Linux系统中使用Dnsmasq作为DNS缓存服务器的步骤: 1. 安装Dnsmasq软件 在Ubuntu系统中,可以使用以下命令安装Dnsmasq软件: ``` sudo apt-get install dnsmasq ``` 2. 配置Dnsmasq 打开Dnsmasq配置文件`/etc/dnsmasq.conf`,添加以下配置内容: ``` # Listen on the local interface only interface=lo # Never forward plain names (without a dot or domain part) domain-needed # Never forward addresses in the non-routed address spaces bogus-priv # Enable DNS caching cache-size=1000 # DNS servers to use server=8.8.8.8 server=8.8.4.4 ``` 以上配置中,`interface`指定Dnsmasq监听的网络接口,这里设置为本地回环接口`lo`;`domain-needed`指定不转发没有域名部分的请求;`bogus-priv`指定不转发本地地址和私有地址空间的请求;`cache-size`指定DNS缓存大小;`server`指定要使用的DNS服务器地址,这里使用Google的公共DNS服务器。 3. 重启Dnsmasq服务 执行以下命令重启Dnsmasq服务: ``` sudo systemctl restart dnsmasq ``` 4. 修改本地DNS解析配置 打开`/etc/resolv.conf`文件,将其中的DNS服务器地址修改为`127.0.0.1`,即本地Dnsmasq服务的地址。 现在,Dnsmasq已经作为本地DNS缓存服务器启用了,可以根据需要自行修改Dnsmasq配置文件来进行更多的配置
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值