安装dns server
如果安装系统时没有安装,需要手动安装rpm包
所需的rpm包在linux iso文件里的package下可以找到
经测试redhat6.1只需要安装bind和bind-chroot(不用关系后面的版本号 只要两个包的版本匹配上就可以)
把安装包放到本地直接用 rpm -ivh命令安装即可
如果系统为ubuntu 则安装根据apt-get install的提示安装bind9
2,配置dns server
假设想配置的域名为 test.com,服务器ip为10.185.235.90修改/etc/named.conf
options { listen-on port 53 { any; }; //127.0.0.1 改为 any 或者局域网网段 listen-on-v6 port 53 { ::1; }; directory "/var/named"; //此行说明此文件已经指定到这个目录下,所以下面引用时候不用设置绝对路径 dump-file "/var/named/data/cache_dump.db"; statistics-file "/var/named/data/named_stats.txt"; memstatistics-file "/var/named/data/named_mem_stats.txt"; allow-query { any; }; //localhost 改为 any recursion yes;}; logging { channel default_debug { file "data/named.run"; severity dynamic; }; }; zone “test.com” IN { type master file “test.com.zone” //区域文件名,此文件存/var/named目录下 }; zone "10.185.235.in-addr.arpa" IN { type master; file "10.185.235.zone"; //区域文件名,此文件存/var/named目录下 }; 在/var/named 目录下添加test.com.zone文件 @TTL 604800 @ IN SOA test.com. root.localhost ( 1 ; Serial 604800 ; Refresh 86400 ; Retry 2419201 ; Expire 604800 ) ; Negative Cache TTL ; @ IN NS api.test.com. //所绑定的域名 api IN A 10.185.235.90 //dns服务器地址 在/var/named 目录下添加10.185.235.zone文件 $TTL 604800 @ IN SOA test.com. root.localhost. ( 1 ; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 604800 ) ; Negative Cache TTL ; @ IN NS api.test.com. 90 IN PTR api.test.com
3,重启dns服务
/etc/init.d/named restart
4,在非服务节点上配置dns为dns服务器的ip,本例为10.185.235.90
5,测试非dns服务节点
$>nslookup
>api.test.me
6,对于不同版本linux的配置文件路径补充说明
redhat6.1 centos 主配置文件/etc/named.conf 从配置文件/var/named/ ubuntu主从配置文件/etc/bind/ ubuntu重启服务 /etc/init.d/bind9 restart
7,centos在启动DNS服务器时出现Generating /etc/rndc.key:
#解决方法 $ rndc-confgen -r /dev/urandom -a #提示 wrote key file "/etc/rndc.key"