1.3.2. DNS区域文件的配置 /var/named/named.local $TTL 3600 @ IN SOA localhost. root.localhost. ( 2001030801 ; serial 28800 ; refresh 14400 ; retry 3600000 ; expire 86400 ; default_ttl ) @ IN NS localhost. 1 IN PTR localhost. ; End of File /var/named/named.10.0.0 $TTL 3600 @ IN SOA ns1.worldhello.net. johnson.worldhello.net. ( 2001030801 ; serial 600 ; refresh 600 ; retry 3600000 ; expire 3400 ; default_ttl ) @ IN NS ns1.worldhello.net. @ IN NS ns2.worldhello.net. 1 IN PTR ns1.worldhello.net. 2 IN PTR ns2.worldhello.net. 10 IN PTR johnson.worldhello.net. ; End of File /var/named/named.inner.worldhello.net $TTL 3600 @ IN SOA ns1.worldhello.net. johnson.worldhello.net. ( 2001021802 ; serial 300 ; refresh 300 ; retry 7200000 ; expire 3600 ; default_ttl ) @ IN NS ns1.worldhello.net. @ IN NS ns2.worldhello.net. @ IN MX 5 mail.worldhello.net. @ IN MX 10 mail2.worldhello.net. @ IN A 10.0.0.1 localhost IN A 127.0.0.1 ns1 IN A 10.0.0.1 ns2 IN A 10.0.0.2 johnson IN A 10.0.0.10 www IN A 10.0.0.1 mail IN A 10.0.0.2 mail2 IN A 10.0.0.3 * IN CNAME johnson /var/named/named.outer.worldhello.net $TTL 3600 @ IN SOA ns1.worldhello.net. johnson.worldhello.net. ( 2001021802 ; serial 300 ; refresh 300 ; retry 7200000 ; expire 3600 ; default_ttl ) @ IN NS ns1.worldhello.net. @ IN NS ns2.worldhello.net. @ IN MX 5 mail.worldhello.net. @ IN MX 10 mail2.worldhello.net. @ IN A 192.169.0.100 localhost IN A 127.0.0.1 ns1 IN A 192.168.0.1 ns2 IN A 192.168.0.2 www IN A 192.168.0.1 johnson IN A 192.168.0.10 mail IN A 192.168.0.2 mail2 IN A 192.168.0.3 /var/named/named.192.168.0 $TTL 3600 @ IN SOA ns1.worldhello.net. johnson.worldhello.net. ( 2001030801 ; serial 600 ; refresh 600 ; retry 3600000 ; expire 3400 ; default_ttl ) @ IN NS ns2.worldhello.net. @ IN NS ns1.worldhello.net. 1 IN PTR ns1.worldhello.net. 2 IN PTR ns2.worldhello.net. 10 IN PTR johnson.worldhello.net. ; End of File 1.4. 启动 DNS 创建启动文件 /etc/rc.d/inet.d/named #!/bin/sh # # named This shell script takes care of starting and stopping # named (BIND DNS server). # # chkconfig: 345 55 45 # description: named (BIND) is a Domain Name Server (DNS) \ # that is used to resolve host names to IP addresses. # probe: true # Source function library. . /etc/rc.d/init.d/functions # Source networking configuration. . /etc/sysconfig/network # Check that networking is up. [ ${NETWORKING} = "no" ] && exit 0 [ -f /usr/sbin/named ] || exit 0 [ -f /etc/named.conf ] || exit 0 # See how we were called. case "$1" in start) # Start daemons. echo -n "Starting named: " daemon named echo touch /var/lock/subsys/named ;; stop) # Stop daemons. echo -n "Shutting down named: " killproc named rm -f /var/lock/subsys/named echo ;; status) /usr/sbin/rndc status exit $? ;; restart) /usr/sbin/rndc restart exit $? ;; reload) /usr/sbin/rndc reload exit $? ;; probe) # named knows how to reload intelligently; we don't want linuxconf # to offer to restart every time /usr/sbin/rndc reload >/dev/null 2>&1 || echo start exit 0 ;; *) echo "Usage: named {start|stop|status|restart}" exit 1 esac exit 0 创建 symbollink $ ln -s /etc/rc.d/init.d/named /etc/rc.d/rc0.d/K45named $ ln -s /etc/rc.d/init.d/named /etc/rc.d/rc1.d/K45named $ ln -s /etc/rc.d/init.d/named /etc/rc.d/rc2.d/K45named $ ln -s /etc/rc.d/init.d/named /etc/rc.d/rc3.d/S55named $ ln -s /etc/rc.d/init.d/named /etc/rc.d/rc4.d/S55named $ ln -s /etc/rc.d/init.d/named /etc/rc.d/rc5.d/S55named $ ln -s /etc/rc.d/init.d/named /etc/rc.d/rc6.d/K45named 启动 $ tail -f /var/log/message & $ /etc/rc.d/init.d/named start 2.1. 检查 $ sbin/named-checkconf $ sbin/named-checkzone 2.2. nslookup $ nslookup - 127.0.0.1 > set all ... > ns1.worldhello.net. ... > set query=any > worldhello.net. ... > set query=ptr > 10.0.0.1 ... > set class=CHAOS > version.bind ...