[实验目的] 1.配置一个只可转发请求的DNS. 2.配置一个masterDNS. 3.配置一个slaveDNS. [实验环境] 1.两台互连的计算机. 2.系统Redhat 8.0. [实验步骤] 一.实验准备. 1.两台机关掉iptables # service iptables stop # chkconfig iptables off 2.两台机检查安装必要软件 # rpm -q bind # rpm -q bind-utils # rpm -q caching-nameserver 根据结果,安装没安装的软件,从安装盘里找出没安装的包,有选择的执行下列步骤: # rpm -Uvh bind-9* # rpm -Uvh bind-utils* # rpm -Uvh caching-nameserver* 3.互连两台机. ①编辑两台机的相应文件.(编辑最好用vi,以下也是) 机器1: /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 BOOTPROTO=none ONBOOT=yes IPADDR=192.168.0.254 NETMASK=255.255.255.0 /etc/hosts 127.0.0.1 localhost localhost.localdomain /etc/resolv.conf nameserver 192.168.0.254 /etc/sysconfig/network NETWORKING=yes HOSTNAME=server1 机器2: /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 BOOTPROTO=none ONBOOT=yes IPADDR=192.168.0.1 NETMASK=255.255.255.0 /etc/hosts 127.0.0.1 localhost localhost.localdomain /etc/resolv.conf nameserver 192.168.0.1 /etc/sysconfig/network NETWORKING=yes HOSTNAME=station1 ②分别在两台机上运行: 机器1: # ifdown eth0 # ifup eth0 # ping 192.168.0.1 机器2: # ifdown eth0 # ifup eth0 # ping 192.168.0.254 主意:两台机能互相ping通,继续下列实验,不通,再找找原因. 二.机器1上配置一个masterDNS. 机器1上: 1.编辑/etc/named.conf文件: /etc/named.conf options { Directory “/var/named/”; }; zone “.” IN { type hint; file “named.ca”; }; zone “localhost” IN { type master; file “localhost.zone”; }; zone “0.0.127.in-addr.arpa” IN { type master; file “named.local”; }; zone “example1.com” IN { type master; file “db.example1”; }; zone “0.168.192.in-addr.arpa” IN { type master; file “db.192.168.0”; }; ---------------------------------------------------------------------- 解释上述文件,如果你对上述文件比较熟悉,可以跳过此段. 上述文件有六部分:option ,5个zone. 其中option,”.”,”localhost”,”0.0.127.in-addr.arpa”原来就有. “example1.com”,“0.168.192.in-addr.arpa”为现在子网的正向和反向搜索区的 定义,“db.example1”,”db.192.168.0”的名字是随便取的,它们必需在/var/named/下 存在. 主义{}前后及中间的空格,及分号. ----------------------------------------------------------------------- 2.用vi创建两个文件,/var/named/db.example1,/var/named/db.192.168.0 /var/named/db.example1 $TTL 86400 @ IN SOA server1.example1.com. Root.server1.example1.com. ( 2003070401 1H 1M 1W 1D ) IN NS server1.example1.com. IN A 192.168.0.254 server1 IN A 192.168.0.254 station1 IN A 192.168.0.1 www IN A 192.168.0.254 FTP IN A 192.168.0.254 pop IN A 192.168.0.254 www1 IN CNAME server1.example1.com. ftp1 IN CNAME server1.example1.com. @ IN MX 10 server1.example1.com. server1.example1.com IN MX 10 server1.example1.com. ---------------------------------------------------------------------- 解释上述文件,如果你对上述文件比较熟悉,可以跳过此段. 上述文件是一个正向搜索的数据库: $TTL 86400 是文件开头,数字表示默认存活期,用秒计算的,做什么不用不要管它, 记着添上就行. 接着的格式就是:[domain] [class] [domain]如: server1.example1.com ,www. Www是简写,实际会默认添上定义这个文件的那个 zone “example1.com”里的 example1.com,即:www=www.example1.com.这个段可以升略不写,默认跟前一行的 [domain]相同.@¡理示”example1.com”. [class]一般为internet类,即:IN ,可以省去不写. 分别有SOA,NS,A,MX,CNAME,及反向数据库里的PTR. SOA=start of authority 必要的 NS=nameserver 必要的 A=域名和ip地址的映射. 必要的 MX=mail exchange. 可选的 CNAME=域名的一个假名 可选的 PTR=用在反向:ip地址和域名的影射. 必要的 假名不可以放在NS MX 的字段. SOA 括弧中的5个数字: 对应为( serial refresh retry eXPire Minimum ) serial 可以是任何数字,一般:年月日修改数. refresh 是SOA信息的刷新时间. Retry是与授权服务器联系的频率. Expire slave服务器保存有关的区域信息,不更新它的时间间隔. Minimum 区域中记录的存活时间. H=hour D=day M=minute W=week SOA 后的server1.example1.com.表示这个区域授权给哪台机. root.server1.example1.com.表示管理人.用.代?æ@ 完整域名后一定要加.号,否则会自动为你加”example1.com”. 以上如果你不懂,不用急,以后慢慢想清楚. ----------------------------------------------------------------------- /var/named/db.192.168.0 $TTL 86400 @ IN SOA server1.example1.com. root.server1.example1.com. ( 2003070401 1H 1M 1W 1D ) IN NS server1.example1.com. 254.0.168.192.in-addr.arpa IN PTR server1.example1.com. 1.0.168.192.in-addr.arpa IN PTR station1.example1.com. ---------------------------------------------------------------------- 解释上述文件,如果你对上述文件比较熟悉,可以跳过此段. 此文件是反向搜索的数据库. 主意IP反着写. 其它的不用解释. ----------------------------------------------------------------------- 3.检验: # cat >> /var/log/messages ****** ****** [ctrl]+d # service named restart # host server1.example1.com # host station1.example1.com # host www.example1.com # host www1.example1.com # host 192.168.0.254 看看是否可以解析,如:server1.example1.com 对应的IP为192.168.0.254, 192.168.0.254对应域名为server1.example1.com.如果不能解析,说明,配置有问题, 可以到日志/var/log/messages里查看.具体位置在文件末尾的两行*******后,和调试 程序一样,甚至他会告诉你哪个文件,哪行错了.修改后,重新执行: # cat >> /var/log/messages ****** ****** [ctrl]+d # service named restart # host server1.example1.com # host station1.example1.com # host www.example1.com # host www1.example1.com # host 192.168.0.254 直到无错,且能够正确解析. 三.机器2上配置一个只负责转发请求域名解析的DNS 机器2上: 1.编辑/etc/named.conf /etc/named.conf options { directory “/var/named/”; forwarders { 192.168.0.254; }; }; ........ ------------------------------------------------------------ 解释上述文件,如果你对上述文件比较熟悉,可以跳过此段. forwarders { 192.168.0.254; }表示,如果此DNS不能解析出IP,则交给 192.168.0.254这个DNS,其实在配置masterDNS时,也可以在option里加一个forwarders 具体IP就是你平时上网用的DNS.如果有两个或多个也可以这样写: { 210.35.92.77.45; 210.35.77.46; } 或者 { 210.35.92.77/24; 192.168.0.254 ;} .....表示其它的东西,不要动. --------------------------------------------------------------------- 2.检验: # cat >> /var/log/messages ****** ****** [ctrl]+d # service named restart # host server1.example1.com # host station1.example1.com # host www.example1.com # host www1.example1.com # host 192.168.0.254 看看是否可以解析,如:server1.example1.com 对应的IP为192.168.0.254, 192.168.0.254对应域名为server1.example1.com. 这个配置比较简单,一般
[1] [2] 下一页
(出处:http://www.sheup.com)
上一页 [1] [2]