首页 | 邮件资讯 | 技术教程 | 解决方案 | 产品评测 | 邮件人才 | 邮件博客 | 邮件系统论坛 | 软件下载 | 邮件周刊 | 热点专题 | 工具
网络技术 | 操作系统 | 邮件系统 | 客户端 | 电子邮箱 | 反垃圾邮件 | 邮件安全 | 邮件营销 | 移动电邮 | 邮件软件下载 | 电子书下载

操作系统

Windows 9X | Linux&Uinx | Windows Server | 其它操作系统 | Vista | FreeBSD | Windows 7 |
首页 > 操作系统 > Linux&Uinx > 构建DNS服务器简易指南 > 正文

构建DNS服务器简易指南

出处:linuxaid.com.cn 作者: fjxufeng 时间:2004-9-7 23:02:00
在用TCP/IP协议族架设的网络中,每一个节点都有一个唯一的IP地址,用来作为它们唯一的标志。然而,如果让使用者来记住这些毫无记忆规律的IP地址将是不可想象的。人们就需要一种有记忆规律的字符串来作为唯一标记节点的名字。

  然而,虽然符号名对于人来说是极为方便的,但是在计算机上实现却不是那么方便的。为了解决这个需求,应运而生了一个域名服务系统DNS,它运行在TCP协议之上,负责将字符名--域名转换成实际相对应的IP地址。这个过程就是域名解析,负责域名解析的机器就叫域名服务器。

  1、域名解析的方法

  1.1 最早的域名解析方法

  最简单的主机名解析方法是,在一个文件中记录所有主机名及与其对应的IP地址,并保证该文件中主机名的唯一性,通过检索文件中的便可以完成主机名的解析。采用这种最简单的解决方法有其历史原因:
在整个70年代,APRANET只是一个小规模的,由类似的数百台主机组成的团体。于是为了解决主机名解析的问题,将连接到ARPANET上每台主机的名字与对应的地址都保存在HOSTS.TXT文件中。这样每增加一台机器,就必须修改HOSTS.TXT文件一次。随着网络的不断发展,网络中的主机数量爆炸性地增加,这种域名解析的方法已经无法适应新的解析需要。

  1.2 分布式的域名服务器

  这种方法,我们已经在基础篇的第六章中有了详细的叙述,在此就不再重复了。在这种分布式的域名服务器体系中,每一台域名服务器(DNS)负责解析属于自己的这一部分主机的域名。
一般说来,如果你所处在公司或组织所拥有的主机并不多,一般是将域名的解析工作交给自己的ISP的域名服务器来完成。而如果你所在组织拥有的主机比较多,我们就可以组建自己的域名服务器负责解析你所在组织的主机。

  2、域名服务器建立实例

  2.1 实例环境

  假设我们需要建立一台应用于以下情况的一个企业主域名服务器。

  1. 拥有一个C类网段地址,为202.101.55.0

  2. 企业域名注册为company.com。

  3. 域名服务器的IP定为202.101.55.55,主机名为dns.company.com。它同时充当Proxy.

  4. 企业网通过路由器与Internet连接。

  5. 要解析的服务器有:

  www.company.com (202.101.55.1) Web服务器
  mail.company.com (202.101.55.2) E-Mail服务器
 2.2 安装前的准备工作

  首先要保证在作为系中统有/etc/resolv.conf和/etc/hosts.conf这两个文件。/etc/resolv.conf文件中内容如下所示:

  domain compay.com
  nameserver 202.101.55.55

  其中第一行指出对于任何希望连到它上面的主机应该搜寻的域。而第二行指出了在哪个地址可以找到需要的域名服务大。/etc/hosts.conf的内容如下所示:

  order hosts,bind
  multi on

  这里的设置告诉主机名称先在/etc/hosts文件中搜索,然后再查询域名服务器。

  2.3 定义文件/etc/named.boot

  要使LINUX系统完成域名服务器的功能,则需要运行一个named的服务进程。这个服务进程可以在安装LINUX时选中。

  named启动时需要读取一个初始化文件--/etc/named.boot,这个文件是named的基本配置文件。它并不包含任何DNS数据,针对前面的假定环境,我们要在这个文件中写入:

  diretory /etc/named
  primary company.com db.company
  primary 0.0.127.IN-ADDR.ARPA db.127.0.0
  primary 55.101.202.IN-ADDR.ARPA db.202.101.55
  cache . db.cache

  下面我们逐行讲解这个文件中的内容:

  1) 在第一行中我们指定named从/etc/named目录下读取DNS数据文件。这个目录可以自行指定并创建,指定后将所有的DNS数据文件均存放在这个目录下;

  2) 第二行指定named作为company.com的主域名服务器,db.company文件中包含了所有*.my.com形式的域名的解析数据。

  3) 第三行则指定named作为127.0.0网段(本地loopback)地址的转换主服务器。其中db.127.0.0文件中包含了所有127.0.0.*形式的地址到域名的转换数据。

  4) 第四行指定named作为202.101.55网段地址转换主服务器,db.202.101.55文件中包含了所有以202.101.55.*形式的地址到域名的转换数据。

  5) 最后一行指定named从db.cache文件中获得Internet的顶层"根"服务器地址。要说明的是,这些数据文件的名称均是自行决定的。
  2.4 建立正向域名转换数据文件db.company

  根据/etc/named.boot文件中的定义,我们在/etc/named目录下建立文件db.company,并且在其中写入所有在company.com域内的主机节点。根据前面假定的环境,可以写入:

  @ IN SOA dns.company.com. root.dns.company.com.(
  200002011 ;文件版本号
  28800 ;刷新时间(秒)
  7200 ;重试时间(秒)
  3600000 ;终止时间(秒)
  86400) ;TTL生存时间(秒)
  IN NS dns.company.com
  www IN A 202.101.55.1
  email IN A 202.101.55.2
  proxy IN CNAME

  下面我们就逐句地理解这里的配置。

  1. SOA是主服务器设定文件中一定要设定的命令,我们通常将它放在文件的第一行。

  1) 最前面的符号"@"代表目前所管辖的域。

  2) 接着的"IN"代表地址类别,这里就是固定使用"IN"的。

  3) 接下来就是命令SOA。

  4) 接下来填入域名服务器,记住由于DNS数据文件的特殊格式规定,在最后一定要加上"·",在这个例子中,我们填入域名服务器:"dns.company.com."

  5) 接下来是域名服务器管理员的E-MAIL地址,但要注意的是,E-Mail地址中的分隔符"@"在这里用"·"来代替,在最后也要加上"。",在这里,我们相应写入:"root.dns.company.com."

  6) 接下来在括号内填上各种选项:

  文件版本号:当你修改这个文件的内容时,也要修改这个版本序列号。以此来区分是否有更新。

  更新时间:指定二级服务器向主服务器拷贝数据的更新时间周期。

  重试时间:指定二级服务器在更新出现通信故障时的重试时间。

  终止时间:指定二级服务器重新执行更新动作后仍然无法完成更新任务而终止更新的时间。

  生存时间:指定当域名服务器询问某个域名和其IP地址后,在域名服务器上放置的时间。
 注:二级服务器所设定的域名服务器是主服务器的备份主机。

  2. 在第二行中,我们用NS命令指定这个域的域名服务器。在这里我们指出这个域的域名服务器是"dns.company.com"。

  3. 接下来的两行我们使用A命令来指定域名与IP地址的对应关系。我们将Web服务器的域名www.company.com与其IP地址202.101.55.1对应起来;将E-Mail服务器的域名mail.company.com与其IP地址202.101.55.2对应起来。

  4. 最后一行,我们使用了CNAME命令为dns.company.com指定了另一个域名以供使用:proxy.company.com。

  2.5 建立反向域名转换数据文件db.127.0.0和db.202.101.55

  反向域名转换数据文件用来提供IP地址查询相应的DNS主机名,每个网段分别有一个数据文件。

  1. 网段127.0.0通常只有一个地址,那就是127.0.0.1 loopback地址。所以我们在db.127.0.0中写入的内容是:

  @ IN SOA dns.company.com. root.dns.company.com.(
  200002011 ;文件版本号
  28800 ;刷新时间(秒)
  7200 ;重试时间(秒)
  3600000 ;终止时间(秒)
  86400) ;TTL生存时间(秒)
  IN NS dns.company.com
  1 IN PTR localhost

  前面两名相信读者已经不会陌生,最后一句我们使用PTR命令让配置文件中的主机可以使用IP地址来知道所对应的域名。

  最前面的1代表127.0.0.1,对应的域名就是localhost。

  2.网段202.101.55就可能会存在更多的记录,前面假定环境下的设置应是:

  @ IN SOA dns.company.com. root.dns.company.com.(
  200002011 ;文件版本号
  28800 ;刷新时间(秒)
  7200 ;重试时间(秒)
  3600000 ;终止时间(秒)
  86400) ;TTL生存时间(秒)
  IN NS dns.company.com
  1 IN PTR www
  2 IN PTR email
  55 IN PTR dns
  55 IN PTR proxy
 2.6 获得db.cache文件

  在LINUX系统中通常在提供了一个named.ca的文件,该文件中Internet的顶层域名服务器,但是这个文件通常会发生变化,所以建议最好从Internet上下载最新的版本。该文件可以通过匿名FTP从ftp.rs.internic.net/domain下载,文件名是named.boot。将它拷贝一份为db.cache就可以了。

  3、测试域名服务器

  3.1 使用nslookup测试

  nslookup命令的功能是查询域名服务器中的数据资料。下例就是使用它来测试域名服务器是否架设成功,其中斜体字代表要输入的内容。

  # nslookup
  Default server:dns.company.com

  Address:202.101.55.55 ;能出现这些信息代表成功

  > www
  server:dns.company.com
  Address:202.101.55.1

  3.2 使用ping测试

  还有一种更简单的测试方法,那就是用ping命令,如果成功将显示:

    # ping www.company.com
    Ping www.company.com(202.101.55.1);56 data bytes
    64 bytes from 202.101.55.1:icmp_seq=0 ttl=255 time=1.3ms
    64 bytes from 202.101.55.1:icmp_seq=1 ttl=255 time=0.6ms
    64 bytes from 202.101.55.1:icmp_seq=2 ttl=255 time=0.6ms
    ……

  8.4 小技巧

  安装好域名服务器后,在内部使用域名进行远程连接时,会发现速度非常慢。其实只要/etc/hosts中加上所有内部的机器的域名就可以了。

,
相关文章 热门文章
  • DNSstuff收费后的选择
  • 了解Exchange如何处理失败的DNS查询
  • DNS的麻烦
  • 在Exchange环境里解决DNS问题
  • 奇怪 DNS 故障之终极解决
  • RoundCube Webmail DNS预读域名信息泄露漏洞
  • 消息称百度DNS信息被修改至雅虎
  • Google发布公共DNS服务 速度更快安全性更高
  • IMailServer配置完整DNS设定
  • 19.2.2 Mail Server与DNS之间的关系
  • 垃圾邮件制造者的战略新目标:DNS
  • 防不胜防 带你了解DNS缓存中毒攻击原理
  • linux的基本操作(上)
  • Linux系统下应用知识大荟萃
  • GNU GRUB启动管理器
  • 制作基于软盘的Linux系统
  • 网络配置文件快速解读
  • linux的基本操作(下)
  • 剖析Linux系统启动过程
  • DameWare让局域网管理不再繁琐
  • 在Redhat 9下实现双机热备和集群功能
  • LINUX守护进程介绍
  • Redhat advance server 2.1集群的安装与管理
  • Linux必须学会的60个命令-文件处理
  • 自由广告区
     
    最新软件下载
  • SharePoint Server 2010 部署文档
  • Exchange 2010 RTM升级至SP1 教程
  • Exchange 2010 OWA下RBAC实现的组功能...
  • Lync Server 2010 Standard Edition 标..
  • Lync Server 2010 Enterprise Edition...
  • Forefront Endpoint Protection 2010 ...
  • Lync Server 2010 Edge 服务器部署文档
  • 《Exchange 2003专家指南》
  • Mastering Hyper-V Deployment
  • Windows Server 2008 R2 Hyper-V
  • Microsoft Lync Server 2010 Unleashed
  • Windows Server 2008 R2 Unleashed
  • 今日邮件技术文章
  • 腾讯,在创新中演绎互联网“进化论”
  • 华科人 张小龙 (中国第二代程序员 QQ...
  • 微软推出新功能 提高Hotmail密码安全性
  • 快压技巧分享:秒传邮件超大附件
  • 不容忽视的邮件营销数据分析过程中的算..
  • 国内手机邮箱的现状与未来发展——访尚..
  • 易观数据:2011Q2中国手机邮箱市场收入..
  • 穿越时空的爱恋 QQ邮箱音视频及贺卡邮件
  • Hotmail新功能:“我的朋友可能被黑了”
  • 入侵邻居网络发骚扰邮件 美国男子被重..
  • 网易邮箱莫子睿:《非你莫属》招聘多过..
  • 中国电信推广189邮箱绿色账单
  • 最新专题
  • 鸟哥的Linux私房菜之Mail服务器
  • Exchange Server 2010技术专题
  • Windows 7 技术专题
  • Sendmail 邮件系统配置
  • 组建Exchange 2003邮件系统
  • Windows Server 2008 专题
  • ORF 反垃圾邮件系统
  • Exchange Server 2007 专题
  • ISA Server 2006 教程专题
  • Windows Vista 技术专题
  • “黑莓”(BlackBerry)专题
  • Apache James 专题
  • 分类导航
    邮件新闻资讯:
    IT业界 | 邮件服务器 | 邮件趣闻 | 移动电邮
    电子邮箱 | 反垃圾邮件|邮件客户端|网络安全
    行业数据 | 邮件人物 | 网站公告 | 行业法规
    网络技术:
    邮件原理 | 网络协议 | 网络管理 | 传输介质
    线路接入 | 路由接口 | 邮件存储 | 华为3Com
    CISCO技术 | 网络与服务器硬件
    操作系统:
    Windows 9X | Linux&Uinx | Windows NT
    Windows Vista | FreeBSD | 其它操作系统
    邮件服务器:
    程序与开发 | Exchange | Qmail | Postfix
    Sendmail | MDaemon | Domino | Foxmail
    KerioMail | JavaMail | Winwebmail |James
    Merak&VisNetic | CMailServer | WinMail
    金笛邮件系统 | 其它 |
    反垃圾邮件:
    综述| 客户端反垃圾邮件|服务器端反垃圾邮件
    邮件客户端软件:
    Outlook | Foxmail | DreamMail| KooMail
    The bat | 雷鸟 | Eudora |Becky! |Pegasus
    IncrediMail |其它
    电子邮箱: 个人邮箱 | 企业邮箱 |Gmail
    移动电子邮件:服务器 | 客户端 | 技术前沿
    邮件网络安全:
    软件漏洞 | 安全知识 | 病毒公告 |防火墙
    攻防技术 | 病毒查杀| ISA | 数字签名
    邮件营销:
    Email营销 | 网络营销 | 营销技巧 |营销案例
    邮件人才:招聘 | 职场 | 培训 | 指南 | 职场
    解决方案:
    邮件系统|反垃圾邮件 |安全 |移动电邮 |招标
    产品评测:
    邮件系统 |反垃圾邮件 |邮箱 |安全 |客户端
    广告联系 | 合作联系 | 关于我们 | 联系我们 | 繁體中文
    版权所有:邮件技术资讯网©2003-2010 www.5dmail.net, All Rights Reserved
    www.5Dmail.net Web Team   粤ICP备05009143号