UNIX系统管理:DNS域名解析

完成这一章,你将能够做一下事情:

比较三种主机名解析方式:

 /etc/hosts 

 NIS

 DNS/">BIND

使用hosts_to_named命令来配置主DNS服务器

配置辅DNS服务器

配置主机名解析器

配置/etc/nsswitch.conf文件

使用hosts_to_named命令增加/删除DNS数据库中的一个主机。

使用nslookup命令进行DNS服务查错

描述以下配置文件的作用和文件格式:

 /etc/rc.config.d/namesvrs

 /etc/named.boot

 /etc/resolv.conf

1.将主机名解析成为IP地址

IP网络中的系统进行通讯必须依靠Internet地址。用户和应用程序可以通过主机名来查找一个主机,这就要求在数据包发送之前,IP协议层必须将这个主机名翻译成为一个IP地址(例如16.30.0.99)。这个主机名到IP地址之间的转换是在这个网络连接建立之前通过一个gethostbyname()的库函数来实现的。这个库函数也被称为解析器,因为它的作用是将主机名解析为一个IP地址。

同样,反向的解析有时也是必须的;因为有时候,必须将IP地址解析成为一个主机名,例如主机想要验证哪些主机连接到本机就必须通过将连接进来的IP地址映射成为一个名字,通常这个过程被用作鉴权:例如,文件/etc/hosts.equiv,$HOME/.rhosts,或者/etc/exports的使用就是具体例子。将IP地址解析成为主机名是通过调用一个名为gethostbyaddr()库函数而实现的。

维护一个小规模网络中的各个主机中包含有网络中的系统的名字和IP地址的/etc/hosts文件是一件很容易的的事情,而当网络变得很大同时地理上分布更广的时候,维护工作会变得十分困难。这时候就需要用其它的方法来实现域名和IP地址之间的互相解析。

与每一台机器都存储和维护所有主机名和IP地址信息的方式不同,一种称为域名服务器的服务,域名服务器可以由网络中的一个(或者多个)系统组成,其作用是存储并且提供信息,域名系统提供了另外一种与/etc/hosts文件不同的主机名与IP地址转换的方式,DNS常用在大型的网络中提供主机名解析的服务。

当前最常用的名称服务有Network Information Services(包括NIS和NIS+),和Berkeley Internet Name Domain(BIND)服务。

在这一章,我们将学习Berkeley Internet Name Domain 服务。

2.DNS概述

Berkeley Internet Name Domain(BIND)是一种基于RFC 1034/1035"域名"规范的域名系统(DNS)。BIND是由以下三部分组成:

分层的名称空间: 与单层的的名称空间相对应,/etc/hosts文件的域名解析方式就是一种单层的方式。

名称服务器中保存有域的树型结构的信息,这个服务器程序是在系统中是一个叫做named的进程。而提供这个网络服务的主机被叫做域名服务器。

解析器是一种负责将域名解析成为IP地址的程序,各种网络服务都可以调用这种程序,例如telnet,ftp,rcp,rlogin,和其它的网络服务。解析器能判断首先使用哪个名称服务(/etc/hosts,NIS,或者DNS),然后使用指定的服务来将主机名翻译为IP地址。如果使用的是DNS(BIND),解析器就会从域名服务器提取信息,解析器并不是一个特别的进程,解析器只是名称服务器的一个可编程的界面,这些流程被编译进gethostbyname()和gethostbyaddr()流程中。任何执行这些调用的程序会自动调用BIND(如果系统中配置了这个服务).否则会使用NIS或者/etc/hosts文件。在有的系统中,有一个名称服务的开关(一个文件),其作用是指定系统解析域名时使用的方式的先后顺序和组合。

3.DNS层次化的名称空间

域名空间是一种对基于树型结构的网络中的节点进行分层命名的方法,树型结构可以粗略代表一个网络边界分支。

每一个名称空间中的子空间被称为一个域,每一个域都有一个标记,这个标记由一系列的由左到右的圆点分隔的字母组成,如:在sanfran.ca.hp.com这个域名中节点"sanfran"属于域"ca";域"ca"属于域"hp";而域"hp"属于域"com",而域"com"属于“根域”。

最后一个圆点,域名的结尾部分,指出的是绝对域名,这和相对域名相对立,如"sanfran.ca"。

解析器会将相对域名翻译为绝对域名,转换的原则我们会在以后的章节中学到。

4.公共和私有的域名空间

公共的域名空间

如果要将本地网络和一个公众网络相连接,如INTERNET ,就要求要有官方的IP地址和域名。你可以与InterNIC联系,或者通过http://rs.internic.net来进行域名登记。

如果你已经注册了一个域,那么在这个域中,你可以独立地管理你这个域中的计算机,例如你可以在这个域中增加主机,可以自由分配一个属于这个网络地址的主机IP地址给这个主机,而不需要向管理机构注册,同样你也可以在这个域中分配子域,也不需要向管理机构注册,只有你域中的顶级域中的授权的服务器才需要注册。

私有域名空间

在这种情况下,客户的网络和公众网是相互分离的,这样你就可以任意选择域名和IP地址。但是如果将来会有可能连接到INTERNET,最好是去寻求一个正式的IP地址并且遵循命名的惯例。

5.名称服务器

域名服务器可以:

响应客户机的请求,然后将主机名解析为IP地址

划分名称空间

能够将域名解析的请求转发到其它的域名服务器

应该有辅域名服务器来作为备份

举例说明:

ca.hp.com域名服务器

sanfran.ca.hp.com <--->128.1.1.1

oakland.ca.hp.com <--->128.1.1.2

la.ca.hp.com <--->128.1.1.3

有许多不同类型的DNS服务器

主域名服务器

主服务器对它所包含的数据来说是最有权威的(简而言之,由上一级的域赋予它的权利)。它可以,依次,创建子域,并且分配权限。与副服务器相比较而言,主服务器上的信息是最新的信息。

副域名服务器

副域名服务器是一个备份服务器。它包含有主服务器上基本相同的信息。在一个可以设置的时间间隔,它会从主服务器上更新数据。副域名服务器可以选择是否在本地磁盘上保留原始记录。这可以在named.boot中进行配置。

缓存服务器

缓存服务器不在本地的磁盘上存储数据。所有的数据都是放在系统的缓存中。在多用户系统中使用缓存服务器可以加速域名查询的速度。缓存服务器提供一个非正式的备份方式,与在本地存储数据的副域名服务器相比较,这种方式最大的优点是:在一个新的子域加入到一个主域名服务器中时,它不需要更新本地DNS数据库中的数据。

时间: 2024-09-20 07:36:36

UNIX系统管理:DNS域名解析的相关文章

DNS域名解析

From:http://blog.csdn.net/yipiankongbai/article/details/25031461  一.域名系统 1.域名系统概述         域名系统DNS(Domain Name System)是因特网使用的命名系统,用来把便于人们使用的机器名字转换成为IP地址.域名系统其实就是名字系统.为什么不叫"名字"而叫"域名"呢?这是因为在这种因特网的命名系统中使用了许多的"域(domain)",因此就出现了&qu

那些年,我们一起用过的DNS域名解析服务商

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断淘宝客 站长团购 云主机 技术大厅 先来解释一下什么是DNS,DNS的全称是Domain Name Server或Domain Name System,中文翻译应该是域名解析服务器.是因特网的一项核心服务,它作为可以将域名和IP地址相互映射的一个分布式数据库,能够使人更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串. 相信站长们对这个都不陌生,并且有大部分站

dns域名解析问题

问题描述 请问怎么实现dns域名解析 解决方案 解决方案二:SERVER服务器中有个组件就是DNS设置的估计楼主是问网站的事,网站建立后,主机头设为IP,就会自动解析的.

C++如何实现DNS域名解析_C 语言

一.概述 现在来搞定DNS域名解析,其实这是前面一篇文章C++实现Ping里面的遗留问题,要干的活是ping的过程中画红线的部分: cmd下域名解析的命令是nslookup,比如"nslookup www.baidu.com"的结果如下: 其中,Address返回的就是www.baidu.com对应的IP地址,这个可能有多个 Alias指别名,也就是说www.baidu.com是www.a.shifen.com的别名,而www.a.shifen.com则是www.baidu.com的规

Webmin 1.560发布 基于Web的Unix系统管理工具

Webmin 1.560该版式本有一些重大的更新包括翻译更新,网络桥接的支持,一个新的文本登录模块不再需要Java的支持,GPT支持大硬盘,支持CentOS 6等等. Webmin是目前功能最强大的基于Web的Unix系统管理工具.管理员通过浏览器访问Webmin的各种http://www.aliyun.com/zixun/aggregation/17569.html">管理功能并完成相应的管理动作.目前Webmin支持绝大多数的Unix系统,这些系统除了各种版本的linux以外还包括:A

DNS.COM免费DNS域名解析服务并且开通安全宝加速

仅仅是出于域名容易管理角度考虑,我们网站建设过程中需要用到域名解析的时候肯定会选择第三方DNS域名解析服务商,即便是免费的也比域名平台原始提供的稳定一些,毕竟大部分域名注册平台仅仅提供域名注册服务,稳定的解析服务还是第三方专注的商家专业一些. 如果我们是中文网站,一般用户会选择DNSPOD.CLOUDXNS.万网阿里DNS等等,或者直接使用第三方CDN加速服务商的DNS解析:如果是英文网站可以选择Namecheap免费DNS服务.HE.NET以及CLOUDFLARE居多.整体来看,一般免费DNS

使用Java实现DNS域名解析的简单示例_java

普通的域名解析方法: import java.net.*; public class Kkkk { public static void main(String args[]) throws Exception { InetAddress address = InetAddress.getByName("wxh-PC");// wxh-PC是我的计算机名 System.out.println(address); System.out.println("-----")

如何做反向DNS域名解析

假设您的服务器IP是211.147.9.106 1) 首先您要知道这个IP的反向域名解析是由哪台DNS服务器负责的.您可以用这个网页查询反向域名解析信息 http://www.dnsstuff.com/tools/ptr.ch?ip=211.147.9.106 看最后一段 Details: ns.cnc.ac.cn.(an authoritative nameserver for 147.211.in-addr.arpa., which is in charge of the reverse D

DNS域名解析相关资料大全

1.什么是DNS记录? 每个域名解析都应当有至少一个DNS服务器.DNS服务器记录应当填写主机名,而且是正式注册过的合法的DNS服务器.在修改DNS记录时请务必慎重,否则有可能造成域名不能正常解析. 2.什么是邮件记录?  每个域名解析都应当有至少一个邮件服务器记录.邮件服务器记录应当填写主机名.通常是mail,然后在下面的子域名解析中有一个mail子域名的IP地址记录,最终指向邮件服务器的IP. 3.什么是IP地址记录?  IP地址记录就是将一个子域名解析到某个IP地址.常用的IP地址记录有w