DNS工作原理
作用:
方便记忆,利于传播
正向解析:根据域名查找IP地址
反向解析:根据IP地址查找域,用在邮件服务器进行邮件域检测
DNS分布式结构(树形结构)
所有域名:必须以点结尾,点代表(根域),如www.baidu.com.
根域名: .
一级DNS服务器(顶级域名){.cn(中国),.us(美国),.jp(日本),.kr(韩国),.hk(香港)}
二级域名:.edu.cn .com.cn .org.cn(非营利组织) .net.cn(运营商)
三级域名:NB.com.cn haxi.com.cn
完全合格的主机名(FQDN):主机头.域名(www.nb.com.cn)
DNS域名管理
IANA:互联网数字分配机构
CNNIC:中国互联网络信息中心
构建DNS服务器
BIDN服务器端程序:伯克利Internet域名服务
主要执行程序:/usr/sbin/named
系统服务:named
默认端口:TCP/UDP 53
运行时的虚拟根环境:/var/named/chroot
主配置文件:/etc/named.conf #主要设置负责解析的域名
地址库文件位置:/var/named #完整主机名与IP地址对应关系
1、DNS服务部署步骤
* 安装bind-chroot (提供虚拟根支持,提供安全机制(牢笼政策)) bind(域名服务包,主包)两个包
* 修改主配置文件/etc/named.conf
options {
directory "/var/named"; #指定地址库文件位置
};
zone "tedu.cn" IN { #指定本机负责解析的域名
type master; #指定本机为主DNS服务器
file "tedu.cn.zone"; #指定地址库文件名称
};
* 建立地址库文件
特点: 所有的域名都要以.作为结尾
没有点默认补全本地址库负责的域名
[root@svr7 ~]# cd /var/named/
[root@svr7 named]# cp -p named.localhost tedu.cn.zone
[root@svr7 named]# vim tedu.cn.zone
tedu.cn. NS svr7 #声明维护tedu.cn.域名的服务器叫什么名字
svr7 A 192.168.4.7
www A 192.168.4.100
ftp A 1.2.3.4
重起named服务
* 客户端指定DNS服务器:echo "nameserver 192.168.4.7" > /etc/resolv.conf
2、访问DNS服务器的解析过程
客户端---->nslookup www.tedu.cn—>/etc/hosts(nslookup不读取,直接输入域名会读取)—>/etc/resolv.conf—>192.168.4.7:53---->named服务----->/etc/named.conf zone “tedu.cn” -----> file “tedu.cn.zone” ----》/var/named/tedu.cn.zone-----》 www A 192.168.4.100
3、特殊的解析记录
1.DNS轮询功能(负载均衡)
[root@svr7 /]# vim /var/named/sina.com.zone
sina.com. NS svr7
svr7 A 192.168.4.7
www A 192.168.4.11
www A 192.168.4.12
www A 192.168.4.13
2.泛域名解析记录
[root@svr7 /]# vim /var/named/sina.com.zone
sina.com. NS svr7
svr7 A 192.168.4.7
www A 192.168.4.11
* A 192.168.10.100
sina.com. A 192.168.10.200
3.有规律的泛域名解析记录
pc1.sina.com -------> 192.168.20.1
pc2.sina.com -------> 192.168.20.2
pc3.sina.com -------> 192.168.20.3
........
pc50.sina.com -------> 192.168.20.50
内置函数:$GENERATE 造数功能:制造连续的数字
[root@svr7 /]# vim /var/named/sina.com.zone
......
$GENERATE 1-50 pc$ A 192.168.20.$
4. CNAME解析记录的别名
[root@svr7 /]# vim /var/named/sina.com.zone
sina.com. NS svr7
svr7 A 192.168.4.7
ftp A 192.168.4.110
tts CNAME ftp
4、DNS资源解析记录类型有哪些?
NS(声明DNS服务器记录)
A (正向解析记录)
CNAME(解析记录别名)
5、主机名映射记录配置文件:/etc/hosts
1.只为本机提供解析
2.解析域名写入该文件立即生效
3.本机解析域名中,具有最高优先级
192.168.4.100 www.360.com
DNS子域授权
父域:www.tedu.cn,由虚拟机A,可以解析
子域:www.bj.tedu.cn,由虚拟机B,可以解析
虚拟机B:构建DNS服务器负责解析bj.tedu.cn域名
1、修改主配置文件:/etc/named.conf
options {
directory "/var/named"; #指定地址库文件位置
};
zone "bj.tedu.cn" IN { #指定本机负责解析的域名
type master; #指定本机为主DNS服务器
file "bj.tedu.cn.zone"; #指定地址库文件名称
};
2、建立地址库文件bj.tedu.cn.zone
bj.tedu.cn. NS pc207
pc207 A 192.168.4.207
www A 192.168.4.150
3、配置子域授权
客户端解析www.bj.tedu.cn请求发送给虚拟机A,可以获得最终解析结果
虚拟机A:
[root@svr7 /]# vim /var/named/tedu.cn.zone
tedu.cn. NS svr7
bj.tedu.cn. NS pc207
svr7 A 192.168.4.7
pc207 A 192.168.4.207
[root@svr7 /]# nslookup www.bj.tedu.cn 192.168.4.7
Server: 192.168.4.7
Address: 192.168.4.7#53
Non-authoritative answer: #非权威解答
Name: www.bj.tedu.cn
Address: 192.168.4.150
DNS的递归解析与迭代解析
递归解析(互联网的DNS不支持递归)
客户端—>本地缓存—>本地DNS服务器
迭代解析:
客户端寻求DNS服务器解析,DNS服务器与其他DNS服务器交互过程
客户端解析域名:
1.查看本机/etc/hosts
2.查看本机/etc/resolv.conf----》DNS服务器地址
3.将解析请求发给DNS服务器地址
4.DNS服务器进行递归查询
5.DNS服务器与
缓存DNS服务器
作用:缓存解析记录,提高解析速度,多用于企业内网
修改配置文件 /etc/named.conf
options {
directory “/var/named”;
forwarders { 172.40.92.6; }; 将请求转发给本机的DNS服务器
};
Split分离解析
1、概述
国际上叫视图解析
什么是分离解析(饭店VIP)
当收到客户机的NDS查询请求的时候
能够区分客户机的来源地址
为不同类型的客户机提供不同的解析结构(IP地址)
不同类型的客户机,在解析相同的一个域名,得到的解析结果不同
为客户端提供最近的资源服务器
2、BIND的view视图
根据源地址集合将客户机分类——不同客户机获得不同结果
view分类,客户端匹配由上及下,匹配即停止
view分类要合理,所有客户端都必须找到自己的类别
3、配置DNS分离解析
所有的zone都必须在view的大括号里面
每一个view中zone的个数要一致,zone负责的域名也要一致
view "a" { #分类
match-clients { 192.168.4.1;192.168.4.2; ……}; #匹配客户端来源地址
zone "12306.cn" IN {
type master;
file "tedu.cn.zone";
};
};
view "b" { #分类
match-clients { 192.168.4.1;192.168.4.2; ……} #匹配客户端来源地址
zone "12306.cn" IN {
type master;
file "tedu.cn.a";
};
};