基于Linux的DNS课程设计大作业.docx
《基于Linux的DNS课程设计大作业.docx》由会员分享,可在线阅读,更多相关《基于Linux的DNS课程设计大作业.docx(14页珍藏版)》请在冰豆网上搜索。
基于Linux的DNS课程设计大作业
成绩
课程设计
2012—2013学年第2学期
课程名称:
《网络操作系统配置与管理》
院系:
软件学院
专业年级:
10级软件工程(网络工程师)
******
学号:
*********
2013年6月16日
一、绪论
随着计算机的普及与Internet的发展,DNS服务器的配置与管理变得越发重要。
简单来说,DNS(DomainNameSystem)服务器也即域名系统或者域名服务。
DNS服务器在互联网的作用是:
把域名转换成为网络可以识别的ip地址。
首先,要知道互联网的网站都是一台一台服务器的形式存在的,但是我们怎么去到要访问的网站服务器呢?
这就需要给每台服务器分配IP地址,互联网上的网站无穷多,我们不可能记住每个网站的IP地址,这就产生了方便记忆的域名管理系统DNS,他可以把我们输入的好记的域名转换为要访问的服务器的IP地址. 简单的说,就是为了方便我们浏览互联网上的网站而不用去刻意记住每个主机的IP地址,DNS服务器就应运而生,提供将域名解析为IP的服务,从而使我们上网的时候能够用简短而好记的域名来访问互联网上的静态IP的主机。
DNS是一种基于分布式的数据库系统,并采用客户/服务器模式进行主机名称与IP地址之间的转换。
DNS作为Internet的服务,实现映射IP与域名的解析。
分布:
其地址信息是存在一个层次结构的多个地方,而不是在一个中心站点。
本学期学习网络操作系统服务器的配置与管理,根据linuxRedhat9.0操作系统实现DNS服务的配置与管理,并简单分析服务器的故障。
关键字:
Linux,DNS(域名服务系统)、DNS配置与管理、故障排除。
二、DNS的简介
DNS为域名系统(DomainNameSystem),一种组织成域层次结构的计算机和网络服务命名系统,提供了将域名转换为ip地址的一种方法。
DNS基予UDP协议,工作与应用层。
DNS采用C/S模式工作,用户只能间接的使用DNS,客户端由操作系统支持,需要指定服务器.服务器存储域名与ip的对照表,负责进行地址解析.
域名是主机或路由器的字符串名称,采用唯一的层次结构命名方法
1.DNS的基本知识
DNS域名空间结构:
域名结构:
三级域名、二级域名、顶级域名.
每一分量就是一个区域.
常见的顶级域名有
国家顶级域名
如:
国际顶级域名
如:
.int
通用定级域名
如:
域名要统一注册才能被解析,在中国,edu下注册三级域名向中国教育和科研计算机网络中心申请,其他的三级域名注册需要向cnnic申请.可以由商业代理机构代理注册业务。
图2-1-1
常见的二级域名:
名称
代表意义
com
公司、行号、企业
org
组织、机构
edu
教育单位
gov
政府单位
net
网络、通讯
mil
军事单位
表2-1-1
2.DNS的工作流程
DNS的工作流程:
图2-1-2
根据DNS的查询方法可分为以下分为两种:
a)递归查询(RecursiveQuery):
客户机送出查询请求后,DNS服务器必须告诉客户机正确的数据(IP地址)或通知客户机找不到其所需数据。
如果DNS服务器内没有所需要的数据,则DNS服务器会代替客户机向其他的DNS服务器查询。
客户机只需接触一次DNS服务器系统,就可得到所需的节点地址。
b)迭代查询(IterativeQuery):
客户机送出查询请求后,若该DNS服务器中不包含所需数据,它会告诉客户机另外一台DNS服务器的IP地址,使客户机自动转向另外一台DNS服务器查询,依次类推,直到查到数据,否则由最后一台DNS服务器通知客户机查询失败。
根据DNS的解析方法可分为以下两种:
1)正向解析(ForwardResolve)功能:
}由DomainName查询出IPAddress。
}使得网络程序能够通过主机域名访问到目的服务器主机。
2)反向解析(Reverseresolve)功能:
}由IPAddress查询出DomainName。
}用于查询连接工作站是属于哪一个网络域。
三、针对某公司一案例分析
某公司包括一个园区网络和一个分支机构,在园区网络中,大约有500名员工,分支机构大约有100名员工,此外还有一些SOHO员工及出差人员。
假定你是该公司的网络管理员,现在公司的网络要进行规划和实施。
现有条件如下:
公司已租借了一个公网的IP地址211.69.22.43,ISP提供了一个公网DNS服务器地址为202.102.66.35。
该公司申请的域名为。
c)项目1.搭建Web服务器
为了对外宣传,要求搭建一台Web服务器,公司的园区网络和分支机构均要求有自己独立的网站。
分别申请的域名为和,并且该Web服务器只有一个IP地址。
d)项目2.搭建DHCP服务器
该公司的园区网络中计划构建一台DHCP服务器来解决IP地址动态分配的问题,要求能够分配IP地址以及网关、DNS等其它网络属性信息。
同时要求DHCP服务器为DNS、Web、FTP及邮件服务器分配固定IP地址。
e)项目3.搭建FTP服务器
该企业还计划构建一台FTP服务器,为企业局域网中的计算机提供文件传送任务。
要求能够对FTP服务器设置连接限制、日志记录、消息、验证客户端身份等属性,并能创建用户隔离的FTP站点。
f)项目4.搭建DNS服务器
为了实现域名解析,该企业还必须构建一台DNS服务器,除负责本企业域的域名解析工作之外,还需提供域名转发功能。
该公司的逻辑拓扑图如下:
图3-1
关于园区网络中的服务器参数如下:
项目
地址
192.168.1.2
192.168.1.3
192.168.1.4
192.168.1.5
Nat路由器
211.69.22.43
DNS转发器
202.102.66.35
表3-1
四、LinuxDNS服务器的配置与管理
3.DNS服务器的分类
1、主域名服务器:
主要负责维护所管辖的域名服务信息。
(包含着该服务器具有管理权的一部分域结构的最精确信息)
2、辅助域名服务器:
主要用于分担主DNS服务器的查询负载。
(从主服务器中复制一整套域信息,不需生成本地文件)
3、缓存域名服务器:
供本地网络上的客户机进行域名转换。
(没有域名数据库,一旦从某个远程服务器取得查询的结果,就存在高速缓存中以便以后查询)
图3-1
4.DNS服务器的配置与管理
3)需求条件分析
根据表3-1的配置信息,将域名解析为相应的ip地址
4)DNS服务的安装
Linux操作系统的与DNS服务相关的软件包有以下几个:
bind:
DNS服务器软件包。
bind-utils:
DNS测试工具,包括dig,host与nslookup等。
bind-chroot:
使BIND运行在指定的目录中的安全增强工具。
caching-nameserver:
高速缓存DNS服务器的基本配置文件,建议一定安装。
Redhat9.0安装命令参数:
先进行查询看是否已经安装DNS协议软件。
rpm–qa|grepbind
如果没有安装则先进行安装:
先挂着Redhat9.0系统光盘的第一张盘。
mount/mnt/cdrom
rpm–ivh/mnt/cdrom/Redhat/RPMS/bind-*
图4-2-1
5)DNS主配置文件的创建
DNS服务器的主配置文件(根区域声明、正向解析声明、反向解析声明;)
路径:
/etc/named.conf
主配置文件如下:
options{
directory"/var/named";
forwarders{
202.102.66.35;//定义DNS转发器
};
forwardfirst;
};
controls{
inet127.0.0.1allow{any;}keys{rndckey;};
};
zone"."IN{//定义根域
typehint;
file"named.ca";
};
zone"localhost"IN{//定义本地正向解析域
typemaster;
file"localhost.zone";
allow-update{none;};
};
zone"0.0.127.in-addr.arpa"IN{//定义本地逆向解析域
typemaster;
file"named.local";
allow-update{none;};
};
zone""IN{//定义正向解析域
typemaster;
file".zone";
allow-update{none;};
};
zone"1.16.172.in-addr.arpa"IN{//定义逆向解析域
typemaster;
file"1.16.172.in-addr.arpa.zone";
allow-update{none;};
};
include"/etc/rndc.key";
6)DNS区域文件的的编辑
区域配置文件位置如下表:
路径
说明
/var/named/localhost.zone
localhost区的正向解析文件
/var/named/named.local
localhost区的反向解析文件
/var/named/
区的正向解析文件
/var/named/1.16.172.in-addr.arpa.zone
区的反向解析文件
表4-2-1
区域文件格式:
[NAME][TTL]INTYPEVALUE
NAME(记录名称)
记录名称的取值:
NAME
注释
空
适用与最后一个带有名字的域对象
.
根域
@
代表默认区域名称
标准域名
以”.”结束的域名,或者相对域名
ip地址
指定某台主机
字符串
说明
区域文件的指令:
指令
说明
$ORIGIN区域名
//设置管辖的默认区域
$TTL数字
//定义缺省的TTL值
$INCLUDE文件的路径
//指定包含的外部配置文件
表4-2-2
TTL(生存周期)
功能:
设置记录被解析后在缓存中保存的最长时间,通常该字段是空字段,这表示使用SOA记录中为整个区域设置的缺省TTL;
对于区域文件里面的VALUE(值)设置记录的值说明如下表:
记录类型
说明
A
主机记录,建立域名与IP地址之间的映射
CNAME
别名记录,为其它资源记录指定名称的替补
SOA
初始授权记录
NS
名称服务器记录,指定授权的名称服务器
PTR
指针记录,用老实现反向查询
MX
邮件交换记录,指定用来交换或在转发邮件信息的服务器
HINFO
主机信息记录,致命CPU与OS
表4-2-3
创建正向查找区域.zone
$TTL86400
@1DINSOA.@.(
42//serial
3H//refresh
15M//retry
1W//expiry
1D)//minimum
INNS.
dnsINA192.168.1.2
ftpINA192.168.1.3
web1INA192.168.1.4
mailINA192.168.1.5
创建反向查找区域1.168.192.in-addr.arpa.zone
创建正向查找区域
$TTL86400
@1DINSOA.@.(
42//serial
3H//refresh
15M//retry
1W//expiry
1D)//minimum
2INPTR.
3INPTR.
4INPTR.
5INPTR.
7)服务的启动与停止
命令:
servicenamedrestart|reload
8)服务重启与客户端测试
C:
\DocumentsandSettings\Administrator>nslookup192.168.1.2
Server:
Address:
192.168.1.2
Name:
Address:
192.168.1.2
C:
\DocumentsandSettings\Administrator>nslookup
Server:
Address:
192.168.1.2
Name:
Address:
192.168.1.2
C:
\DocumentsandSettings\Administrator>nslookup
Server:
Address:
192.168.1.2
Name:
Address:
192.168.1.5
C:
\DocumentsandSettings\Administrator>nslookup
Server:
Address:
192.168.1.2
Name:
Address:
192.168.1.3
9)DNS故障的排除
1检查网络的状态
ping命令
运行netstat-ln查看网络状态
2检查配置文件的正确性
命令
功能
named-checkconf
检查named配置文件语法
named-checkzone
检查区域文件的正确性
实例:
#named-checkconf/etc/named.conf
#named-checkzone/var/named/.zone
g)2查看日志文件
作为一个有经验的DNS管理员﹐在重新启动named服务
之后﹐他一定会检查这个档案:
/var/log/messages
3检查DNS的运行状态
/etc/rc.d/init.d/namedstatus
查看BIND服务器目前的运行状态
4安全选项的设置
主要包括防火墙的配置及其他的安全选项设置等。
五、总结
通过学习《网络操作系统配置与管理》学到很多东西。
尤其对于linux操作系统的学期,是我更加深入的了解www,ftp,mail,dns,dhcp,mail等服务器的工作原理以及流程。
身为大三的学生,即将毕业,能够在学校学校这些使用的东西,对于将来进入社会是很有帮助的。
通过本学期的课程设计,使我能够独自设计一个服务器的一个模块,我学到了很多东西。
学校的管理系统模型在实际中应用的非常成熟,身为学生,对学校的管理流程有一定的了解,因此在需求分析,概念设计时节省很多时间去调查,收集信息分析。
在做这个模块时遇到许多问题需要解决,在配置中可能遇到的各种错误,以及失败的原因是我以后参加工作后的重要的经验。