DNS域名服务

DNS服务器分类

缓存域名服务器

  1. 也称为高速缓存服务器
  2. 通过向其他域名服务器查询获得域名 -> IP 地址记录
  3. 将域名查询结果缓存到本地,提高重复查询时的速度

主域名服务器

  1. 特定 DNS 区域的官方服务器,具有唯一性
  2. 负责维护该区域内所有域名 -> IP 地址的映射记录

从域名服务器

  1. 也称为辅助域名服务器
  2. 其维护的域名 -> IP 地址记录来源于主域名服务器

搭建DNS服务器

安装软件

[root@wpt ~]# yum install bind bind-chroot bind-utils -y

配置文件介绍

使用BIND软件构建域名服务是,主要涉及两种类型的配置文件:主配置文件和区域数据文件。其中,主配置文件用于设置named服务的全局选项、注册区域及访问控制等各种运行参数;区域数据文件用于保存 DNS 解析记录的数据文件(正向或反向记录)。
BIND配置文件保存在两个位置:
/etc/named.conf BIND服务主配置文件
/var/named/ zone文件(域的dns信息)
如果安装了bind-chroot,BIND会被封装到一个伪根目录内,原先的文件配置文件的路径位置变为:
/var/named/chroot/etc/named.conf ----BIND服务主配置文件
/var/named/chroot/var/named/ ---------zone文件

复制配置相关文件


[root@wpt ~]# cp -rv /usr/share/doc/bind-9.11.4/sample/etc/* /var/named/chroot/etc/
[root@wpt ~]#  cp -rv /usr/share/doc/bind-9.11.4/sample/var/* /var/named/chroot/var/bind-chroot安装好之后不会有预制的配置文件,但是在BIND的文档文件夹内(/usr/share/doc/bind-9.11.4),BIND为我们提供了配置文件模板,我们可以直接拷贝过来:
# 拷贝bind相关文件,准备 bind chroot 环境
cp -R /usr/share/doc/bind-*/sample/var/named/* /var/named/chroot/var/named/# 将 /etc/named.conf 拷贝到 bind chroot目录
# -p 复制后目标文件保留源文件的属性 (包括所有者、所属组、权限和时间)
cp -p /etc/named.conf /var/named/chroot/etc/named.conf# 在 bind chroot 的目录中创建相关文件
touch /var/named/chroot/var/named/data/cache_dump.db
touch /var/named/chroot/var/named/data/named_stats.txt
touch /var/named/chroot/var/named/data/named_mem_stats.txt
touch /var/named/chroot/var/named/data/named.run
mkdir /var/named/chroot/var/named/dynamic# 修改文件属主和属组
chown -R named:named /var/named/chroot/var/named# 启动服务
systemctl start named-chroot

构建缓存域名服务器

案例介绍

  • 缓存域名服务器的IP地址为192.168.142.128。
  • ​ 局域网内的PC机将首选DNS服务器设为192.168.142.128。
  • 缓存域名服务器能够访问Internet中的其他DNS服务器。
  • ​ 负责处理局域网PC机的DNS解析请求,并缓存查询结果。

基本步骤:

​ 1.建立named.conf主配置文件,通过根域或者转发器机制指定解析源;
​ 2.确认建立named.ca根区域数据文件,若使用转发器机制则无需此步骤;
​ 3.启动named服务;
​ 4.验证缓存域名服务器;

实现方案

### 1.修改主配置文件
[root@wpt ~]# vim /var/named/chroot/etc/named.conf# 指定数据文件的存放目录 默认无需修改
directory   "/var/named";# 指定服务器监听的地址和端口
listen-on port 53       { 127.0.0.1; 192.168.142.128; };# 指定允许内网网段地址主机可以查询授权区域数据
allow-query                 { 192.168.142.0/24; };# 哪些主机查询非授权区域记录时,为其做递归
allow-query-cache       { 192.168.142.0/24; };# 开启递归 默认为开启
# 如果你要建立一个 授权域名服务器 服务器, 那么不要开启 recursion(递归) 功能。
# 如果你要建立一个 递归 DNS 服务器, 那么需要开启recursion 功能。
# 如果你的递归DNS服务器有公网IP地址, 你必须开启访问控制功能,
# 只有那些合法用户才可以发询问. 如果不这么做的话,那么你的服
# 服务就会受到DNS 放大攻击。实现BCP38将有效抵御这类攻击。
recursion yes;########################使用转发器#################################
# 如果不使用根区域,也可以选择设置转发器,即可以指向另外一个DNS服务器。
# forward 可以是first,也可以是only
# forward first设置优先使用forwarders DNS服务器做域名解析,如果查询不到再使用本地DNS服务器做域名解析。
# forward only设置只使用forwarders DNS服务器做域名解析,如果查询不到则返回DNS客户端查询失败。# 在 options{}; 中加入以下内容
# forward only;
# forwarders {8.8.8.8};
##################################################################### 2. 配置根区域 这样服务器不知道域名记录时,就去找根DNS服务器 在区域文件目录中必须存在"/var/named/named.ca"这个文件,里面记录了根DNS服务器的地址(共13个)
cat /var/named/chroot/var/named/named.ca | grep -v '^;'|grep -v '^$'### 3.检查配置文件语法
named-checkconf /var/named/chroot/etc/named.conf### 180错误解决
dnssec-keygen -a HMAC-MD5 -b 128 -n HOST "test_key"
[root@localhost ~]# dnssec-keygen -a HMAC-MD5 -b 128 -n HOST "test_key"
Ktest_key.+157+09104
[root@localhost ~]# cat Ktest_key.+157+09104.key
test_key. IN KEY 512 3 157 XkByzMnhtuSq4IItAzKb3w==
## 复制XkByzMnhtuSq4IItAzKb3w== 然后修改文件key 大概在180行左右# 4 重启服务
systemctl restart named-chroot##    测试前把双方的防火墙都关掉,或者在服务器端配置dns服务
[root@wpt ~]# firewall-cmd --add-service=dns
##  测试时把客户端的dns地址解析改为服务端的,文件在/etc/resolv.conf下 ###############################################################
##################客户端验证是否可以解析#########################
###############################################################
# 5 安装客户端命令行工具
yum install bind-utils# 6 配置首选DNS为192.168.215.3
cp /etc/resolv.conf /etc/resolv.conf.bak
vim /etc/resolv.conf
# 修改以下内容
nameserver 192.168.215.3# 7 解析域名
# 第一台客户端解析会慢一些,第二台客户端解析相同域名会很快,因为有了缓存。
nslookup www.baidu.com#eg:
root@experiment2 ~# nslookup www.baidu.com
Server:     192.168.142.128
Address:    192.168.142.128#53Non-authoritative answer:
www.baidu.com   canonical name = www.a.shifen.com.
Name:   www.a.shifen.com
Address: 39.156.66.18
Name:   www.a.shifen.com
Address: 39.156.66.14

构建主域名服务器

案例介绍

  • 负责abc.com域的解析
  • 网站服务器 www.abc.com,IP地址为192.168.142.10
  • 邮件服务器 mail.abc.com,IP地址为192.168.142.20
  • 在线视频服务器 video.abc.com,IP地址为192.168.142.30
  • 主域名服务器 ns1.abc.com ,IP地址为192.168.142.3
  • 从域名服务器 ns2.abc.com,IP地址为192.168.142.5

基本步骤

  1. 确认本机网络地址、主机映射、默认DNS服务器地址。
  2. 建立主配置文件named.conf。
  3. 建立正、反向区域数据文件。
  4. 启动named服务或重载配置。
  5. 验证主域名服务器。

实现方案

### 1 确认本机网络地址、主机映射、DNS服务器地址
# 为了提高域名解析效率,将两个DNS服务器的地址映射直接写入到/etc/hosts文件中
vim /etc/hosts
192.168.142.128 ns1.abc.com     ns1
192.168.142.6   ns2.abc.com     ns2# 指定两个DNS服务器的地址为首选和备份DNS
vim /etc/resolv.conf# 写入以下内容
# search 定义域名的搜索列表
nameserver 192.168.142.128
nameserver 192.168.142.6### 2 修改主配置文件
vim /var/named/chroot/etc/named.conf
# 在 zone "." IN 前面加入以下内容# 一个zone关键字定义一个域区# type类型有三种,它们分别是master,slave和hint它们的含义分别是:
# master:表示定义的是主域名服务器
# slave [sleɪv]:表示定义的是辅助域名服务器
# hint [hɪnt]暗示:表示是互联网中根域名服务器# file 指定具体存放DNS记录的文件# allow-transfer [trænsˈfɜːr , ˈtrænsfɜːr]指定哪些主机可以从服务器上接收区域传输,未指定将允许传说到所有的主机
zone "abc.com" IN {type master;file "abc.com.zone";allow-transfer {192.168.142.6;};
};
# 定义一个IP为192.168.215.*的反向域区
zone "142.168.192.in-addr.arpa" {type master;file "192.168.142.arpa.zone";allow-transfer {192.168.142.6;};
};### 3 建立正向区域数据文件
cp -p /var/named/named.localhost /var/named/chroot/var/named/abc.com.zone
vim /var/named/chroot/var/named/abc.com.zone
# 修改以下内容
# “@”表示当前的DNS区域名,相当于“abc.com.”
# $TTL(Time To Live,生存时间)记录
# SOA(Start Of Authority[əˈθɔːrəti],授权信息开始)记录
# 分号“;” 开始的部分表示注释信息
# NS 域名服务器(Name Server):记录当前区域的DNS服务器的主机地址
# MX 邮件交换(Mail  Exchange[ɪksˈtʃeɪndʒ]):记录当前区域的邮件服务器的主机地址,数字10表示优先级。
# A 地址(Address):记录正向解析条目,只用在正向解析区域中
# CNAME 别名(Canonical[kəˈnɑːnɪkl] Name):记录某一个正向解析条目的其他名称
# PTR   指针(Point)记录,只用在反向解析区域中
$TTL 1D
@       IN SOA  abc.com. admin.abc.com. (2020112901      ; serial1D      ; refresh1H      ; retry1W      ; expire3H )    ; minimum
@       IN      NS      ns1.abc.com.IN      NS      ns2.abc.com.MX      10      mail.abc.com.
www     IN      A       192.168.142.10
mail    IN      A       192.168.142.20
video   IN      A       192.168.142.30
ns1     IN      A       192.168.142.128
ns2     IN      A       192.168.142.6
# 验证区域数据文件
# named-checkzone zonename filename
named-checkzone abc.com /var/named/chroot/var/named/abc.com.zone### 4 建立反向区域数据文件
cd /var/named/chroot/var/named/
cp -p abc.com.zone 192.168.142.arpa.zone
vim 192.168.142.arpa.zone
$TTL 1D
@       IN SOA  abc.com. admin.abc.com. (2020112901      ; serial1D      ; refresh1H      ; retry1W      ; expire3H )    ; minimum
@       IN      NS      ns1.abc.com.IN      NS      ns2.abc.com.
10      IN      PTR www.abc.com.
20      IN      PTR mail.abc.com.
30      IN      PTR study.abc.com.
128     IN      PTR ns1.abc.com.
6       IN      PTR ns2.abc.com.
# 验证区域数据文件
named-checkzone 215.168.192.in-addr.arpa 192.168.142.arpa.zone
# 5 重启服务
systemctl restart named-chroot###############################################################
##################客户端验证是否可以解析#########################
###############################################################
[root@wpt named]# nslookup
> www.abc.com
Server:     192.168.142.128
Address:    192.168.142.128#53Name: www.abc.com
Address: 192.168.142.10
> mail.abc.com
Server:     192.168.142.128
Address:    192.168.142.128#53Name: mail.abc.com
Address: 192.168.142.20
> 192.168.142.30
30.142.168.192.in-addr.arpa name = study.abc.com.

构建从域名服务器

为了降低主域名服务器的压力,可以构建从域名服务器,不仅可以负载分担,还可以起到备份作用。

基本步骤

  1. 确认本机网络地址、主机映射、默认DNS服务器地址。
  2. 建立主配置文件named.conf。
  3. 启动named服务,查看区域数据文件是否下载成功。
  4. 验证从域名服务器。

实现方案

# 1 安装
yum install bind bind-chroot bind-utils# 2 启动服务
systemctl start named-chroot.service# 3 确认本机网络地址、主机映射、DNS服务器地址
# 为了提高域名解析效率,将两个DNS服务器的地址映射直接写入到/etc/hosts文件中
vim /etc/hosts
192.168.142.128 ns1.abc.com     ns1
192.168.142.6   ns2.abc.com     ns2# 指定两个DNS服务器的地址为首选和备份DNS
vim /etc/resolv.conf# 写入以下内容
# search 定义域名的搜索列表
nameserver 192.168.142.128
nameserver 192.168.142.6# 4 建立主配置文件
cd /var/named/chroot/
vim /etc/named.conf
# 修改如下配置
listen-on port 53   { 127.0.0.1; 192.168.142.6; };
zone "abc.com" IN {type slave;file "slaves/abc.com.zone";masters {192.168.142.128;};
};
zone "142.168.192.in-addr.arpa" IN {type slave;file "slaves/192.168.142.arpa.zone";masters {192.168.142.128;};
};# 5 关闭两个机器的防火墙
systemctl stop firewalld# 6 重启服务
systemctl restart named-chroot# 7 查看是否同步成功
ll /var/named/chroot/var/named/slaves/-rw-r--r--. 1 named named 362 Nov 23 22:35 abc.com.zone
# 8 使用从域名服务器进行验证
root@experiment2 /v/n/chroot# nslookup
> www.abc.com
Server:     192.168.142.6
Address:    192.168.142.6#53Name:   www.abc.com
Address: 192.168.142.20

nslookup命令详解

###   nslookup命令详解
nslookup -qt=type domain [dns-server]其中,type可以是以下这些类型:A 地址记录
AAAA 地址记录
AFSDB Andrew文件系统数据库服务器记录
ATMA ATM地址记录
CNAME 别名记录
HINFO 硬件配置记录,包括CPU、操作系统信息
ISDN 域名对应的ISDN号码
MB 存放指定邮箱的服务器
MG 邮件组记录
MINFO 邮件组和邮箱的信息记录
MR 改名的邮箱记录
MX 邮件服务器记录
NS 名字服务器记录
PTR 反向记录
RP 负责人记录
RT 路由穿透记录
SRV TCP服务器信息记录
TXT 域名对应的文本信息
X25 域名对应的X.25地址记录
###例如
[root@localhost ~]# nslookup -qt=mx baidu.com 8.8.8.8

国内常用的DNS服务器

114DNS

114DNS开启DNS高可靠服务时代的大幕。114DNS开始同时为公众提供高速、稳定、可信的DNS递归解析服务;为网站提供强大抗攻击能力的权威智能DNS解析服务;为ISP提供可靠的DNS灾备及外包服务,作为国内用户量最大的老牌DNS,访问速度快,各地区设有节点,负载各运营商用户,DNS防劫持能力,自然也是名列前茅。
DNS 服务器 IP 地址:

  1. 首选:114.114.114.114
  2. 备选:114.114.114.115

2017公共DNS服务器地址评估—DNS推荐

DNSPod DNS

DNSPod创始于2006年3月,是中国最大的第三方域名服务商,全球排名第四位。DNSPod是国内最早提供免费智能DNS产品的网站,致力于为各类网站提供高质量的电信、网通、教育网双线或者三线智能DNS免费解析,作为114DNS竞争对手之一,无论是访问速度,还是各地区节点覆盖率以及防劫持能力都是顶级的。
DNS 服务器 IP 地址:

  1. 首选:119.29.29.29
  2. 备选:182.254.116.116

2017公共DNS服务器地址评估—DNS推荐

阿里 DNS

阿里公共DNS是阿里巴巴集团推出的DNS递归解析系统,作为国内最大的互联网基础服务提供商,阿里巴巴在继承多年优秀技术的基础上,通过提供性能优异的公共DNS服务,为广大互联网用户提供最可靠的面向互联网用户提供“快速”、“稳定”、“智能”的免费DNS递归解析服务。
DNS 服务器 IP 地址:

  1. 首选:223.5.5.5
  2. 备选:223.6.6.6

2017公共DNS服务器地址评估—DNS推荐

百度 DNS

百度开放DNS主要面向企业,旨在集结行业力量,以开放的方式共同打造一个全球最大的、稳定的、高效的、纯净的公共DNS平台,作为核心基础设施服务于整个互联网,百度DNS拥有一流基础设施和强大技术实力,为用户提供免费的DNS服务。
DNS 服务器 IP 地址:

  1. 首选:180.76.76.76
  2. 备选:暂未公布

2017公共DNS服务器地址评估—DNS推荐

CNNIC SDNS

SDNS已在全球部署了多个节点,提供智能的、弹性的平台支持能力,可随用户的需求而变化。每节点建设在运营商4A、5A级机房,每节点配备服务器集群,多线路出口,节点之间相互冗余备份。通过多线路,确保每一次查询的全局路由最优化,最大程度上使用户解析就近响应。
DNS 服务器 IP 地址:

  1. 首选:1.2.4.8
  2. 备选:202.98.0.68

2017公共DNS服务器地址评估—DNS推荐

DNS派

DNS派拥有全球最领先的云 DNS 集群技术,领先的分布式云服务,遍布全国的解析服务器,多年 DNS 领域专业研究,DNS派拥有全球最领先的云DNS集群技术,领先的分布式云服务,遍布全国的解析服务器,能为域名的权威解析提供强有力的支持。
DNS 服务器 IP 地址:

  1. 首选:101.226.4.6
  2. 备选:218.30.118.6

附:国外常用DNS服务器

  1. Google Public DNS (8.8.8.8, 8.8.4.4)
  2. OpenDNS (208.67.222.222, 208.67.220.220)
  3. OpenDNS Family (208.67.222.123, 208.67.220.123)
  4. Dyn DNS (216.146.35.35, 216.146.36.36)
  5. Comodo Secure (8.26.56.26, 8.20.247.20)
  6. UltraDNS (156.154.70.1, 156.154.71.1)
  7. Norton ConnectSafe (199.85.126.10, 199.85.127.10)

本文部分内容摘自:https://blog.csdn.net/weixin_49912759/article/details/110419273及https://blog.csdn.net/weixin_43634280/article/details/84361024

DNS域名服务及常用国内DNS服务器地址相关推荐

  1. linux ntp时钟服务器地址_Linux配置时间同步以及国内常用的NTP服务器地址

    有时服务器需要调整时区并调整时间,需要用到的命令:ntpdate 一般Linux系统都默认安装了NTP服务,如果没有安装的话,也可以直接使用yum安装,yum安装命令为:yum install -y ...

  2. 常用邮箱 SMTP 服务器地址大全

    1. 阿里云邮箱(mail.aliyun.com): POP3 服务器地址:pop3.aliyun.com(SSL加密端口:995:非加密端口:110) SMTP 服务器地址:smtp.aliyun. ...

  3. Linux时间同步+国内常用的NTP服务器地址

    当Linux服务需要时间戳的时候,时间同步就显得十分重要.这里介绍下,最近我使用的一个同步命令. # ntpdate s1a.time.edu.cn 国内常用的NTP地址 210.72.145.44 ...

  4. 常用收发邮件服务器地址

    gmail(google.com) POP3服务器地址:pop.gmail.com SMTP服务器地址:smtp.gmail.com 21cn.com: POP3服务器地址:pop.21cn.com ...

  5. Linux的时钟及常用的时间同步服务器地址

    导读 在Linux中,用于时钟查看和设置的命令主要有date.hwclock和clock.其中,clock和hwclock用法相近,只不过 clock命令除了支持x86硬件体系外,还支持Alpha硬件 ...

  6. 常用的时间同步服务器地址

    转载出处http://www.minunix.com/2013/03/ntpserver/ 感谢原作者,一切的权利都属于原作者,如果有所不适,我会立即删除 中国大概能用的NTP时间服务器地址 serv ...

  7. linux 域名怎么平台,linux平台搭建DNS域名服务与常用配置

    环境需求:一台装有linux系统的服务器,我这里用vmware虚拟了一台redhat6.5来给演示; 实验:搭建普通的域名服务器: 1.安装BIND,如下图: 2.配置BIND服务,如下图: 3.验证 ...

  8. DNS域名服务之:排查DNS的故障

    ★使用DNSEventViewer来诊断问题 如果需要获得更高级的事件日志诊断,需要打开DebugLogging但是只是在需要的时候在启用此功能,因为这会影响服务器性能! ★使用Performance ...

  9. 国内常用公共DNS服务器、各省运营商DNS服务器汇总

    不知道大家有没有过网络是正常的,QQ可以正常登录.游戏也可以正常玩,但是网页无论如何都打不开.这就是电脑网络设置的DNS服务器有问题,不是其故障就是不工作了. 换了DNS服务器成功解决问题.下边给大家 ...

  10. 国内常用公共DNS服务器、各省运营商DNS服务器汇总 1

    原文  http://www.francissoung.com/2016/03/14/常用公共DNS服务器/ 主题 DNS服务器 服务器 运营商 不知道大家有没有过网络是正常的,QQ可以正常登录.游戏 ...

最新文章

  1. titanium开发教程-03-02自定义tab group
  2. 支付接入开发的陷阱有多深?
  3. Toad 补充与培训 常用菜单
  4. Android进阶知识:ANR的定位与解决
  5. java linux 调用32位so_Linux上TCP的几个内核参数调优
  6. 小白零基础学习Java开发入门教程奉上,希望对你有所帮助!
  7. java8如何兼容java7_尽管使用Java 8功能,项目如何支持Java 7
  8. 大数据学习笔记21:MR案例——分区全排序
  9. redis的bitmap操作
  10. Python与JavaWeb的第一次碰撞
  11. wannacry哭泣勒索病毒一键修复工具
  12. 【物流选址】基于matlab佛洛依德算法求解物流选址问题【含Matlab源码 892期】
  13. 零基础如何入门数据分析师?
  14. HBuilderX、微信开发者工具、VScode之间运行微信公众号
  15. 验证短信延迟?是哪里出现问题
  16. 给小白的论文写作方法!实用率99%!
  17. 两个小工具反编译微信(PC)小程序源码
  18. 零基础转行成功的前辈写给测试新手的话
  19. C++模板学习笔记——模板实参
  20. RF低噪声放大器设计

热门文章

  1. 【IE知识】最系统、完整的标准工时学习资料;标准作业(SOP)详解;生产线布局规划
  2. SOFA-DTX 分布式事务的设计演进路线
  3. Graylog 3.3.8安装笔记(yum,docker,docker-compose)
  4. 计算机磁盘怎么清理,如何清理c盘空间_WinXP系统怎么清理C盘空间
  5. HTML5期末大作业:北京旅游网页设计制作(1页) 简单静态HTML网页作品 我的旅游网页作业成品 学生旅游网站模板
  6. python 高等数学实验,高等数学以及Python 实现
  7. 在linux运行php文件
  8. python自学篇——PyGame模块的所有功能函数详解
  9. JBoss、Geronimo及Tomcat比较分析
  10. AXI_lite 总线学习