赞
踩
引言:本文主要讲述三个实验:
DNS定义:DNS是域名系统。它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网。
分布式网络存储技术是将数据分散地存储于多台独立的机器设备上。分布式网络存储系统采用可扩展的系统结构,利用多台存储服务器分担存储负荷,利用位置服务器定位存储信息,解决了传统集中式存储系统中单存储服务器的瓶颈问题,还提高了系统的可靠性、可用性和扩展性。
在一个区中主DNS服务器从自己本机的数据文件中读取该区的DNS数据信息,而辅助DNS服务器则从区的主DNS服务器中读取该区的DNS数据信息。
域名:通常由一个完全合格域名(FQDN)标识。FQDN全称 Fully Qualified Domain Name,它能准确表示出其相对于DNS域树根的位置,也就是节点到DNS树根的完整表述方式,从节点到树根采用反向书写,并将每个节用 “.” 分隔,对于DNS域google来说,其完全正式域名(FQDN)为google.com。
递归查询是一种DNS服务器的查询模式,在该模式下DNS服务器接收到客户机请求,必须使用一个准确的查询结果回复客户机。如果 DNS服务器本地没有存储查询DNS信息,那么该服务器会询问其他服务器,并将返回的查询结果提交给客户机。
小结:就是客户机发送请求后自己只用等待结果即可,中间具体过程交给服务器实现。
DNS服务器另外一种查询方式为迭代查询,当客户机发送查询请求时,DNS服务器并不直接回复查询结果,而是告诉客户机另一台 DNS服务器地址,客户机再向这台DNS服务器提交请求,依次循环直到返回查询的结果为止。
小结:客户机的请求需要自己挨个去查询才能得到结果,服务器没有结果时候只会给你提供其它服务器的地址,而不会帮你去请求查询,这与递归截然相反。
思路: 这道题考察的知识点是DNS域名解析,http请求的过程,是涉及到DNS域名解析的,这道面试题也挺经典的。
DNS,英文全称是domain name system,域名解析系统,是Internet上作为域名和IP相互映射的一个分布式数据库。它的作用很明确,就是可以根据域名查出对应的IP地址。在浏览器缓存、本地DNS服务器、根域名服务器都是怎么查找的。
假设你要查询www.baidu.com的IP地址:
(1)首先会查找浏览器的缓存,看看是否能找到www.baidu.com对应的IP地址,找到就直接返回,否则进行下一步。
(2)将请求发往给本地DNS服务器,如果查找到也直接返回,否则继续进行下一步。
(3)本地DNS服务器向根域名服务器发送请求,根域名服务器返回负责.com的顶级域名服务器的IP地址的列表。
(4)本地DNS服务器再向其中一个负责.com的顶级域名服务器发送一个请求,返回负责.baidu的权威域名服务器的IP地址列表。
(5)本地DNS服务器再向其中一个权威域名服务器发送一个请求,返回www.baidu.com所对应的IP地址。
(1)yum install -y bind ##安装bind
(2)查看需要修改的配置文件所在的路径
rpm -qc bind #查询bind软件配置文件所在路径
/etc/named.conf #主配置文件
/etc/named/rfc1912.zonrs #区域配置文件
/var/named/named.localhost #区域数据配置文件
(3)修改主配置文件
vim /etc/named.conf
options {
listen-on-v6 poet 53 { 192.168.10.130; }; #监听53端口,IP地址使用提供服务的本地IP,也可用any代表所有
# listen-on-v6 port 53 { : :1; }; #ipv6行如不使用可以注释掉或者删除
directory "/var/named"; #区域数据文件的默认存放位 置
dump- file "/var/ named/data/cache_ dump . db"; #域名缓存数据库文件的位置
statistics-file "/var/named/data/named stats.txt"; #状态统计文件的位置
memstatistics-file "/var/named/data/named_ mem_ stats. txt"; #内存统计文件的位置
allow-query
{ any; }; #允许使用本DNS解析服务的网段,也可用any代表所有
(4)修改区域配置文件,添加正向区域配置
vvim /etc/named.rfc1912.zones ##修改区域配置文件,添加正向区域配置
zone "zhantai.com" IN { ##正向解析"zhantai.com"区域
type master; ##类型为主区域
file "zhantai.com.zone"; ##指定区域数据文件为zhantai.com.zone
allow-update { none; };
};
(5)配置正向区域数据文件
cd /var/named/ ##切换到目录 cp -p named.localhost zhantai.com.zone ##备份 vim /var/named/zhantai.com.zone ##修改正向区域数据配置文件 $TTL 1D @ IN SOA @ zhantai.com. ( ##SOA是初始记录 @是当前域名 0 ; serial 1D ; refresh 1H ; retry 1W ; expire 3H ) ; minimum NS zhantai.com. ##记录当前区域的DNS服务器的名称 A 192.168.10.130 ##记录主机IP地址 www IN A 192.168.10.133 ##记录正向解析www.baidu.com对应的IP mail IN A 192.168.10.134 ##邮箱的正向解析地址 vim /etc/resolv.conf #修改完后立即生效 nameserver 192.168.10.130 ##将主机IP设置为dns服务器地址
(6)关闭防火墙,关闭核心防护,启动服务
systemctl stop firewalld
setenforce 0
systemctl start named
tail -f /var/log/ message #如果服务启动失败,可以查看日志文件来排查错误
rndc-confgen -r /dev/urandom -a #如果服务启动卡住,可以执行此命令解决
[root@Client ~]# nslookup www.zhantai.com ##验证
Server: 192.168.10.130
Address: 192.168.10.130
Name: www.zhantai.com
Address: 192.168.10.133
(7)检查配文文件
named-checkconf -z "$NAMEDCONF" ##检查配置文件
(1)修改区域配置文件,添加反向区域配置
vim /etc/named.rfc1912.zones ##修改区域配置文件,添加反向区域配置
zone "10.168.192.in-addr.arpa" IN {
type master;
file "zhantai.com.test";
allow-update { none; };
};
(2)备份指定区域数据配置文件,编辑指定区域数据配置文件
cp -a zhantai.com.zone zhantai.com.test ##备份
vim zhantai.com.test
$TTL 1D
@ IN SOA @ zhantai.com. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS zhantai.com.
A 192.168.10.130
133 IN PTR www.zhantai.com.
134 IN PTR mail.zhantai.com.
#####PTR:方向指针,反向解析的意思
(3)重启服务并测试DNS服务
systemctl restart named ##重启服务
[root@Client ~]# nslookup 192.168.10.133
Server: 192.168.10.130
Address: 192.168.10.130#53
133.10.168.192.in-addr.arpa name = www.zhantai.com.
实验环境:
(1)首先把从服务器DNS地址也配到主服务器上,再配置主服务器主配置文件、重启服务
vim /etc/resolv.conf
# Generated by NetworkManager
nameserver 192.168.10.130
nameserver 192.168.10.132 ##把从服务器DNS地址配到主服务器上
vim /etc/named.rfc1912.zones ##修改区域配置文件,添加主配置文件,这里要把之前做的正反向的解析文件删除,不然会报错
zone "zhantai.com" IN {
type master;
file "zhantai.com.zone";
allow-transfer { 192.168.10.132; };
};
zone "10.168.192.in-addr.arpa" IN {
type master;
file "zhantai.com.test";
allow-transfer { 192.168.10.132; };
};
(2)在Clien机子需要装bind软件服务
yum install -y bind
(3)修改主配置文件
vim /etc/named.conf ##修改主配置文件
options {
listen-on port 53 { any; };
listen-on-v6 port 53 { ::1; };
directory "/var/named";
dump-file "/var/named/data/cache_dump.db";
statistics-file "/var/named/data/named_stats.txt";
memstatistics-file "/var/named/data/named_mem_stats.txt";
allow-query { any; };
(4)修改区域配置文件,添加从配置文件
vim /etc/named.rfc1912.zones ##修改区域配置文件,添加从配置文件
zone "zhantai.com" IN {
type slave;
file "slaves/zhantai.com.zone";
masters { 192.168.10.130; };
};
zone "10.168.192.in-addr.arpa" IN {
type slave;
file "slaves/zhantai.com.test";
masters { 192.168.10.130; };
};
(5)关闭防火墙、核心防护,重启服务
systemctl stop firewalld
setenforce 0
systemctl start named
(6)查看是否备份成功
[root@Client ~]# cd /var/named/
[root@Client named]# ls
data dynamic named.ca named.empty named.localhost named.loopback slaves
[root@Client named]# cd slaves/
[root@Client slaves]# ls
zhantai.com.test zhantai.com.zone
[root@Client slaves]#
此章节主要讲述bind域名服务基础,包括概念、作用、协议及端口号,还有域名体系结构,递归和迭代查询,服务器的类型等等。详细讲述DNS的正向解析、反向解析、主从服务三个个实验。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。