DNS服务器在网络中的应用


DNS服务工作原理:



DNS就是将域名与ip地址相互解析的过程,从域名解析成地址成为正向区域,90%都使用此区域,还有一少部分采用反向区域,地址解析成域名。



域名结构:


主机域名一般结构为:主机名、一级域名、二级域名、三级域名。


例:


一级域名:  .com(表示商业机构)  .cn(表示国家  中国缩写) .net(表示网络服务机构) .edu(表示教育机构)


二级域名: baidu.com   51cto.com   sina.com


三级域名: blog.51cto.com


主机名  : yuanye1128.blog.51cto.com



DNS查询方式



1、递归查询:一般客户机和服务器之间属于递归查询,即当客户机向DNS服务器发出请求后,若DNS服务器本地不能解析,则会向另外的DNS服务器发出请求,得到结果后转交给客户机。



2、迭代查询:一般DNS服务器之间属于迭代查询,如:若DNS2不能响应DNS1的请求,则它会将DNS3ipDNS2,以便其再向DNS3发出请求。



DNS服务器分类:


缓存DNS服务器、主DNS服务器、辅助DNS服务器



DNS软件:


Linux下最常用的DNS软件就是bind




案例一:域名解析


要求:客户机能解析出abc.com域中主机www、ftp、mail的DNS

DNS服务器:192.168.1.101

www:1.1.1.1

ftp:2.2.2.2

mail:3.3.3.3

拓扑图:



wKioL1NtzJfyir-PAABnCFRar4k389.jpg

步骤:


挂载光驱:


[root@localhost ~]# mount /dev/cdrom /media/cdrom/


安装bindbind-chrootbind-utils


[root@localhost ~]# yum --disablerepo=\* --enablerepo=c6-media install bind bind-chroot bind-utils


开启DNS服务器


wKiom1No9oaih-LGAAA4pzZMJsM863.jpg


查看DNS根目录(var/named/chroot)下的配置文件夹etc,发现多了很多配置文件


wKioL1No9lzyfM8MAAEI_3tyVXk436.jpg


编辑配置文件named.conf


11行和17行改为any,保存退出


wKiom1No9obgxF4KAAENMk1Nxx4643.jpg


然后编辑区域声明文件named.rfc1912.zones


我们可以模仿19-23行,添加一个区域25-29行,保存退出


wKiom1No9obwy-QeAACd_DmEJas510.jpg



DNS根目录var/named/chroot/vat/named中还添加一个区域文件abc.com.zone


将样例文件拷贝过去修改一下即可,然后编辑该文件



wKioL1No9lygMizAAAHmH6Muj_w200.jpg



按要求修改名称解析库文件


wKiom1No9ofDRwxhAAD97_5ML7A755.jpg



测试:


把自己看做客户端,修改DNS


wKioL1No9lzDcxo3AAArdcDvzlM284.jpg



wKiom1No9oeBbuKhAAA-HTxXG8c893.jpg


使用nslookup查看



wKiom1No9y-RXMwVAABPefXLar8461.jpgwKioL1No9l_ixcYdAACT_0ltx_M676.jpg



使用dig查看mx


[root@localhost named]# dig -t mx abc.com


; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6 <<>> -t mx abc.com


;; global options: +cmd


;; Got answer:


;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 64854


;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 2


;; QUESTION SECTION:


;abc.com.INMX


;; ANSWER SECTION:


abc.com.86400INMX10 mail.abc.com.


;; AUTHORITY SECTION:


abc.com.86400INNSns.abc.com.


;; ADDITIONAL SECTION:


mail.abc.com.86400INA3.3.3.3


ns.abc.com.86400INA182.168.1.101


; Query time: 0 msec


;; SERVER: 192.168.1.101#53(192.168.1.101)


;; WHEN: Sun May  4 03:43:00 2014


;; MSG SIZE  rcvd: 95




由图中可以看出我们的实验已经完成。




案例二:DNS服务器主辅同步


要求:


DNS  cent os 6  192.168.1.100


辅助    cent os 6   192.168.1.101




DNS服务器:


1.安装软件


2.开启DNS服务


3.配置文件named.conf区域声明文件named.rfc1912.zones


4.var/named/chroot/vat/named目录中,把named.localhost拷贝到该目录中为abc.com.zone并配置该文件


步骤与案例一中相同




辅助DNS服务器:



首先安装软件包、开启DNS服务器,编辑named.conf,和案例一步骤相同,如果缺少钥匙文件可以用rndc -confgen -a 产生钥匙。



编辑区域声明文件named.rfc1912.zones 新建一个域abc.com


wKioL1No9z7BQSN_AACph6YxGMY537.jpg


保存后重新加载配置文件


[root@localhost etc]# rndc reload


查看日志主服务器已经将数据传递到辅助服务器上


wKiom1No92mx3J2-AAG9NDmiYl4746.jpg




同步过来的数据


wKioL1No9z7j-HnvAADV2hKRD90662.jpg



案例三:DNS服务器授权转发


要求:根域a.com有两个子域,分别为bi.a.comsh.a.com,父域为a.com,其中父域DNS授权管理子域sh.a.comwww主机ip地址分别为1.1.1.1 2.2.2.2 3.3.3.3 子域sh.a.com能够访问其他两个域。


拓扑图:


wKiom1NtyGSTj8ReAACjfeGiBFk649.jpg

步骤:

1.安装软件

2.开启DNS服务

3.配置文件named.conf

都与案例一相同


编辑named.rfc1912.zones,添加两个域

wKiom1NtyIbThKCJAACOR8GJA0c772.jpg


产生相应文件并给父域授权

[root@localhost named]# cp -p named.localhost a.com.zone

[root@localhost named]# vim a.com.zone

wKioL1NtyFvQ7juXAAC7N5t47EU522.jpg

相同方法给子域授权

[root@localhost named]# cp -p named.localhost bj.a.com.zone

[root@localhost named]# vim bj.a.com.zone

wKiom1NtyIaRp5FtAACR_RYziBs961.jpg


编辑完成后重新加载区域

[root@localhost named]# rndc reload  

server reload successful  表示加载成功



下面开始做子域的DNS

安装同上,编辑comed.conf文件:

修改配置文件,注意将202122和最后一行注释掉

[root@localhost chroot]# cd etc/

[root@localhost etc]# vim named.conf


wKioL1NtyLHzfp90AAFTC3Xddds007.jpg

wKiom1NtyNyii_WgAABUhF-l5T4170.jpg

然后编辑named.rfc1912.zones

新建一个域25-29行

[root@localhost etc]# vim named.rfc1912.zones

wKioL1NtyLGwLefhAADBAl8NJPs216.jpg

保存退出后,到var/named 目录中,吧named.localhost拷贝成sh.a.com.zone,并编辑

[root@localhost etc]# cd /var/named/

[root@localhost named]# cp -p named.localhost sh.a.com.zone

[root@localhost named]# vim sh.a.com.zone


wKiom1NtyNyyHUPQAACQCOP75CE407.jpg

保存退出后重新加载区域

[root@localhost named]# rndc reload

server reload successful


测试:

授权:a.com中主机可以解析出其他主机

wKiom1NtyN3hzLM0AAF4X1PXn6s656.jpg


转发:在子域sh.a.com上也可以解析出其他主机

wKioL1NtyLKRWeisAAF5EzXeya4393.jpg


案例四:DNS轮询


要求:baidu.com的其中一个DNS服务器管理某区域,该区域www主机ip1.1.1.12.2.2.2,要求该区域主机访问baidu.com时,通过轮询方式,将1.1.1.12.2.2.2轮流配发给主机。



拓扑图:


wKioL1NtyWOjM97-AAB9cDJbON8959.jpg


步骤:


安装DNS软件包与上面案例相同,配置named.conf也同案例一


编辑named.rfc1912.zones 增加一个域


[root@localhost etc]# vim named.rfc1912.zones


wKiom1NtyY6Sn8g7AACHbcpDOpU197.jpg


然后到var/named目录下,拷贝namedlocalhostbaidu.com.zone,并编辑


[root@localhost etc]# cd ../var/named/


[root@localhost named]# cp -p named.localhost baidu.com.zone


[root@localhost named]# vim baidu.com.zone


wKioL1NtyWPSd5onAACuBubzzf8874.jpg




测试:


两次解析的地址顺序不同


wKiom1NtyY6jYF4BAADkBd0Kok4449.jpg