深入浅出DNS系列(四)-内部根服务器架设实例与详解

10 篇文章 4 订阅
申明:文档中使用的james.cn、kobe.cn域名,只在内部测试环境中使用,如有侵权,请联系,将在第一时间更改
参考文档:《DNS与BIND》、《RFC1034》、《RFC1035》
软件环境安装,请参考我编写的实例文档《BIND编译调试环境搭建》

1 架构图

注明:架构图中没有防火墙等内外网隔离设备

2 根服务器配置

2.1 named.conf配置


检查named.conf配置文件,有错误会提示,如图:


2.2 区域数据文件



检查区域数据文件


2.3 启动BIND 并测试

[root@bindroot sbin]# ./named –g &




2.4 DNSSEC支持

2.4.1 KSK与ZSK的生成

参考第5章
./dnssec-keygen -f KSK -a RSASHA1 -b 512 -n ZONE .
K.+005+64849.key
K.+005+64849.private
./dnssec-keygen -a RSASHA1 -b 512 -n ZONE .
K.+005+61560.key
K.+005+61560.private

2.4.2 上传cn域的DS记录

scp root@192.168.198.181:/usr/local/sbin/bind/sbin/dsset-cn. /usr/local/sbin/bind/sbin/

2.4.3 添加cn域的DS记录,并生成签名记录文件

修改db.root,在末尾添加
$INCLUDE "K.+005+64849.key"
$INCLUDE "K.+005+61560.key"
$INCLUDE "dsset-cn."

生成前面的cn域文件
./dnssec-signzone -o . ../zone/db.root
在../zone目录,生成db.root.signed
在当前目录,生成dsset-.文件

2.4.4 修改named.conf配置文件



2.4.5 创建信任锚文件(trust-anchors),以供递归解析器使用

vi trust-anchors.root

如上图:内容是从根域KSK、ZSK的key文件拷贝而来,实际上就是根域公钥信息

3 CN服务器配置

3.1 named.conf配置


如上图,注意根域的配置type为hint,表示此为根服务的索引文件,在运行时会自动与文件中定义的根服务器联系

3.2 root区域数据文件

和根服务器保持一样,直接拷贝过来



3.3 cn区域数据文件





3.4 启动BIND 并测试

[root@bindroot sbin]# ./named –g &

3.5 DNSSEC支持

3.5.1 KSK与ZSK的生成

参考第5章
./dnssec-keygen -f KSK -a RSASHA1 -b 512 -n ZONE cn.
Kcn.+005+20524.key
Kcn.+005+20524.private
./dnssec-keygen -a RSASHA1 -b 512 -n ZONE cn.
Kcn.+005+49872.key
Kcn.+005+49872.private

3.5.2 上传kobe.cn与james.cn的DS记录

scp root@192.168.198.182:/usr/local/sbin/bind/sbin/dsset-james.cn. /usr/local/sbin/bind/sbin/
scp root@192.168.198.193:/usr/local/sbin/bind/sbin/dsset-kobe.cn. /usr/local/sbin/bind/sbin/

3.5.3 添加kobe.cn与james.cn的DS记录,并生成签名记录文件

修改db.cn,在末尾添加
$INCLUDE "Kcn.+005+20524.key"
$INCLUDE "Kcn.+005+49872.key"
$INCLUDE "dsset-james.cn."
$INCLUDE "dsset-kobe.cn."

生成前面的cn域文件
./dnssec-signzone -o cn. ../zone/db.cn
在../zone目录,生成db.cn.signed
在当前目录,生成dsset-cn.文件

3.5.4 修改named.conf配置文件




4 James.cn域服务器配置

4.1 named.conf配置



4.2 root区域数据文件




4.3 james.cn区域数据文件



4.4 启动BIND 并测试

[root@bindroot sbin]# ./named –g &

4.5 DNSSEC支持

参考5章kobe.cn进行操作
./dnssec-keygen -f KSK -a RSASHA1 -b 512 -n ZONE james.cn.
Kjames.cn.+005+09337.key
Kjames.cn.+005+09337.private

./dnssec-keygen -a RSASHA1 -b 512 -n ZONE james.cn.
Kjames.cn.+005+24462.key
Kjames.cn.+005+24462.private

5 kobe.cn域服务器配置

5.1 named.conf配置



5.2 root区域数据文件



5.3 kobe.cn区域数据文件



5.4 启动BIND 并测试

[root@bindroot sbin]# ./named –g &

5.5 支持DNSSEC

5.5.1 Key生成

cd /usr/local/sbin/bind/sbin
./dnssec-keygen -f KSK -a RSASHA1 -b 512 -n ZONE kobe.cn.
产生2个文件,分别是:
Kkobe.cn.+005+52753.key
Kkobe.cn.+005+52753.private

./dnssec-keygen -a RSASHA1 -b 512 -n ZONE kobe.cn.
产生2个文件,分别是:
Kkobe.cn.+005+38901.key
Kkobe.cn.+005+38901.private

vi ../zone/db.kobe.cn
在文件末尾,增加以下2行
$INCLUDE "Kkobe.cn.+005+52753.key"
$INCLUDE "Kkobe.cn.+005+38901.key"

./dnssec-signzone -o kobe.cn. ../zone/db.kobe.cn
在../zone目录,生成db.kobe.cn.signed文件
在当前目录,生成dsset-kobe.cn.文件

vi ../zone/db.kobe.cn
在末尾删除2行
$INCLUDE "Kkobe.cn.+005+52753.key"
$INCLUDE "Kkobe.cn.+005+38901.key"

vi ../etc/named.conf
修改如下图:


6 缓存(转发)服务器配置

缓存DNS服务器,不需要配置自己的区域数据文件

6.1 named.conf配置



6.2 根据区域数据文件


6.3 启动BIND 并测试

[root@bindroot sbin]# ./named –g &
如下图测试效果图所示,缓存服务器192.168.198.138并未配置cn域的相关信息,通过缓存服务器请求cn的SOA记录,并获取正确的解析,证明缓存服务器通过根服务器请求解答并运作正常



6.4 DNSSEC支持

6.4.1 配置信任锚文件信息

scp root@192.168.198.180:/usr/local/sbin/bind/sbin/trust-anchors.root /usr/local/sbin/bind/etc/

vi named.conf
在末尾添加
include "/usr/local/sbin/bind/etc/trust-anchors.root";


7 测试效果

7.1 配置客户端

配置redisclient.james.cn主机,如下:







7.2 测试

测试1

测试2

7.3 DNSSEC测试

按文档的描述进行操作,启动所有named服务


注意:不带dnssec的请求,与原来一致
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值