dns服务器(domain name system server)是互联网中用于将域名(如 www.example.com)解析为ip地址(如 192.0.2.1)的服务器。它是互联网基础设施的重要组成部分,帮助用户通过易于记忆的域名访问网站,而无需记住复杂的ip地址。以下是关于dns服务器的详细介绍:
1. dns服务器的功能
- 域名解析:将域名转换为对应的ip地址。
- 反向解析:将ip地址转换为域名(ptr记录)。
- 缓存:存储解析结果,减少重复查询的时间。
- 负载均衡:通过轮询dns记录,将流量分配到多个服务器。
- 邮件路由:通过mx记录,确定邮件服务器的地址。
2. dns服务器的工作原理
- 用户请求:用户在浏览器中输入域名(如
www.example.com)。 - 本地解析:
- 浏览器检查本地缓存是否有该域名的解析结果。
- 如果没有,向本地dns服务器(通常由isp提供)发送查询请求。
- 递归查询:
- 本地dns服务器向根dns服务器查询顶级域(如
.com)的权威服务器。 - 根dns服务器返回顶级域服务器的地址。
- 本地dns服务器向根dns服务器查询顶级域(如
- 迭代查询:
- 本地dns服务器向顶级域服务器查询域名的权威服务器。
- 顶级域服务器返回域名的权威服务器地址。
- 权威解析:
- 本地dns服务器向域名的权威服务器查询ip地址。
- 权威服务器返回域名的ip地址。
- 返回结果:
- 本地dns服务器将ip地址返回给用户。
- 浏览器通过ip地址访问目标网站。
3. dns服务器的类型
- 递归dns服务器:
- 负责接收用户查询,并递归地查询其他dns服务器,直到获得解析结果。
- 通常由isp或公共dns服务(如google dns、cloudflare dns)提供。
- 权威dns服务器:
- 存储特定域名的dns记录(如a记录、mx记录)。
- 负责直接回答关于该域名的查询。
- 根dns服务器:
- 全球共有13组根dns服务器,负责管理顶级域(如
.com、.org)的权威服务器地址。
- 全球共有13组根dns服务器,负责管理顶级域(如
- tld dns服务器:
- 负责管理顶级域(如
.com、.net)的权威服务器地址。
- 负责管理顶级域(如
4. dns记录类型
- a记录:将域名解析为ipv4地址。
- aaaa记录:将域名解析为ipv6地址。
- cname记录:将域名指向另一个域名(别名)。
- mx记录:指定邮件服务器的地址。
- txt记录:存储文本信息,常用于验证域名所有权或配置spf记录。
- ns记录:指定域名的权威dns服务器。
- ptr记录:用于反向解析,将ip地址转换为域名。
5. 搭建dns服务器
实验背景:
1.新星公司信息系统的ip地址在192.168.0.0/24网段,规划dns服务器的ip地址为192.168.0.100。
2.服务器平台采用redhat enterprise linux 6.4系统。
3.解析sdcet.cn域中的www、ftp、oa等主机,以及mail邮件交换主机。要求www.sdcet.cn解析到192.168.0.100,mail.sdcet.cn解析到192.168.0.101,ftp.sdcet.cn解析到192.168.0.102,oa.sdcet.cn解析到192.168.0.103。
4.在浏览器输入web.sdcet.cn,能够与输入www.sdcet.cn一样浏览公司网站。
5.对于给定的ip地址,能够反向解析其对应的主机。
实验步骤:
1.dns服务的安装
dns服务的守护进程是named.查看系统是否已经安装dns软件包:
[root@localhost ~]# rpm -qa |grep bind

安装 bind-9.8.2-0.17.rc1.el6.i686.rpm软件包:
[root@localhost packages]# rpm -ivh bind-9.8.2-0.17.rc1.el6.x86_64.rpm

2.dns服务的启动
启动named服务的命令为:
[root@localhost ~]# service named start
停止named服务的命令为:
[root@localhost ~]# service named stop
重新启动named服务的命令为:
[root@localhost ~]# service named restart
设置该服务开机自启动:
[root@localhost ~]# chkconfig named on
3.修改主配置文件
[root@localhost~]#vim /etc/named.conf
主配置文件named.conf中,需要修改的参数有两个:
//listen-on port 53:将大括号内监听ip地址修改为当前主机的ip地址,即
listen-on port 53 { 192.168.0.100; }; //要设置为自己的ip地址
//allow-query:将大括号内的参数修改为any,即
allow-query{ any; };允许网络中所有的主机能够通过本dns服务器查询。
4.修改扩展配置文件 named.rfc1912.zones
[root@localhost~]#vim /etc/named.rfc1912.zones
在文件的末尾,增加一个正向区域、一个反向区域,然后保存退出:
zone "sdcet.cn" in {
type master;
file "sdcet.cn.zone";
allow-update { none; };
};
zone “0.168.192.in-addr.arpa” in { //网络号一定要反序写出
type master;
file “0.168.192.sdcet";
allow-update { none; };
};
5.配置正向解析文件sdcet.cn.zone
在第二步中,定义了正向区域“sdcet.cn”,该区域对应的正向解析文件/var/named/sdcet.cn.zone并不存在。可以将模板文件复制、改名(这一步很重要,不能在模板文件上直接设置):
[root@localhost ~]#cp -p /var/named/named.localhost /var/named/sdcet.cn.zone
再使用vi编辑器打开该正向解析文件:
[root@localhost ~]#vim /var/named/sdcet.cn.zone
$ttl 1d
@ in soa dns.sdcet.cn. admin.sdcet.cn. (
0 ; serial
1d ; refresh
1h ; retry
1w ; expire
3h ) ; minimum
in ns dns.sdcet.cn. //根域,in前面必须有空格,下同
in mx 5 mail.sdcet.cn.
dns in a 192.168.0.100 //dns要顶格,下同
www in a 192.168.0.100
mail in a 192.168.0.101
ftp in a 192.168.0.102
oa in a 192.168.0.103
web in cname www
6.配置反向解析文件2.168.192.sdcet
root@localhost ~]#cp -p /var/named/named.loopback /var/named/0.168.192.sdcet [root@localhost ~]#vim /var/named/0.168.192.sdcet
$ttl 1d
@ in soa dns.sdcet.cn. admin.sdcet.cn. (
0 ; serial
1d ; refresh
1h ; retry
1w ; expire
3h ) ; minimum
in ns dns.sdcet.cn.
100 in ptr dns.sdcet.cn.
100 in ptr www.sdcet.cn.
101 in ptr mail.sdcet.cn.
102 in ptr ftp.sdcet.cn.
103 in ptr oa.sdcet.cn.
7.配置/etc/resolv.conf文件
[root@localhost ~]# vi /etc/resolv.conf
domain sdcet.cn nameserver 192.168.200.100 //定义dns服务器的ip地址,没有这一项就找不到dns服务器 search sdcet.cn
8.重启服务使配置生效:
[root@localhost ~]# service named restart
dns服务测试
1.ping命令
[root@localhost ~]# ping www.sdcet.cn

2.host命令
使用host命令测试正向解析:
[root@localhost ~]#host www.sdcet.cn

使用host命令测试反向解析:
[root@localhost ~]#host 192.168.200.100

6. dns服务器的优化与安全
- 启用dnssec:防止dns缓存投毒和域名劫持。
- 使用anycast:通过多个地理位置的服务器提供dns服务,提高可用性和性能。
- 配置防火墙:限制对dns服务器的访问,防止ddos攻击。
- 定期更新软件:修复已知漏洞,确保dns服务器的安全性。
- 监控日志:分析dns查询日志,发现异常行为。
7. 公共dns服务
- google public dns:
- ipv4:
8.8.8.8,8.8.4.4 - ipv6:
2001:4860:4860::8888,2001:4860:4860::8844
- ipv4:
- cloudflare dns:
- ipv4:
1.1.1.1,1.0.0.1 - ipv6:
2606:4700:4700::1111,2606:4700:4700::1001
- ipv4:
- opendns:
- ipv4:
208.67.222.222,208.67.220.220
- ipv4:
8. 常见问题
- dns解析失败:
- 检查dns服务器是否正常运行。
- 检查域名配置是否正确。
- 解析速度慢:
- 使用公共dns服务或优化本地dns服务器配置。
- 检查网络连接是否正常。
- dns污染:
- 启用dnssec,防止域名解析被篡改。
以上就是red hat6.4环境下搭建dns服务器的全过程的详细内容,更多关于red hat6.4搭建dns服务器的资料请关注代码网其它相关文章!
发表评论