1、泛域名解析:
写DNS区域配置文件时如果数据量很大对于写来说很困难,虽然可以通过脚来做 但是也很麻烦。幸好这里提供泛域名解析的方法。
$GENERATE 100-200 stu$ A 172.16.12.$
$GENERATE 范围 左主机地址 记录类型 右主机地址
在配置文件的DNS表中写这个正向解析的泛域名,它代表的是IP地址从172.16.12.100到172.16.12.200这个区间,主机的名称是stu100 到stu200。一一严格匹配的。
[root@geili html]# nslookup stu100.geili.com 172.16.12.10
Server: 172.16.12.10
Address: 172.16.12.10#53
Name: stu100.geili.com
Address: 172.16.12.100
能够解析到。ok
2、转发。
DNS做解析时有两种情况,1、递归。2、迭代。
递归是在DNS发现处理不了用户的请求时,以DNS客户的身份向其他DNS服务器发请求,而不是让用户主机自己去访问别的服务器,最终发回给用户主机,递归一定会返回一个结果。
迭代多是DNS服务器之间的,本地域名服务器向根域服务器查询时所用,本地无法查到用户的请求,就会想根域询问,而根域要么返回一个IP,要么返回一个DNS服务的地址,告诉本地DNS服务器,“你应该去问这个DNS服务器。”
转发就是第二个过程。
要有两台DNS服务器。一台指向另一台。
在name.conf这个主配置文件中加一行 forwarders。里面写上转发到的IP。
options {
directory "/var/named";
forwarders { 172.16.67.2; };
};
本地的IP是172.16.12.10,如果本地不能解析到输入的域名则向172.16.67.2将域名发给他让他来解析。
[root@geili html]# nslookup stu100.jiang.com 172.16.12.10
Server: 172.16.12.10
Address: 172.16.12.10#53
Non-authoritative answer:
Name: stu100.jiang.com
Address: 172.16.67.100
stu100.jiang.com这个域名本身不在172.16.12.10这个服务器的DNS表中,但是向172.16.12.10发请求能够解析,就是因为发生了转发。ok
3、DNS负载均衡
负载均衡大家都不陌生在这里就不多说了。
DNS也是能够实现负载均衡的,很简单就是在DNS的表中写入多个相同域名,后边的IP不通即可。
user A 172.17.0.240
user A 172.17.0.250
user A 172.17.0.230
[root@geili html]# nslookup user.geili.com 172.16.12.10
Server: 172.16.12.10
Address: 172.16.12.10#53
Name: user.geili.com
Address: 172.17.0.230
Name: user.geili.com
Address: 172.17.0.250
Name: user.geili.com
Address: 172.17.0.240
[root@geili html]# nslookup user.geili.com 172.16.12.10
Server: 172.16.12.10
Address: 172.16.12.10#53
Name: user.geili.com
Address: 172.17.0.230
Name: user.geili.com
Address: 172.17.0.240
Name: user.geili.com
Address: 172.17.0.250
两次的顺序是不同的就证明触发了负载均衡机制。ok
4、子域授权。
先说下域和子域的概念,域是有级别的,根域其实是“.”,没错就是这个点。
顶级域,com ,cn,jp,gov,edu等等的这些。
二级域,gov,edu等等好多好多
比如上边的 geili.com. 这就是一个二级域。
.com. 是顶级域。
user.geili.com则是主机地址。
其实完整域名就是主机地址。
子域则是在一个相同的域下边的域。是有继承关系的。
比如abc.com. 是父域 def.abc.com. 是abc.com. 的子域,他们因为有相通的后缀abc.com. 而fgh.fds.com. 就不是它的子域,另外gfg.shdga.gfs.hr.dsf.abc.com.
有两台已经配置玩DNS的服务器 并且有父子的逻辑关系。
父域的配置文件 :
加上一条NS的 表示子域。
NS @
A 172.16.12.10
geili A 172.16.12.10
lili.geili.com. NS dns3.lili.geili.com.
dns3.lili.geili.com. A 172.16.12.11
子域区域配置文件:
lili.geili.com. NS dns3.lili.geili.com.
dns3.lili.geili.com. A 172.16.12.11
kkk A 172.16.55.55
子域主配置文件:
options {
directory "/var/named";
};
zone "lili.geili.com." {
type master;
file "lili.geili.com.zone";
};
注意名称。
测试
[root@geili html]# nslookup kkk.lili.geili.com 172.16.12.10
Server: 172.16.12.10
Address: 172.16.12.10#53
Non-authoritative answer:
Name: kkk.lili.geili.com
Address: 172.16.55.55
ok
排错。
1、确定子域是否能解析本身表中的DNS域名。
2、父域是否能解析本身表中的DNS域名。
3、查父域的zone区域配置文件中子域那一条内容是否正确。(这个居多)。