坚持#第262天~DNS域名系统2(DNS转发、DNS主从、DNS子域)

转发DNS服务器:

场合:
比如说你不能直接访问外网的dns服务器,但是公司里有一个人他可以访问外网的dns,那么你只能通过他转发请求。

实验环境:两台dns服务器和一个客户端
1)192.168.10.10 真正的dns服务器,拥有全部的解析以baidu.com正向解析为例
2)192.168.10.14 转发dns服务器,没有主机的解析信息
192.168.30.14可以通的网段
3) 192.168.30.15 客户端

例子:

              202.103.24.68 外网

 

 

 

       202.103.24.12 192.168.10.14 可以连外网 也可以连内网

 

              192.168.10.11 内网

允许24.12访问

start:

第一步:安装该安装的

yum

第二步:修改住配置文件

vim/etc/named.conf

 

只要是涉及到多台DNS就要做下面的操作

33 34等注释 留下recursion  和pid,也注释include

 

最后:options里面有recursion    pid,外面有zone “.”就可以了

添加一个www.baidu.com的正向解析(过程略,之前有做过,然后换一个客户端测试一下)

 

第三步:做转发

修改住配置文件,在options里面添加allow-transfer{202.103.24.12允许它来转发};forwarders{202.103.24.68};指向转发的服务器

 

客户端:ifconfig ens33:0202.103.24.12

ping202.103.24.68

 

ping192.168.10.14

zhupeizhioptions留下ipv4并添加:

forwarders{202.103.24.68};

看看DNS服务器能不能ping通,能ping通就能设置 DNS服务器IP

 

重新巩固:

环境:

第1台:DNS服务器端的IP是192.168.56.57

第2台:转发服务器端的IP是192.168.56.63和192.168.1.63

第3台:客户端clone1的IP是192.168.1.61

 

第一步:第1台,安装bind和bind-utils并修改主配置文件
# vim /etc/named.conf
options {
listen-on port 53 { any; };
directory "/var/named";
allow-query { any; };
allow-transfer { 192.168.56.63; }; #允许谁转发,写的是转发服务器的IP地址
};

33 34等注释 留下recursion  和pid,也注释include

第二步:添加一个www.baidu.com的正向解析(过程略,之前有做过)

第三步:重启服务

第四步:第2台,安装bind和bind-utils并修改主配置文件

vim /etc/named.conf
options {
forwarders { 192.168.56.57; }; #真正的dns服务器的IP,把请求转发给谁
};

结论:发现forwarders是两台DNS互信,转发的服务器只写这些,其他全部注释掉

第五步:重启服务

第六步:第3台,指定DNS服务器为转发服务器

vim /etc/resolv.conf
nameserver 192.168.1.63(要ping的通才有用)

第七步:安装bind-utils用nslookupwww.baidu.com进行测试

如果修改了第1台的区配置文件的ip,就要在第2台上使用rndc flush 清理缓存

rndc flush刷新dns,dns刷新

$TTL 1D是设置缓存时间为1天,0是不缓存,H是小时,W是周

yum install -y nscd

rndc flush 清理缓存

转发DNS服务器结论:只能转发DNS域名解析,不能转发ping,到头来还是ping不通(因为做的是DNS转发,而不是路由转发),注意/etc/resolv.conf指定的DNS服务器ip必须要ping的通才行

 

 

DNS主从:

从机要新添加:

type slave;

masters { 192.168.56.63 };

怎么实现同步的?

通过serial序列号

 

start:

环境:

主机DNS : 192.168.56.63
从机DNS : 192.168.56.57

主机:

修改主配置文件(在zone里面加notify等)
# vim /etc/named.conf
zone "up.com" IN {
    type master;
    file "up.com.zone";
    notifyyes;允许通知
    also-notify { 192.168.56.57; };
也通知从机
};

33 34等注释 留下recursion  和pid,也注释include

修改zone文件
# vim up.com.zone
    $TTL 3H
    @ IN SOA @ root.uplooking.com. (
       2018010501; serial序列号年月日版本号,这个是做主从要改的东西
       1D ; refresh
       1H ; retry
       1W ; expire超过这个时间就删掉
    3H ) ; minimum
NS clone11.uplooking.com.
www.up.com. A 192.168.56.57
www.up.com. A 155.155.155.155

重启服务(注意also-notify那里需要有两个分号)

 

从机:

修改主配置文件(添加和主机一样的域,并在zone里面type slave;添加masters {主机IP;};)
# vim /etc/named.conf
zone "up.com" IN {
    typeslave;
    #file "up.com.zone"注释掉这行,说明了DNS的从机是没有zone文件的,如果从机slave也有zone文件会怎样呢?写了等于没有写
    masters { 192.168.56.63;};主是谁
};

33 34等注释 留下recursion  和pid,也注释include

重启服务

nslookupwww.up.com访问不需加ip因为主机ip已经写到主配置文件了

结果:能把主机上的up.zone文件里面写的ip都显现出来

思考:在主机上测试会怎样?和从机上测试一样的

 

主机:

不修改区配置文件里的序列号为2018010502,把155全改为100再测试会怎样?(注意主机修改了配置文件要重启服务,从机如果重启服务的话序列号也就重置了)

答:结果155全变成了100,那是因为你指定了DNS服务器,不要指定啊

为什么要写序列号?为什么要改序列号?

答:不写或不修改序列号的话就不能修改同步到从机

测试nslookup的时候不要指定DNS服务器,不然看不到效果

 

 

子域:

父域子域

定义:除了根域和顶级域com以外的都称为子域

为什么要使用子域?方便管理、减轻负担

实验环境
1)父域 com 192.168.56.63
2)子域 up.com 192.168.56.57
mail.up.com
www.up.com

父域配置
1)修改主配置文件
# vim /etc/named.conf
options {
    listen-on port 53 { any; };
    directory "/var/named";
    allow-query { any; };
    forwarders{ 192.168.56.57; };相当于父机相信子机
};
zone "com" {为什么一定非要使用com?还能写com.cn呀因为你是分开写,子域写在子机里面
    type master;
    file "com.zone";
};
2)创建区配置文件(父机要声名父域IP,有两个NS)
# cd /var/named/
# cp -p named.empty com.zone
# vim com.zone
$TTL 3H
@ IN SOA @ root.clone12.uplooking.com. (
    0; serial 父子中父还要设置序列号吗
    1D ; refresh
    1H ; retry
    1W ; expire
3H ) ; minimum
NS  父机的主机名加点
父机的主机名加点   A   192.168.56.63#父域IP  宋子奇的A.cn问题见下面
up   NS  子机的主机名加点
up   A    192.168.56.57 #子域IP
3)重启服务

 

 

子域配置
1)主配置文件
# vim /etc/named.conf
options {
    directory "/var/named";
};
zone "up.com" {
    type master;
    file "up.com.zone";
};
2)区配置文件
# vim /var/named/up.com.zone
$TTL 3H
@ IN SOA @ root.uplooking.com. (
2016020702 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS clone11.uplooking.com.
www A 6.6.6.12
A 6.6.6.13
mail A 6.6.6.13
3)重启服务

 

验证
客户端将dns服务器指向父域
# cat /etc/resolv.conf
nameserver 6.6.6.12


# nslookup www.up.com(除了根域和顶级域com以外其他的都是子域,com就是父域)
Server: 6.6.6.12
Address: 6.6.6.12#53

Non-authoritative answer:
Name: www.up.com
Address: 6.6.6.12
Name: www.up.com
Address: 6.6.6.13

# nslookup mail.up.com
Server: 6.6.6.12
Address: 6.6.6.12#53

Non-authoritative answer:
Name: mail.up.com
Address: 6.6.6.13

 

start:(老师)

环境:

父域:com          10.15

子域:baidu.com    10.14

客户端:10.11

 

父机:

vim/etc/named.conf

options添加forwarders {192.168.10.14; };

 

zone “com”IN{

    type master;

    file “com.zone”;

};

 

区配置文件:

cp -p

NS 主机名clone5.up.com.

clone5.up.com.A 10.15

baidu NSclone4.up.com.

baidu A10.14

重启服务

 

子机:

vim/etc/named.conf

zone “baidu.com”IN {

type master;

file“baidu.com.zone”;

};

区配置文件:

cp -p

baidu.com.zone

NS  clone4.up.com.

www.baidu.com.A 10.100

重启服务

 

客户机:

nslookupwww.baidu.com 10.15访问父机就能够获取子域里面的东西

 

父域下面可以有多个子域

 

重新巩固:

比如要做一个www.hao1234.com的网站

环境:

第1台虚拟机  父机  192.168.56.63  主机名是litao5663

第2台虚拟机  子机  192.168.56.57  主机名是litao5657

 

第一步:

父机:

vim/etc/named.conf修改主配置文件

该注释的注释掉,该改为any的改为any

然后在options里面添加forwarders { 192.168.56.57;};父亲相信儿子

在下面添加:

zone"com" IN {

    type master;

    file "son-com.zone";

};

切换到区配置文件目录:

cd/var/named

cp -pnamed.empty son-com.zone

vimson-com.zone

$TTL 3H

@   IN SOA @ rname.invalid. (

                    0   ; serial

                    1D  ; refresh

                    1H  ; retry

                    1W  ; expire

                    3H )    ; minimum

    NS litao5663.

litao5663.  A  192.168.56.63

hao1234NS  litao5657.

hao1234A   192.168.56.57

systemctlrestart named重启服务

 

第2台虚拟机(子机):

yum install-y bind bind-utils

vim/etc/named.conf

zone"hao1234.com" IN {

    type master;

    file "son-hao1234.zone";

};

进入区配置文件目录:

cp -pnamed.empty son-hao1234.zone

vimson-hao1234.zone

$TTL 3H

@   IN SOA @ rname.invalid. (

                    0   ; serial

                    1D  ; refresh

                    1H  ; retry

                    1W  ; expire

                    3H )    ; minimum

    NS litao5657.

www.hao1234.com.    A  123.123.123.123

systemctlrestart named重启服务

 

第3台虚拟机(客户机):

yum install-y bind-utils

[root@litao5658~]# nslookup www.sina.com.cn 192.168.56.63

Server:         192.168.56.63

Address:        192.168.56.63#53

 

Non-authoritativeanswer:

Name:   www.sina.com.cn

Address:192.168.56.100

 

总结NS和A:

     NS comdsd.com.dasfdsf.dsafjdsjfoasj.dsafadsf.

hao1234NS  dsaoigjsdgo.

1)NS  后面必须要以小数点结尾,至于小数点之前的内容随便瞎写都可以,反正不是以.com.结尾的就ok,若以.com.结尾就必须添加一条A:

例如: NS   szq.com.

szq.com.  A  本机ip

这样才行,所以说.com.是个例外

父机区配置文件里不需要写子域的A,只需写子域的NS就可以,NS后面瞎写都可以

 

周五测试:

1.使用同一个DNS服务器,访问同一个域名www.sina.com

192.168.56.57这个客户端访问得到的结果是vip,其他人访问得到的结果是others

请自行规划并写出配置过程

 

环境:

第1台虚拟机  DNS服务器  192.168.56.63  主机名是litao5663

第2台虚拟机  会员机  192.168.56.57  主机名是litao5657

第3台虚拟机  其他人1  192.168.56.58  主机名是litao5658

第4台虚拟机  其他人2  192.168.56.59  主机名是litao5659

 

第1台虚拟机(DNS服务器):

yum install-y bind bind-utils

vim/etc/named.conf

该注释的注释掉,该改为any的改为any

acl huiyuan{

    192.168.56.57;

};

view"hy" {

    match-clients { huiyuan; };

    recursion yes;

    zone "." IN {

        type hint;

        file "named.ca";

    };

    zone "sina.com" {

        type master;

        file "sina.zone";

    };

};

view"qitaren" {

    match-clients { any; };

    recursion yes;

    zone "." IN {

        type hint;

        file "named.ca";

    };

    zone "sina.com" {

        type master;

        file "qitaren.zone";

    };

};

切换到区配置文件目录:

cd/var/named

cp -pnamed.empty sina.zone

cp -pnamed.empty qitaren.zone

vim sina.com

$TTL 3H

@   IN SOA @ rname.invalid. (

                    0   ; serial

                    1D  ; refresh

                    1H  ; retry

                    1W  ; expire

                    3H )    ; minimum

    NS litao5663.

www.sina.com.   A  192.168.56.63

vimqitaren.zone

$TTL 3H

@   IN SOA @ rname.invalid. (

                    0   ; serial

                    1D  ; refresh

                    1H  ; retry

                    1W  ; expire

                    3H )   ; minimum

    NS litao5663.

www.sina.com.   A  192.168.56.57

systemctlrestart named

yum install-y httpd安装httpd

echo"vip" > /var/www/html/index.html

systemctlstart httpd

 

第2台虚拟机(会员机):

yum install-y httpd安装httpd

echo "others"> /var/www/html/index.html

systemctlstart httpd

vim/etc/resolv.conf

nameserver192.168.56.63

[root@litao5657named]# curl www.sina.com

vip

 

第3台虚拟机(其他人1):

vim/etc/resolv.conf

nameserver192.168.56.63

[root@litao5658~]# curl www.sina.com

others

 

第4台虚拟机(其他人2):

vim/etc/resolv.conf

nameserver192.168.56.63

[root@litao5659~]# curl www.sina.com

others

 

 

 

2.多级子域授权解析www.sina.com.cn(好坑啊,只有cn的下面才能分com、edu)

 

写出配置过程

 

环境:

第1台虚拟机  父域:com.cn        192.168.56.63  主机名是litao5663

第2台虚拟机  子域:sina.com      192.168.56.57  主机名是litao5657

第3台虚拟机  客户端:192.168.56.58

 

第1台虚拟机(父机):

yum install-y bind bind-utils

vim/etc/named.conf

该注释的注释掉,该改为any的改为any

然后在options里面添加forwarders { 192.168.56.57;};

在下面添加:

zone "com.cn"IN{

    type master;

    file "com.cn.zone";

};

切换到区配置文件目录:

cd/var/named

cp -pnamed.empty com.cn.zone

vim com.cn.zone

$TTL 3H

@   IN SOA @ rname.invalid. (

                    0   ; serial

                    1D  ; refresh

                    1H  ; retry

                    1W  ; expire

                    3H )    ; minimum

    NS litao5663.

com NSlitao5657.

sina NSlitao5657.

systemctlrestart named重启服务

 

第2台虚拟机(子机):

yum install-y bind bind-utils

vim/etc/named.conf

zone "sina.com.cn"IN {

    type master;

    file "sina.com.cn.zone";

};

进入区配置文件目录:

cp -pnamed.empty sina.com.cn.zone

vimsina.com.cn.zone

$TTL 3H

@   IN SOA @ rname.invalid. (

                    0   ; serial

                    1D  ; refresh

                    1H  ; retry

                    1W  ; expire

                    3H )    ; minimum

    NS  litao5657.

www    A  192.168.56.100

systemctlrestart named重启服务

 

第3台虚拟机(客户机):

yum install-y bind-utils

[root@litao5658~]# nslookup www.sina.com.cn 192.168.56.63

Server:         192.168.56.63

Address:        192.168.56.63#53

 

Non-authoritativeanswer:

Name:   www.sina.com.cn

Address:192.168.56.100
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值