在之前的12个小节我们对DNS的基础、以及Windows的DNS系统作了较详细的描述,下面的几节主要是说一些有关DNS应用方面的内容。
DNS记录
如果把DNS的体系结构比喻成一棵倒挂的大树,那么毫无疑问,每一条记录就是组成这棵大树必不可少的枝叶了。所谓的DNS记录,其实就是具有特殊功能的一个个数据条目。在windows的DNS中,这些条目一旦被创建后,就可以实现各式的功能,比如创建一条A记录,就可以为客户端提供某个域名到IP的正向解析功能等。当然,DNS记录分为很多种,各有各的用途。进入DNS管理系统,我们可以在这里看到。如下图:
尽管这里列出了几十种DNS记录,这里只说说我们接触较多几类记录。
A记录
当我们想获取一个域名对应的IP地址,或通过域名方式访问某一网页或程序,此时就需要在这个域名和所属的IP地址间创建一个映射关系。这个关系就是利用在DNS中为此名称创建的A记录。而这个名称可以理解成是某台主机的计算机名如www,它的IP是192.168.1.100,同时,在这台主机安装IIS并创建一个测试页面。当DNS服务器上存在一个abcdef.com的区域,同时,将www这台主机的主DNS后缀设为abcdef.com,现在,我们想在局域网内实现通过www.abcdef.com就可以访问那个测试页面,那么就需要在DNS上做一个A记录,目的是把www.abcdef.com和192.168.1.100对应起来,如下图:
按照上述步骤创建完成后,如下图:
在列表中会出现一条A记录,同时这个条记录的对应的FQDN就是www.abcdef.com,我们来验证一下创建的结果,如下图:
因为试验环境里没有192.168.1.100这台计算机,所以ping无法通过,但如果真实存在的话,那就不会有什么问题,同时访问测试页面也会很顺利(此处不再演示)。我们可以为一个域名添加多个IP,同一IP也可以对应多个主机名。这样做的目的是可以实现简单的冗余访问。
以上是本地DNS的A记录操作方法,如果你有一个付费域名,想让用户通过它来访问某个网站,那么就需要在该域名的控制台上添加DNS记录,这里以易名中国为例,进入域名管理界面,如下图:
上图有一个域名zenter.cn,点击右侧的[管理],就可以对这个域名做进一步的操作。
如下图:
上图是这个域名的概览页面,点击下方的[解析管理]就可以添加或删除DNS记录了。
如下图:
按照上述文字说明,主机名为www,IP地址为192.168.1.100即可。这样就创建了一条A记录,当访问www.zenter.cn时,DNS服务器会自动解析到IP为192.168.1.100的主机。
总的来说,A记录即address记录,目的是标识出一条特定的域名到IP地址的记录。
CNAME记录
CNAME记录,即别名记录。我们通过设置别名记录,可以将多个名称指向同一台服务器。比如有台名为server的主机上提供邮件和网页服务,我们可以设置www和mail这2个名称的别名记录指向这台服务器,用户可以通过www.zenter.cn和mail.zenter.cn来访问各自需要的服务,但实际上目标都是同一台服务器。
这里做个演示,如下图:
首先建立一个A记录,这个是创建CNAME记录的基础。
A记录创建完成后,继续下一步,如下图:
我们选择【新建别名(CNAME)】,创建方法如上。创建完成后,如下图:
请大家留意上图中的DNS记录的类型。创建完成后通过命令来验证一下,如下图:
对于CNAME记录如何转换到A记录上这个问题,我们不用深究,这个过程是在DNS内部实现的。
MX记录
MX记录即Mail Exchanger,主要用于邮件服务器,作用是用于定位邮件服务器的地址。如一个用户给user@abcdef.com的用户要发封邮件,此时该用户的所属的邮件系统会通过DNS服务器来查找abcdef.com这个域名的MX记录,如果存在,就会根据这个MX记录来查找对应的A记录,从而得到邮件服务器的IP地址,并将这封邮件发送到这台服务器上。可见,MX记录和A记录是分不开的。总的来说,MX记录是为了让对方找到你的邮件服务器,所以,如果想顺利收信,就必须为你的邮件服务器创建合法有效的MX记录。
我们现在给mail这个主机创建一个MX记录(A记录创建过程省略)。如下图:
其实,如果新建一条主机名为email的A记录,只要和主机mail指向的IP一样,再在这个基础上做MX记录,效果是一样的。也就是说,MX记录所对应的A记录的IP一定要是你的邮件服务器的IP,这样才可以被外部邮件系统正确识别。如果有多台邮件服务器,并已组成集群,然后为每一个服务器都创建一个A记录和对应的MX记录,此时每个MX记录就可以使用不同的优先级了。
依旧以易名网上的zenter.cn域名为例,来看一下在域名控制台上如何做MX记录。
如下图:
那这两种设置方式不同会有什么异同呢?我们用nslookup命令检查一下,如下图:
其实这个差别是很小的,在查询的时候就可以看到了。通常情况下建议以主机名为主,因为并不是每个域名商都允许这样设置,比如万网,在做MX记录时,只允许输入域名,而不能是其他值。如下图:
所以建议按照规范来创建MX记录。
NS记录
之所以最后讲NS记录,是因为平时我们几乎不用去创建NS服务器,因为大多数域名商默认用自己的NS服务器来解析用户的DNS记录,当然,如果你可以自建NS服务器。不过前提是,你需要在本地DNS服务器上创建好NS记录,并将此DNS服务器IP告之对应域名商,只有他们将此IP登记到互联网上后,本地的NS服务器才可以正常解析DNS请求。
但无论怎么样,首先必须要有一个合法的域名,这一步是不可或缺的。以zenter.cn为例,然后搭建一个DNS服务器,可能用windows的DNS或Linux下的BIND。然后创建了2条NS记录,ns1.zenter.cn和ns2.zenter.cn,它们对应的IP都是1.1.1.1。然后我将此IP地址告之易名中国,他们会将这个IP在互联网中心注册,大约48到72小时后就可全球生效,这样我这台DNS就可以创建A记录、MX记录等了。也就等同于,这台DNS服务器是面向公网服务的。
那么,我可以用这个NS服务器用来解析其他的域名,要做的只是将域名商默认的NS服务器替换成ns1.zenter.cn和ns2.zenter.cn。如下图:
本节较详细的描述了有关A记录、CNAME记录、MX以及NS记录的内容,希望对大家能有所帮助。