+++++++++++++++++++++++++++++++++++++++++++
秀脱linux实战笔记之dns篇:
下载该文章:dns配置.txt
QQ: 6541657
EMAIL:xiutuo@gmail.com
--------------------------
其他附件下载:dns_config_files_centos.rar
1./etc/sysconfig/network
2./etc/sysconfig/network-scripts/ifgcfg-eth0
3./etc/named.conf
4. /var/named/chroot/var/named/xiutuo.com.db
5. /var/named/chroot/var/named/192.168.1.db
6./etc/resolv.conf
7./var/named/chroot/var/namedlocaxtost.zone
8./var/named/chroot/var/namednamed.local
将以上文件修改相关ip和域名替换到自己系统
相应的位置,既可使dns工作
++++++++++++++++++++++++++++++++++++++++++
------------------------------------------
环境:
centos4.5内核2.6.9-55.EL
bind-9.2.4-24.EL4
主机名xt
ip:192.168.1.230
域名:xt.xiutuo.com
别名:www.xiutuo.com
正向解析文件xiutuo.com.db
反向解析文件192.168.1.db
------------------------------------------
一:dns服务端配置
1.修改主机名
a./etc/sysconfig/network
内容:
NETWORKING=yes
HOSTNAME=xt //主机名(没有这行?那就添加这一行吧)
GATEWAY=192.168.1.1
b.运行命令:
#hostname xt
//xt为主机名
c.重新启动计算机:
#shutdown -r now 或者reboot……
2.设置主机ip
a./etc/sysconfig/network-scripts/ifcfg-eth*
(上面的*代表0,1,2,3……n,如果只有一个网卡
则eth0-cfg)
内容:
DEVICE=eth0 //网卡1,我机器只有一块网卡
BOOTPROTO=none //网络使用的协议,可以是静态分配-static,也可以是动态分配-dhcp
BROADCAST=192.168.1.255 //广播地址
IPADDR=192.168.1.230 //本机ip--这里就是设置的ip拉
NETMASK=255.255.255.0 //子网掩码
NETWORK=192.168.1.0 //网络地址
ONBOOT=yes //是否在开机时启动该网卡
USERCTL=no //不允许客户端修改配置
PEERDNS=no
TYPE=Ethernet //网卡类型-以太网卡
b.用root停止/启动网卡1,重起网络服务,分别执行下面命令
#ifdown eth0
#ifup eth0
#service network restart
或者 /etc/rc.d/init.d/network restart
3.域名配置
a.正向解析和反向解析配置文件的定义:
编辑:/etc/named.conf内容如下
// generated by named-bootconf.pl
options {
directory "/var/named";
/*
* If there is a firewall between you and nameservers you want
* to talk to, you might need to uncomment the query-source
* directive below. Previous versions of BIND always asked
* questions using port 53, but BIND 8.1 uses an unprivileged
* port by default.
*/
// query-source address * port 53;
};
//
// a caching only nameserver config
//
controls {
inet 127.0.0.1 allow { locaxtost; } keys { rndckey; };
};
zone "." IN {
type hint;
file "named.ca";
};
zone "locaxtost" IN {
type master;
file "locaxtost.zone";
allow-update { none; };
};
zone "0.0.127.in-addr.arpa" IN {
type master;
file "named.local";
allow-update { none; };
};
//以下为正向和反向解析文件的定义,
//在/var/named/chroot/var/named/用touch命名生成xiutuo.com.db和192.168.1.db文件
//然后ln -s /var/named/chroot/var/named/xiutuo.com.db /var/named/xiutuo.com.db
//然后ln -s /var/named/chroot/var/named/192.168.1.db /var/named/192.168.1.db
zone "xiutuo.com" IN {
type master;
file "xiutuo.com.db";
};
zone "1.168.192.in-addr.arpa" IN {
type master;
file "192.168.1.db";
};
b.在/var/named/chroot/var/named/生成xiutuo.com.db和192.168.1.db
# touch xiutuo.xiutuo.com.db
# ln -s /var/named/chroot/var/named/xiutuo.com.db /var/named/xiutuo.com.db
# touch 192.168.1.db
# ln -s /var/named/chroot/var/named/192.168.1.db /var/named/192.168.1.db
c. 正向解析文件xiutuo.com.db内容如下:
$TTL 86400
$ORIGIN xiutuo.com.
@ IN SOA xt.xiutuo.com. root.xt.xiutuo.com. (
20060415 ; serial (d. adams)
28800 ; refresh
7200 ; retry
604800 ; expiry
86400 ) ; minimum
IN NS xt.xiutuo.com.
IN MX 10 mail.xiutuo.com.
@ IN A 192.168.1.230
xt IN A 192.168.1.230
mail IN A 192.168.1.230
www IN CNAME xt
xiutuo.com.db注释:
$TTL 86400
//预设TTL值为86400秒,刚好是一天,这个值设不设置都没有关系,
//只是在启动域名服务时候会出现一些告警信息
$ORIGIN xiutuo.com.
//记录出源于何处,这里是出于xiutuo.com.这个域
//记得xiutuo.com.后面的点,少一个点和多一个点意义完全不一样!
//在dns记录中,这个点代表全域名称,即:FQDN (Fully Qualified Domain Name)
//总之,不能把该点去掉!!
@ IN SOA xt.xiutuo.com. root.xt.xiutuo.com. (
//资源记录,其中@它就是 ORIGIN 的意思,刚才定义的$ORIGIN xt.xiutuo.com.就可以用@来代替
IN﹐定义出目前记录类型属于 internet class (奇怪)
IN之后的就是这行RR记录类别名称这里是SOA,也就是Start Of Authority的意思,
表示目前区域授权记录的开始,每一个记录只能有一个SOA,不得重复,
而且必须是所负责的zone中的第一个“记录”,
SOA后面,指定了这个区域的授权主机和管理者的信箱,这里分别是@和root,
也就是xt.xiutuo.com.主机和信箱。
这里要注意的是:SOA主机名称必须能够在DNS系统中找到一个A记录
另外我们平时使用的信箱通常是“user@host”这样的格式,但因为“@”在DNS中是保留字符,
所以用“.”代替“@”,这里的信箱root.xt.xiutuo.com.代替了root@xt.xiutuo.com.
20060415 ; serial (d. adams)
28800 ; refresh
7200 ; retry
604800 ; expiry
86400 ) ; minimum
//serial,refresh,retry,expiry,minimum这5组数字,
主要作为和slave服务器同步DNS资料所使用的数据。
serial:格式通常会是“年月日+修改次序”(但也不一定如此,自己能记得就行)。
当slave要进行资料同步的时候,会比较这个数字。
Serial数值范围[0到4294967295]
Refresh:是告诉slave要隔多久进行资料同步(是否同步要看 Serial 的比较结果)
Retry:如果 slave 在进行更新失败后﹐要隔多久再进行资料同步。
Expire:这里是记录逾期时间,当slave一直未能成功与master取得联系,那到这里就放弃retry,
同时这里的资料也将视为过期
Minimum:这里是最小预设TTL值,如果你在前面没有用“$TTL”俩定义,就会以此值为准
以上的数字都是以秒为单位 ,当然你也可以用H(小时)﹑D(天)﹑W(星期)来作单位,
如﹕3H 和 259200 是一样的。值得一提的是:在 RH6.2 版本中使用netconf工具来设定DNS,
发现只能用秒来设定。无论你用什么单位,都要遵循如下规则:
expire >= refresh + retry
expire >= 10 * retry
格式注意:SOA记录中这对“ ( ) ”括号的第一个“ (”括号一定要和 SOA写在同一行,
千万不能用回车-enter断行到下一行去,而且其左边最好有一个空格键或tab键;
后一个“ )”括号也不能写在注释符号“;”的右边!
IN NS xt.xiutuo.com.
//IN前面用空格或tab键盘代替@,这句也可以用
@ IN NS xt.xiutuo.com.
来表示,NS是name server,这句的意思:name server就是这台xt.xiutuo.com.机器
xt IN A 192.168.1.230
//A 代表主机名对应的ip,
IN MX 10 xt.xiutuo.com.
//等级为10的一条邮件记录,等级数字越大优先级越低
www IN CNAME xt
//CANME主机别名
d.反向解析文件192.168.1.db内容如下
$TTL 86400
@ IN SOA xt.xiutuo.com. root.xt.xiutuo.com. (
20060415 ; serial (d. adams)
28800 ; refresh
7200 ; retry
604800 ; expiry
86400 ) ; minimum
IN NS xiutuo.com.
230 IN PTR xt.xiutuo.com.
230 IN PTR mail.xiutuo.com.
195 IN PTR lh.xiutuo.com.
//其中$TTL,@,SOA等不多解释了
这里的PTP就是方向解析拉,即ip对应域名,最后一句也可以写成
230.1.168.192.in-addr.arpa. IN PTR xt.xiutuo.com.
4.启动域名服务
#/etc/rc.d/init.d/named start
或者#service named restart
5.启动完了后查看named启动日志,查看/var/log/messages文件的后20行就行了,
根据messages信息的提示,修改以上步骤的配置文件,直到格式和语法都正确为止
#tail -f 20 /var/log/messages
6.用nslookup/host/dig命令俩检测DNS的配置有没有达到预期的目的
如:
#host xt.xiutuo.com
#host -t any xt.xiutuo.com 0.0.0.0
#dig xt.xiutuo.com
……
二:dns客户端的配置
a. linux客户端的配置/etc/resolv.conf
内容如下:
nameserver 192.168.1.230
domain xiutuo.com
search xiutuo.com
b.windows xp/2000客户端的配置
网络连接-属性-TCP/IP/属性/高级/dns-增加192.168.1.230
三:如果dns服务器上配置了apache服务,可以通过对配置apache
基于名字(name)的虚拟主机服务,配置www.xiutuo.com的域名)
并在客户端(已经设置好了dns为192.168.1.230)
ie的地址http://www.xiutuo.com可以访问apache服务