惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

N
News and Events Feed by Topic
D
Docker
云风的 BLOG
云风的 BLOG
F
Fortinet All Blogs
F
Full Disclosure
H
Hackread – Cybersecurity News, Data Breaches, AI and More
P
Proofpoint News Feed
Microsoft Azure Blog
Microsoft Azure Blog
WordPress大学
WordPress大学
The GitHub Blog
The GitHub Blog
L
LangChain Blog
H
Help Net Security
B
Blog
T
Tailwind CSS Blog
V
V2EX
博客园_首页
阮一峰的网络日志
阮一峰的网络日志
人人都是产品经理
人人都是产品经理
The Cloudflare Blog
Recent Announcements
Recent Announcements
aimingoo的专栏
aimingoo的专栏
美团技术团队
A
About on SuperTechFans
C
Cybersecurity and Infrastructure Security Agency CISA
K
Kaspersky official blog
I
InfoQ
Project Zero
Project Zero
I
Intezer
Google DeepMind News
Google DeepMind News
博客园 - 【当耐特】
Hugging Face - Blog
Hugging Face - Blog
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
T
Threat Research - Cisco Blogs
Last Week in AI
Last Week in AI
C
Cyber Attacks, Cyber Crime and Cyber Security
G
GRAHAM CLULEY
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
AWS News Blog
AWS News Blog
Spread Privacy
Spread Privacy
S
Securelist
Recorded Future
Recorded Future
D
Darknet – Hacking Tools, Hacker News & Cyber Security
博客园 - 叶小钗
S
Security Affairs
Blog — PlanetScale
Blog — PlanetScale
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
月光博客
月光博客
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
罗磊的独立博客
The Hacker News
The Hacker News

Rat's Blog - DNS

使用PHPDNS为DNSmasq搭建一个WEB界面 - Rat's Blog 推荐2个国外免费且稳定的域名DNS解析服务商 - Rat's Blog
Linux VPS安装DNSmasq搭建自己的DNS服务器 - Rat's Blog
博主: Rat's · 2017-10-01 · via Rat's Blog - DNS

简介

DNSmasq是一个小巧且方便地用于配置DNSDHCP的工具,适用于小型网络,它提供了DNS功能和可选择的DHCP功能。自己搭建公共DNS更加灵活,如果是在本地搭建,还可以大幅提高解析速度。

安装DNSmasq

可以下载软件包编译安装,不过一般Linux软件仓库已经提供了DNSmasq,相关命令如下:

#centos安装
yum -y install dnsmasq
#如果是ubuntu系统
apt-get -y install dnsmasq

配置DNSmasq

DNSmasq配置文件在/etc/dnsmasq.conf,我们需要修改几个参数,分别为:

  • resolv-file=/etc/resolv.dnsmasq.conf这个参数表示dnsmasq会从这个指定的文件中寻找上游dns服务器。
  • 取消注释的strict-order,表示严格按照resolv-file文件中的顺序从上到下进行DNS解析,
    直到第一个成功解析成功为止。
  • 注释掉no-hosts, 默认情况下这是注释掉的,dnsmasq会首先寻找本地的hosts文件再去寻找缓存下来的域名,最后去上游 dns服务器寻找。
  • 设置listen-address=0.0.0.0, 0.0.0.0改成服务器公网IP

我们来整理下上面我们修改了那些配置内容

#需要新建一个resolv.dnsmasq.conf文件,这个是配置上游DNS,也就是真正的公共DNS
vi /etc/resolv.dnsmasq.conf
#内容如下
nameserver 119.29.29.29
nameserver 1.2.4.8
#修改/etc/dnsmasq.conf
#上游DNS路径
resolv-file=/etc/resolv.dnsmasq.conf
#取消strict-order注释
strict-order
#监听地址0.0.0.0对所有网络有效
listen-address=0.0.0.0

使用方法

DNSmasq可以设置不同的域名指定不同的DNS进行解析,修改/etc/dnsmasq.conf文件即可,若不对域名设置DNS,则从上游DNS获取记录。

#指定淘宝使用114 DNS进行解析
server=/taobao.com/114.114.114.114
#google指定8.8.8.8进行解析
server=/google.com/8.8.8.8

也可以对指定的域名进行解析,相当于就是本地hosts指向,可以利用这个功能实现广告屏蔽等效果。也是需要修改/etc/dnsmasq.conf文件,DNSmasq也可以对域名进行泛解析,填写*.moerats.com,这样的格式即可。

#将广告域名指向到127.0.0.1实现广告屏蔽
address=/ad.youku.com/127.0.0.1
address=/ad.iqiyi.com/127.0.0.1
#对moerats.com进行泛解析
address=/*.moerats.com/132.165.25.188

启动与测试

#启动
/etc/init.d/dnsmasq start
#停止
/etc/init.d/dnsmasq stop
#重新启动
/etc/init.d/dnsmasq restart

比如我在本地一台Linux服务器(192.168.20.127)安装了DNSmasq,并在局域网内其它PCDNS配置为192.168.20.127,使用dig命令进行测试,第一次查询相对较长,第二次几乎再10ms内,如下截图。
请输入图片描述

总结

如果是在内网搭建DNSmasq,不仅可以提高解析速度,还可以有效的防止DNS劫持,实现屏蔽广告等作用。如果是在公网搭建DNSmasq,还可以对指定的域名解析hosts指向,从而避免DNS污染,实现fq

如果您发现DNSmasq启动正常,但就是无法解析,请注意防火墙是否放行tcp/upd 53端口。

文章来源:Linux安装DNSmasq搭建自己的公共DNS


版权声明:本文为原创文章,版权归 Rat's Blog 所有,转载请注明出处!

本文链接:https://www.moerats.com/archives/329/

如教程需要更新,或者相关链接出现404,可以在文章下面评论留言。