实现互联网的DNS架构

在这里插入图片描述
首先设想好服务器架构,总共需要8台主机。
另外在搭建的时候,建议顺序,方便每步测试成功之后再去执行下一步,防止造成搭建完错误如何产生的都不知道。
所有的机器操作的时候,都需要关闭selinux 和防火墙

-第一步搭建两个web服务器
1.安装httpd

yum install httpd -y

2.配置网页页面并且启动httpd服务

echo   1111111> /var/www/html/index.html   websrv1
echo   222222> /var/www/html/index.html   websrv2
service httpd start

3.用客户端测试两个web服务是否能被访问,不能访问就需要查找原因了,在此就不赘述如何查找原因

curl 192.168.30.243
curl  192.168.30.244

-这样我们就搭建了两个不同页面的http服务

-第二步搭建1个主域服务器
1.安装bind

 yum install bind -y

2.修改配置文件 named.conf

vi /etc/named.conf

options {
//      listen-on port 53 { 127.0.0.1; };  注释掉
        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     { localhost; };  注释掉
        allow-transfer   {192.168.30.236;};   由于要搭建从服务器,就需要只允许这台从服务器传输

3.修改配置文件 named.rfc1912.zones

vi /etc/named.rfc1912.zones

添加一个域
zone "exchange.com" IN {
        type master;
        file "exchange.com.zone";   数据解析文件的文件名
};

4.创建解析文件

vi  /var/named/exchange.com.zone 

$TTL 1D
@ IN SOA dns1.exchange.com.   admin.exchange.com.  (1 1D 2H 3D 1H)    #sos起始授权记录必须有,记录谁是主服务器,邮箱地址     (版本号1,同步时间一天,同步失败2小时重试,失败三天从服务器失效,缓存有效期1小时)
        NS dns1    有两个服务器 1,2 
        NS dns2  
dns1 A 192.168.30.155   主服务器地址
dns2 A 192.168.30.236	从服务器地址
websrv A 192.168.30.243	web服务器1
websrv A 192.168.30.244   web服务器2
www CNAME websrv    别名
#保存之后
还需要改变文件的属性,所属组和权限
chgrp named /var/named/exchange.com.zone
chmod 640 /var/named/exchange.com.zone

5.检查配置文件是否正确,启动服务

named-checkconf
 named-checkzone "exchange.com.zone" /var/named/exchange.com.zone 
 无问题,启动服务
 service bind   start

6.用客户端测试是否能够访问,访问成功则继续下一步

dig  www.exchange.com   @192.168.30.155
出现 ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 16285 则成功,如果出现refused 是拒绝访问需要查看配置文件

-第三步搭建1个从域服务器

1.安装bind

 yum install bind -y

2.修改配置文件 named.conf

vi /etc/named.conf

options {
//      listen-on port 53 { 127.0.0.1; };  注释掉
        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     { localhost; };  注释掉
        allow-transfer   {none;};   从服务器,不需要其他机器来从它这里传输,保证安全性

3.修改配置文件 named.rfc1912.zones

vi /etc/named.rfc1912.zones

添加一个域
zone "exchange.com" {
        type slave;   类型是从  
        masters {192.168.30.155;}; 主服务器地址
        file "slaves/exchange.com.zone.slave";   
};

4.启动服务,检查是否生成从服务器文件

server bind start
  ll  /var/named/slaves/slaves/exchange.com.zone.slave   如果这个文件没有就需要检查配置文件问题,和与主服务器网络是否能ping通

5.用客户端测试是否能够访问,访问成功则继续下一步

dig  www.exchange.com   @192.168.30.236
出现 ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 16285 则成功,如果出现refused 是拒绝访问需要查看配置文件

-第四步搭建1个com服务器

1.安装bind

 yum install bind -y

2.修改配置文件 named.conf

vi /etc/named.conf

options {
//      listen-on port 53 { 127.0.0.1; };  注释掉
        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     { localhost; };  注释掉
        
    dnssec-enable no;   由于是需要转发,所以把这两项归类改为no
    dnssec-validation no;  

3.修改配置文件 named.rfc1912.zones

vi /etc/named.rfc1912.zones

    添加一个域
   zone "com"{
        type master;
        file "com.zone";
};

4.创建解析文件

vi  /var/named/exchange.com.zone 

$TTL 1D
@ IN SOA dns1.com.   admin.com.  (1 1D 2H 3D 1H)    #sos起始授权记录必须有,记录谁是主服务器,邮箱地址     (版本号1,同步时间一天,同步失败2小时重试,失败三天从服务器失效,缓存有效期1小时)
        				NS dns1    有三个服务器 1,2 ,3
exchange        NS dns2  
exchange        NS dns3
dns1 A 192.168.30.245
dns1 A 192.168.30.155   主服务器地址
dns2 A 192.168.30.236	从服务器地址

#保存之后
还需要改变文件的属性,所属组和权限
chgrp named /var/named/exchange.com.zone
chmod 640 /var/named/exchange.com.zone

5.检查配置文件是否正确,启动服务

named-checkconf
 named-checkzone "com.zone" /var/named/com.zone 
 无问题,启动服务
 service bind   start

6.用客户端测试是否能够访问,访问成功则继续下一步

dig  www.exchange.com   @192.168.30.245
出现 ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 16285 则成功,如果出现refused 是拒绝访问需要查看配置文件

-第五步搭建1个跟服务器

1.安装bind

 yum install bind -y

2.修改配置文件 named.conf

vi /etc/named.conf

options {
//      listen-on port 53 { 127.0.0.1; };  注释掉
        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     { localhost; };  注释掉
        
    dnssec-enable no;   由于是需要转发,所以把这两项归类改为no
    dnssec-validation no;  
    下面这段需要删除,因为是我们自己搭建的跟
zone "." IN {
        type hint;
        file "named.ca";
};

3.修改配置文件 named.rfc1912.zones

vi /etc/named.rfc1912.zones

    添加一个域
 zone "." {
    type master;
    file "root.zone";

};

4.创建解析文件

vi  /var/named/root.com.zone 

$TTL 1D
@ IN SOA dns1.  admin.  (1 1D 2H 3D 1H)    #sos起始授权记录必须有,记录谁是主服务器,邮箱地址     (版本号1,同步时间一天,同步失败2小时重试,失败三天从服务器失效,缓存有效期1小时)
        				NS dns1    有两个服务器 1,2 
com        NS dns2  
dns1 A 192.168.30.196
dns1 A 192.168.30.245 

#保存之后
还需要改变文件的属性,所属组和权限
chgrp named /var/named/root.zone
chmod 640 /var/named/root.zone

5.启动服务

 service bind   start

6.用客户端测试是否能够访问,访问成功则继续下一步

dig  www.exchange.com   @192.168.30.196
出现 ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 16285 则成功,如果出现refused 是拒绝访问需要查看配置文件

-第五步搭建1个转发器

1.安装bind

 yum install bind -y

2.修改配置文件 named.conf

vi /etc/named.conf

options {
//      listen-on port 53 { 127.0.0.1; };  注释掉
        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     { localhost; };  注释掉
        
    dnssec-enable no;   由于是需要转发,所以把这两项归类改为no
    dnssec-validation no;  

3.修改原有的跟解析文件

.                        3600000      NS    A.ROOT-SERVERS.NET.
A.ROOT-SERVERS.NET.      3600000      A     192.168.30.196  其他原有记录删除

4.启动服务

 service bind   start

5.用客户端测试是否能够访问,访问成功则继续下一步

dig  www.exchange.com   @192.168.30.116
出现 ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 16285 则成功,如果出现refused 是拒绝访问需要查看配置文件

-客户端测试

links www.exchange.com
如果正常,会随机出现11111,2222的页面

-客户端测试,主服务器宕机,从服务器是否正常工作

在主服务器上ifconfig eth0 down =断掉网线
 在客户端上links www.exchagne.com  测试成功则无问题,前提是转发器需要在宕机后,rndc flush 清空缓存
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值