全部博文(16)
分类: LINUX
2008-11-28 18:50:13
DNS 是指:域名(Domain Name Server)。在Internet上域名与IP地址之间是一一对应的,域名虽然便于人们记忆,但机器之间只能互相认识IP地址,它们之间的转换工作称为域名解析,域名解析需要由专门的域名解析来完成,DNS就是进行域名解析的服务器。
什么是域名解析?
域名解析就是域名到IP地址的转换过程。IP地址是网路上标识您站点的数字地址,为了简单好记,采用域名来代替ip地址标识站点地址。域名的解析工作由DNS服务器完成。
什么是A记录?
A (Address) 记录是用来指定主机名(或域名)对应的IP地址记录。用户可以将该域名下的网站服务器指向到自己的web server上。同时也可以设置您域名的二级域名。 就是说:通过A记录,大家可以设置自己的不同域名转到不同的IP上去!如:将
转到 IP 192.168.10.1
转到 192.168.10.2
mail.yourname.com 转到 192.168.10.3
什么是MX记录?
邮件路由记录,用户可以将该域名下的邮件服务器指向到自己的mail server上,然后即可自行操控所有的邮箱设置。您只需在线填写您服务器的IP地址,即可将您域名下的邮件全部转到您自己设定相应的邮件服务器上。就是将你的域名中邮件服务器分开,将它设置到其他的IP去!比如同样是myweb.com。如果你设置A记录是指向192.168.10.1。而MX记录你设置是指向222.222.222.222。那么你的DNS服务器接收到别人的邮件路由请求时就会将它的请求解释到222.222.222.222上去,而别人访问你的网页的时候仍然是访问192.168.10.1
什么是CNAME记录?
即:别名记录。这种记录允许您将多个名字映射到同一台计算机。 通常用于同时提供WWW和MAIL服务的计算机。例如,有一台计算机名为“host.mydomain.com”(A记录)。 它同时提供WWW和MAIL服务,为了便于用户访问服务。可以为该计算机设置两个别名(CNAME):WWW和MAIL。 这两个别名的全称就是和“mail.mydomain.com”。实际上他们都指向“host.mydomain.com”。
什么是TTL值?
TTL值全称是“生存时间(Time To Live)”,简单的说它表示DNS记录在DNS服务器上缓存时间。要理解TTL值,请先看下面的一个例子:
假设,有这样一个域名myhost.abc.com(其实,这就是一条DNS记录,通常表示在abc.com域中有一台名为myhost的主机)对应IP地址为
一些标记解释:
@ ——这个符号意味着SOA与域是一样的
IN ——IN是提供IP地址的域名类当,与A,PTR或CNAME记录一起使用时可将域名映射为IP地址,反之一样 NS ——域名服务器指定的区域DNS服务器的域名或IP地址
MX ——MX记录定义何种机器来为域或单个主机传送电子邮件,为域定义就是告诉每个人将邮件发送给该域中要与之通信的人或机器
SOA——Start Of Authority 指明其后的域名定义了主域名服务器及该域的联系点的电子邮件地址。
PTR——将IP地址映射为主机名,PTR记录执行与A及记录相反的过程
A——将主机名映射为其IP地址
域名服务器建立示例
1. 环境
假如我们需要建立一个企业主域名服务器
1) 拥有一个B类网段地址,为172.25.16.0
2) 企业域名为:jyp.com
3) 域名服务器IP地址定为172.25.16.63,主机名为hzivy.jyp.com.它同时充当Proxy
4) 要解析的服务器有:
(172.25.16.61) web 服务器
2. 安装前准备工作
首先要保证在客户端的/etc/resolv.conf这个文件。
/etc/resolv.conf文件中内容如下所示:
nameserver 172.25.16.63
3. 配置
1) 配置文件/etc/name.conf
增加
/* zone "." IN { //在这个文件中是用zone关键字来定义域区的,一个zone关键字定义一个域区 */
zone "jyp.com" in {
type master;
file "db.jyp.com"; /* 这里的jyp.com就是你要创建的域,正向解析*/
};
/*在这里type类型有三种,它们分别是master,slave和hint它们的含义分别是:
master:表示定义的是主域名服务器
slave :表示定义的是辅助域名服务器
hint:表示是中根域名服务器
zone "16,25,172.in-addr.arpa" in {
type master;
file "db.172.25.16"; // 反向解析
};
2) 在文件/var/named中建立文件db.jyp.com和db. 172.25.16
Vim db.jyp.com
$TTL 86400
@ IN SOA hzivy.jyp.com. root.hzivy.jyp.com. (
42 ; serial (d.
3H ; refresh
1W ; expiry
1D ) ; minimum
@ IN NS hzivy.jyp.com.
hzivy IN A 172.25.16.63
www IN CNAME hzivy
vim db.16.25.172
$TTL 86400
@ IN SOA hzivy.jyp.com. root.hzivy.jyp.com. (
42 ; serial (d.
3H ; refresh 刷新时间
1W ; expiry 终止时间
1D ) ; minimum TTL生存时间
@ IN NS hzivy.jyp.com.
4. 解释
1) @ /* 上面的IN表示后面的数据使用的是INTERNET标准。而@则代表相应的域名,如在这里代表jyp.com,即表示一个域名记录定义的开始。而 hzivy.jyp.com则是这个域的主域名服务器,而root.hzivy.jyp.com.则是管理员的邮件地址。注意这是邮件地址中用.来代替常见的邮件地址中的@.而SOA表示授权的开始
2) serial (d.
3) refresh:定义的是以为单位的刷新频率 即规定从域名服务器多长时间查询一个主服务器,以保证从服务器的数据是最新的
4) retry:上面的这个值是规定了以秒为单位的重试的时间间隔,即当从服务试图在主服务器上查询更时,而连接失败了,则这个值规定了从服务多长时间后再试
5)expiry:上面这个用来规定从服务器在向主服务更新失败后多长时间后清除对应的记录,上述的数值是以分钟为单位的
6) minimum :上面这个数据用来规定缓冲服务器不能与主服务联系上后多长时间清除相应的记录
5. 测试
1) 启动服务
/etc/init.d/named start
2) 测试工具
linux:host dig ping
win:ping nslookup