DNS LINUX BIND


/etc/bind/db.* CONFIGURATION

[name] [TTL] [class] type data

; 引入注释
@ 当前域名的缩写,也可以写完整域名www.google.com.
() 允许数据跨行

NAME
. 以.结尾的是完整域名形式,例如google.com和google.com.的区别,前者是相对名,所以可以和单名组合成型如www.google.com的形式,而后者只能是google.com;
$TTL 用作定义缓存时间。因为一旦服务器的DNS被缓存下载到主机中,就只有下次再下载记录中带有TTL被下到的时候才能够更改,而不能靠DNS服务器去强行要求个人主机更改记录。所以过长时间的缓存TTL会造成安全问题,一旦有不良DNS记录被下载到个人主机而主机又没发现,如果不能既是更改会很麻烦;
CLASS
IN: internet;
TYPE
SOA: Start of Authority 定义一个DNS区域,就是WIN DNS中的地址类名;
NS: Name Server 表示区的服务器,授权子域;
A: IPv4 Address 名字到地址的服务器,正向指针;
PTR: Pointer 地址到名字的转换,反向转换指针;
MX: Mail Exchanger 控制邮件的路由;
CNAME: Canonical Name 主机昵称,别名;
SRV: Service 提供知名服务的位置;
TXT: Text 注释或非键入的信息。

DNS 中的named.conf文件记录了有哪些DNS配置文件是应该调用的,会有如:

zone “ooo.com” {
type master;
file “/etc/bind/db.ooo”;
};

zone “192.in-addr.arpa” {
type master;
file “/etc/bind/db.192”;
};
的配置内容出现。其中,zone后面的是主域名,可以在具体配置文件中以@代表。一个有效的DNS记录配置文件需要正反向两个配置文件协同工作,一个负责将名字转换成IP,一个负责将IP转换成名字。

name     class   type     主名服务器    管理员邮箱root@localhost
@            IN       SOA      NSserver.    root.localhost. (
1 ; Serial  一个REVISION号码,和VTP中的作用一样
604800 ; Refresh   核对时间,以秒为单位,也可加上m,h,d,w表示别的
86400 ; Retry   重试时间
2419200 ; Expire   过期时间
86400 ) ; Negative Cache TTL

IN NS ns.google.com.
ns             IN       A         10.1.1.1
因为名字服务器ns.google.com并不存在于权威DNS服务器的记录中,而是我们自己瞎改的,所以需要在此处添加A类记录,否则DNS会找不到。IN NS那行前面没有@是因为跟上文所以省略了。

*.in-addr.arpa 反向映射文件的写法:

就是把IP地址的顺序,按照域名的规律重写,比如 http://www.google.com 的 IP 是 192.168.11.128, 那么根据域名规则, COM应该是最大的,所以相应的192也就是最大的,所以写的时候反向映射文件可以在zone中宣告为192.in-addr.arpa,而具体文件内容则为:
128.11.168 IN PTR name.ooo.com.
128.11.168 IN PTR http://www.ooo.com.
就是说将IP从右到左反着写。因为192已经包含在主域中,所以不需要宣告了,只用写相对名字128.11.168即可,所以这种同样的文件中可以让一个192文件对应好多IP的反映射域名。

CNAME: 不同名字可以嵌套8层。

nickname [TTL] IN CNAME hostname

例如:
ns IN A 10.1.1.1
mail IN CNAME ns

这里要求如果主机有CNAME,则其他服务如MX或A等要引用的话,就必须用这主机的真是名字,而不能是CNAME。

Advertisements
By Ctrl | Alt | Del Posted in Linux

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s