环境:4台Linux RedHat 6.4 机器(192.168.1.126、192.168.1.127、192.168.1.128、192.168.1.130)
以192.168.1.126作为DNS服务器
yum -y install bind bind-utils bind-chroot
rpm -qa | grep '^bind'
vim /etc/named.conf
listen-on port 53 { any; };//将原来的127.0.0.1改成any
allow-query { any; };//将原来的localhost改成any
vim /etc/named.rfc1912.zones
即追加如下2个zone:第一个是正解文件说明(域名 --> ip;);第二个是反解文件(ip -->域名)
zone "hadoop.com" IN {
type master;
file "named.hadoop.com";
allow-update { none; };
};
zone "1.168.192.in-addr.arpa" IN {
type master;
file "named.192.168.1.zone";
allow-update { none; };
};
复制正解文件模板 并修改:
cp -p /var/named/named.localhost /var/named/named.hadoop.com
vim /var/named/named.hadoop.com
$TTL 1D
@ IN SOA hdp-01.hadoop.com. hadoop.hdp-01.hadoop.com. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
@ IN NS hdp-01.hadoop.com.
hdp-01 IN A 192.168.1.126
hdp-02 IN A 192.168.1.127
hdp-03 IN A 192.168.1.128
hdp-04 IN A 192.168.1.130
复制反解文件模板 并修改:
cp -p /var/named/named.localhost /var/named/named.192.168.1.zone
vim /var/named/named.192.168.1.zone
$TTL 1D
@ IN SOA hdp-01.hadoop.com. hadoop.hdp-01.hadoop.com. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
@ IN NS hdp-01.hadoop.com.
126 IN PTR hdp-01.hadoop.com.
127 IN PTR hdp-02.hadoop.com.
128 IN PTR hdp-03.hadoop.com.
130 IN PTR hdp-04.hadoop.com.
vim /etc/sysconfig/network-scripts/ifcfg-eth0
增加:
DNS1=192.168.1.126
DOMAIN=hadoop.com
service network restart
注:DOMAIN的作用和SEARCH作用类似:很重要,如果没有 -->访问各个主机时,需要把完整输入对应域名;
配置完之后不需要输入完整域名,只需要第一部分即可,如 ping hdp-02
service named start
chkconfig named on
chkconfig --list named
日志验证:tail -30 /var/log/messages | grep named
功能验证:nslookup
nslookup hdp-01.hadoop.com
nslookup hdp-02.hadoop.com
nslookup hdp-03.hadoop.com
nslookup hdp-04.hadoop.com
注:
vim /etc/host.conf
order bind,hosts
multi on
domain 51osos.com
search www.51osos.com 51osos.com
nameserver 202.102.192.68
nameserver 202.102.192.69
nameserver表示解析域名时使用该地址指定的主机为域名服务器。其中域名服务器是按照文件中出现的顺序来查询的,且只有当第一个nameserver没有反应时才查询下面的nameserver。
domain 声明主机的域名。很多程序用到它,如邮件系统;当为没有域名的主机进行DNS查询时,也要用到。如果没有域名,主机名将被使用,删除所有在第一个点( .)前面的内容。
search 它的多个参数指明域名查询顺序。当要查询没有域名的主机,主机将在由search声明的域中分别查找。
domain和search不能共存;如果同时存在,后面出现的将会被使用。
sortlist 允许将得到域名结果进行特定的排序。它的参数为网络/掩码对,允许任意的排列顺序。
vim /etc/resolv.conf
# Generated by NetworkManager
search hadoop.com
#nameserver 192.168.1.1 #若ip可以连通外网,会自动添加外网DNS作为首选,可以将网卡配置为static,
#断开与外网的联系
nameserver 192.168.1.126