DNS(域名系统)
权威名称服务器
Master:包含原始区域数据,有时称作“主要”名称服务器。
Slave:备份服务器,通过区域传送从Master服务器获得区域数据的副本,有时称作“次要”名称服务器。
非权威 / 递归名称服务器
客户端通过其查找来自权威名称服务器的数据,递归服务器的类型包括仅缓存名称服务器:仅用于查找,对于非常重要数据之外的任何内容都不具有权威性。
dns高速缓存
1,例如虚拟机为我们的服务器,首先配置好虚拟机
配置网络:vim/etc/syscongig/network-scripts/ifcfg-eth
#BOOTPROTO=none
#IPADDR=172.25.254.66
#NETMASK=255.255.255.0
#DEVICE=eth0
#ONBOOT=yes
#GATEWAY=172.25.254.15
#DNS1=114.114.114.114
重启网络 查看网关
ping 114.114.114.114
2,让真机的的dns服务器为虚拟机,
vim /etc/resolv.conf
namwserver 172.25.254.15
#写入高速缓存的服务器的ip
3,虚拟机匹配yum源,下载dns开源服务器软件bind
yum install bind.x86_64 -y
#安装软件
systemctl satrt named
#启动服务,第一次开启需要晃动鼠标或者敲击键盘生效,
systemctl stop firewall
#关闭火墙
4,修改服务的配置文件
rpm -qcl bind
#查看软件生成的文件路径
man 5 named
#查看named的服务信息
vim/etc/named.conf
#修改文件的 11行 listen-on port 53{any;}; 将网络的53端口打开,允许任何人访问
# 17 allow-query {any;}; 允许任何人询问
# 18 forwarders {114.114.114.114;}; 不知道的情况下访问IP
# 33 dnssec-valibation no; 不检测
systemctl restart named
#重启服务
5,测试:dig www.baidu.com
直接使用真机dig www.baidu.com 查看用时,再次使用虚拟机dig www.qq.com,然后再用真机dig www.qq.com查看用时。
NOERROR #查询成功
NXDOMAIN #服务器不存在这样的名称
SERVFFL #服务器停运
PEFUSED #服务器拒绝
DNSSEC #验证失败
dns正向解析
vim /etc/named.conf
#注释掉18行
vim /etc/named.rfc1912.zone
# zone "westos.com"IN {
#type master;
#file"westos.com.zone";
#allow-update{none;};
#};
进入 /var/named
拷贝 cp -p named.localhost westos.com.zone
编辑文件 westos.com.zone如下
重启服务进行测试:dig www.westos.com 查看是否解析出IP地址。
dns的反向解析
vim /etc/resolv.conf
#添加 nameserver 172.25.254.66
vim /etc/named.rfc1912.zone
#zone "254.25.172.in-addr.arpa" IN {
#type master;
#file "172.25.254.ptr";
#allow-update {none;};
#};
编辑cp -p namd.loopback 172.25.254.ptr
测试dig -x 172.25.254.111 是否解析出文件lala.wetos.com
dns双向解析
双向解析就是内网解析内网的IP,外网解析出外网的IP
cd /var/named/
cp -p wetos.com.zone westos.com.inter.zone
# 复制外网的配置文件
vim westos.com.inter.zone
# %s/172.25.254/1.1.1/g 将全文172.25.254换成1.1.1
cp -p /etc/named.rfc1912.zone /etc/named.rfc1912.inter.zone
#复制配置文件
vim /etc/named.rfc1912.inter.zone
# zone "westos.com" IN {
#type master;
#file"westos.com.inter.zone";
#allow-update {none;};
#};
vim /etc/namd.conf
#编辑配置文件
#view localnet{
#match-clients {172.25.254.66;};
#zone "." IN {
#type hint;
#file "named.ca";
#};
#include"/etc/named.rfc1912.inter.zone";
#};
#view any {
#match-clients {any;};
#zone "." IN {
#type hint;
#file "named.ca";
#};
#include"/etc/named.rfc1912.inter.zone";
#};
重启服务
测试:内网主机dig www.westos.com 显示172.25.254.
外网dig www.westos.com 显示1.1.1.
缓解dns服务压力 建立辅助dns
一台朱dan服务器可以建立多个辅助dns
1,在辅助主机里安装 bind软件,以及配置文件/etc/named.conf
2,编辑 /etc/resolv.conf nameserver 172.25.254.111
3,启动服务,关闭火墙、
vim /etc/named.rfc1912.zone
# zone "westos.com" IN {
#type slave
#master {172.25.254.66;};
#file "slaves/westos.com.zone";
#allow-update {none;};
#};
重启服务 查看/var/named/slaves/ 文件
3,在主机上vim /etc/named.rfc1912.zones
编辑 also-notify {172.25.254.111;};,,每次修改都需要重启服务。
4,测试:同时dig www.wetos.com
远程的更新
cp -p westos.com.zone /opt/
关闭seLinux getenforce查看
chmod 770 /var/named
vim /etc/named.rfc1912.zones
# allow-update {172.25.254.66;};
# systemctl restart named
更新
nsupdate
> server 172.25.254.111
> update add test.westos.com 86400 A 172.25.254.111
> send
>quit
分别在两台主机上dig www.westos.com 看是否自动同步数据
通过密钥更新
cp -p /etc/rndc.key /etc/westos.key
# 生成自己的加密文件
dnssec-keygen -a HMAC-MD5 -b 128 -n HOST westos
# 可以在/mnt下面生成 cat /mnt/Kwestos.+157+63271.private查看加密字符
vim /etc/westos.key 在dns服务器自己的加密文件中写信息
vim /etc/named.conf
# 写入 includ "/etc/westos.key"
重启服务
vim /etc/named.rfc1912.zones
# 写入 allow-update {key westos;};
重启服务
nsupdate -k /mnt/Kwestos.+157+63271.private
> server 172.25.254.111
> update add test.westos.com 86400 A 172.25.254.111
>send
>quit
测试:在111上面dig www.westos.com 查看更新
dhcp和dns的域名解析
yum install dhcp -y #安装dhcp服务
cd /etc/dhcp/
cp /usr/share/doc/dhcp*/dhcp.conf.example dhcpd.conf
# 复制模板
vim /etc/dhcp/dhcpd.conf
# option domin-name "wetsos.com"
# option domin-name-server 172.25.254.66
# 设置IP的范围
#添加 ddns-update-style interim;
#key westos {
#algorithm hmac-md5;
#secret 密钥
#};
#zone westos.com {
#primary 172.0.0.1;
#key westos;
#};
重启dhcpd和named服务关闭火墙
将测试机网络改为dhcp重启网络
测试:dig www.westos.com