DNS分类:权威DNS/非权威DNS
高速缓存DNS(非权威)
工作过程:Stub解析器去查找/etc/resolv.conf里的DNS服务器
验证命令:dig命令查询DNS解析内容
加密设备 cat /dev/random
搭建高速缓存DNS
安装软件
yum install bind.x86_64 -y
开启软件
systemctl start named(开启失败则需要在敲击主机的键盘)
配置文件
/etc/named.conf
编辑 /etc/name.conf
listen-on port { any; } 127.0.0.1修改为any,允许接收查询
allow-query { any; }; 修改为any,允许其他主机查看数据
添加 forwarders { 114.114.114.114; }; 查看114.114.114.114的DNS服务
dnssec-validation no; 关闭安全查询
关闭防火墙或者添加dns服务
firewall-cmd --perment --add-service=dns
firewall-cmd --reload
配置实例
安装bind服务
开启服务
修改配置文件
如果是内网主机可以选择关闭安全查询服务
重启服务,使配置生效
查看并确认端口开启状态
添加防火墙允许dns服务,重新加载防火墙
配置DNS为高速缓存的服务器
利用dig命令查看区别
第一次访问查询时间为380ms
第二次由于存在缓存,查询时间为0ms
解析配置文件和数据目录
/etc/named.rfc1912.zones 配置文件
/var/named/ 相应的数据目录
正向解析
编辑 /etc/named.conf 如果存在,注释forwarders行
编写 /etc/named.rfc1912.zones文件复制标准行,同时对标准行进行修改
zone "westos.com" IN {
type master;
file "named.octopus";
allow-update { none; };
};
编写/var/named/目录下的数据文件
复制标准文件,注意属性
cp named.localhost named.octopus -p
编写文件 named.octopus
参数详解
A:名称至IPV4地址
AAAA:名称至IPV6地址
MX:用于名称的邮件交换器
CNAME:名称至规范名称
PTR:IPv4/IPv6地址至名称
SOA:授权起始,DNS区域的信息
NS:域名的名称服务器
编辑内容如下
$TTL 1D
@ IN SOA dns.westos.com. lee.westos.com. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS dns.westos.com.
dns A 172.25.254.100
bbs A 172.25.254.111
www CNAME octopus.westos.com.
octopus A 172.25.254.112
octopus A 172.25.254.113
westos.com. MX 1 172.25.254.114.
重新启动named服务
利用dig命令进行结果查询
dig octopus.westos.com
配置实例
编写配置文件,复制标准行,修改内容,设置正向域名解析
编写配置文件,设置文件内容如下,设置规范名称bs.westos.com的可用IP地址为两个,设置邮件服务器IP地址为172.25.254.156
利用dig命令正向解析octopus.westos.com,发现在172.25.254.131和172.25.254.132两IP中循环
利用mail命令发送邮件至westos.com,发现邮件可以正确的达到172.25.254.156的25端口
逆向解析
编辑 /etc/named.conf 如果存在,注释forwarders行
编写 /etc/named.rfc1912.zones文件复制逆向解析标准行,同时对标准行进行修改
zone "254.25.172.in-addr.arpa" IN {
type master;
file "named.supotco";
allow-update { none; };
};
NS dns.westos.com.
复制标准文件,注意属性
cp -p named.loopback named.supotco
编写文件内容
$TTL 1D
@ IN SOA www.westos.com. lee.westos.com. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS dns.westos.com.
dns A 172.25.254.100
180 PTR nihao.westos.com.
重新启动named服务
利用dig -x参数进行验证
dig -x 172.25.254.180
配置实例
编写配置文件,复制标准行,修改内容,设置172.25.254.*地址块可进行逆向解析
复制创建配置文件
同时修改配置文件按内容如下
重启named服务,利用dig命令逆向解析配置的172.25.254.180的域名
双向解析
复制得到外网访问的所需要的解析文件
cp /etc/named.rfc1912.zones /etc/named.rfc1912.inter.zones -p
cp /var/named/named.octopus /var/named/named.inter.octopus -p
编辑文件 /etc/named.rfc1912.inter.zones
zone "westos.com" IN {
type master;
file "named.inter.octopus";
allow-update { none; };
};
编辑文件/var/named/named.inter.octopus
$TTL 1D
@ IN SOA dns.westos.com. zy.westos.com. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS as.westos.com.
as A 1.1.1.100
bbs A 1.1.1.111
bs CNAME octopus.westos.com.
octopus A 1.1.1.131
octopus A 1.1.1.132
westos.com. MX 1 1.1.1.156.
编辑文件 /etc/named.conf
/*
zone "." IN {
type hint;
file "named.ca";
};
include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";
*/
view loacl {
match-clients { localhost; };
zone "." IN {
type hint;
file "named.ca";
};
include "/etc/named.rfc1912.zones";
};
view inter {
match-clients { any; };
zone "." IN {
type hint;
file "named.ca";
};
include "/etc/named.rfc1912.inter.zones";
};
重新启动服务
systemctl restart named
dig访问查看结果
配置实例
修改/etc/named.conf配置文件
复制文件
修改文件/etc/rfc1912.inter.zones文件内容
修改配置文件/var/named/named.inter.octopus
重启服务,此时本机DNS解析与其他机器有了区别
本机octopus.westos.com解析ip为172.25.254.113/172.25.254.112
其余机器为1.1.1.132/1.1.1.131
辅助DNS服务器
此时将主服务器的配置文件修改为原配置
客户端
安装软件
yum install bind.x86_64 -y
开启软件
systemctl start named(开启失败则需要在敲击主机的键盘)
配置文件
/etc/named.conf
编辑 /etc/name.conf
listen-on port { any; } 127.0.0.1修改为any,允许接收查询
allow-query { any; }; 修改为any,允许其他主机查看数据
dnssec-validation no; 关闭安全查询
编辑/etc/named.rfc1912.zones文件,添加配置内容
zone “westos.com” IN {
type slave;
masters { 172.25.254.141; };
file “slaves/named.octopus”;
allow-update { none; };
};
重启服务,使得配置生效
服务器
修改配置文件,添加实时同步参数,如果是redhat6,则需要添加同意同步的参数
实时同步参数
also-notify { 172.25.254.241; };
重启服务,使得配置生效
配置实例:
客户端
修改配置文件
关闭本地安全查询
修改文件/etc/named.rfc1912.zones,添加如下内容
服务器端添加同步提示参数
两边均重启服务,发现/var/named/slaves目录下具有named.octopus文件
配置客户短的DNS为本地IP,查询发现结果与服务器段配置相同
此时修改服务器段配置文件/var/named/named.octopus文件,重启服务
在客户机上再次尝试,发现结果同步
DNS高速缓存实时更新
在服务器端配置允许实时更新DNS高速缓存参数
allow-update { 172.25.254.141; };
实时更新命令
nsupdate
server 172.25.254.141
添加
update add test.westos.com 86400 A 172.25.254.123
删除
update delete test.westos.com
send
需要生成相关文件
/var/named/name.*.jnl
所以修改配置文件目录权限
chmod 770 /var/named/
配置实例
修改配置文件
修改目录权限
实时更新
在服务器端以及辅助DNS服务器端查看,发现均已经生效
服务器端
辅助DNS服务器端
查看配置文件目录
重启服务named,发现实时添加的内容已经写入文件
使用key更新DNS高速缓存
创建密钥对
dnssec-keygen -a HMAC-MD5 -b 128 -n HOST octopus
拷贝修改文件-p参数
cp -p /etc/rndc.key /etc/octopus.key
修改key文件的内容
key "octopus" {
algorithm hmac-md5;
secret "2+gF/1UZKXead4hlVcvkbw==";
};
在/etc/named.conf中修改添加密钥
include "/etc/octopus.key";
在/etc/named.rfc1912.zones中修改添加密钥更新
zone "westos.com" IN {
type master;
file "named.octopus";
also-notify { 172.25.254.241; };
allow-update { key octopus; };
};
重启动服务,使用nsupdate命令指定私钥更新
配置实例
获取密钥对
获取的密钥查看
拷贝标准文件
修改复制的密钥文件/etc/octopus.key
修改/etc/named.conf文件,加入创建的密钥
修改/etc/named.rfc1912.zones文件
重启服务,检验结果
查看添加的内容
加密方式动态更新缓存
服务端安装dhcpd服务
yum install -y dhcp
复制得到配置文件并修改
cp /usr/share/doc/dhcp*/dhcpd.conf.example /etc/dhcp/dhcpd.conf
修改配置文件/etc/dhcp/dhcpd.conf
域名和DNS服务器
option domain-name "westos.com";
option domain-name-servers 172.25.254.141;
DNS更新网络方式通知
ddns-update-style interim;
DHCP分配范围
subnet 172.25.254.0 netmask 255.255.255.0 {
range 172.25.254.75 172.25.254.80;
option routers 172.25.254.250;
}
密钥内容
key octopus {
algorithm hmac-md5;
secret "2+gF/1UZKXead4hlVcvkbw==";
};
域名以及密钥方式更新
zone westos.com. {
primary 127.0.0.1;
key octopus;
}
服务器端:
配置动态获取IP,配置主机名称为www.westos.com 查看更新结果
配置实例
服务端安装dhcpd服务
复制得到配置文件并修改
修改配置文件/etc/dhcp/dhcpd.conf
域名和DNS服务器
DNS更新网络方式通知
DHCP分配范围
密钥内容
域名以及密钥方式更新
重启服务
服务器端:
配置动态获取IP,配置主机名称为www.westos.com
查看结果
改变动态IP范围,使得客户端获取新的IP
查看IP
查看更新结果