1.非权威 / 递归名称服务器
客户端通过其查找来自权威名称服务器的数据。递归名称服务器的类型包括 存名称服务器 : 仅用
于查找 , 对于非重要数据之外的任何内容都不具有权威性
2.关于dig:
dig+域名 # 用来解析一个域名
其显示内容:关于查询和答案的信息,其中包括响应状态和设置的任何特殊标记
- QUESTION : 提出实际的 DNS 查询
– ANSWER : 响应( 如果有 )
– AUTHORITY : 负责域 / 区域的名称服务器
– ADDITIONA : 提供的其他信息 , 通常是关于名称服务器– 底部的注释指出发送查询的递归名称服务器以及获得响应所花费的时间
# 在真机上操作,使得真机成为路由器,实现虚拟机通网
[root@foundation78 network-scripts]# firewall-cmd --list-all # 查看火墙信息的时候报错
Error: INVALID_ZONE
[root@foundation78 network-scripts]# systemctl stop libvirtd.service # 是因为虚拟设备与火墙冲突,先关闭虚拟设备
[root@foundation78 network-scripts]# systemctl restart firewalld.service # 重启火墙
[root@foundation78 network-scripts]# systemctl stop libvirtd.service # 火墙成功起来之后,再开启虚拟设备
[root@foundation78 network-scripts]# firewall-cmd --add-masquerade
Success
[root@foundation78 network-scripts]# firewall-cmd --list-all
public (default, active)
interfaces: br0 enp2s0 wlp0s20f0u1
sources: services: dhcpv6-client http ssh
ports:
masquerade: yes
forward-ports:
icmp-blocks: rich
rules:
[root@foundation78 network-scripts]# sysctl -a | grep ip_forward
net.ipv4.ip_forward = 1
配置虚拟机,使得虚拟机成为高速缓存DNS
[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
ONBOOT=yes
BOOTPROTO=none
IPADDR=172.25.254.142
NETMASK=255.255.255.0
GATEWAY=172.25.254.78 # 设定网关
[root@localhost ~]# systemctl restart network
[root@localhost ~]# route -n # 查看网关
[root@localhost ~]# vim /etc/resolv.conf
nameserver 114.114.114.114 # 权威名称服务器,提供大量稳定数据
[root@localhost ~]# ping www.baidu.com # 保证虚拟机可以上网
PING www.a.shifen.com (111.13.100.92) 56(84) bytes of data.
64 bytes from 111.13.100.92: icmp_seq=1 ttl=51 time=302 ms
^C64 bytes from 111.13.100.92: icmp_seq=2 ttl=51 time=341 ms
[root@localhost ~]# vim /etc/yum.repos.d/yum.repo # 配置好yum源 ,自己根据实际情况配置
[rhel7.2]
name=rhel7.2
baseurl=http://172.25.254.78:/rhel7.2
gpgcheck=0
[root@localhost ~]# yum clean all
[root@localhost ~]# yum install -y bind # 安装DNS服务器
[root@localhost ~]# ll -ld /etc/rndc.key # 因为没有开启服务,所以此密钥文件不存在
ls: cannot access /etc/rndc.key: No such file or directory
[root@localhost ~]# systemctl start named # 如果启动不起来,需要敲键盘,重启不成功是因为加密字符不够,敲键盘的目的是生成加密字符存入key文件
[root@localhost ~]# ll -ld /etc/rndc.key
-rw-r-----. 1 root named 77 Nov 17 17:07 /etc/rndc.key
[root@localhost ~]# cat /etc/rndc.key
[root@localhost ~]# systemctl stop firewalld
客户端测试
[root@foundation78 ~]# vim /etc/resolv.conf # 修改dns询问器
nameserver 172.25.254.142
[root@foundation78 ~]# dig www.baidu.com # 查询baidu的域名,发现不仅不能查到,也没有不能查到的原因
DNS服务端
[root@localhost ~]# netstat -antlp | grep named # 查看named服务的端口
[root@localhost ~]# vim /etc/named.conf # 控制53端口控制的ipv4地址在所有网络上
11 listen-on port 53 { any; };
[root@localhost ~]# systemctl restart named
客户端测试
[root@foundation78 ~]# dig www.baidu.com # 再次查询,发现被拒绝
DNS服务端
[root@localhost ~]# vim /etc/named.conf
17 allow-query { any; }; # 控制哪些用户可以向DNS服务器查询信息,any表示所有
[root@localhost ~]# systemctl restart named.service
客户端测试
[root@foundation78 ~]# dig www.baidu.com
DNS服务端
[root@localhost ~]# vim /etc/named.conf # 设定DNS查询器,当有用户来访问DNS时,如果DNS不知道答案,114.114.114.114就会告诉DNS
18 forwarders { 114.114.114.114; };
[root@localhost ~]# systemctl restart named.service
客户端测试
[root@foundation78 ~]# dig www.baidu.com
DNS服务端
[root@localhost ~]# vim /etc/named.conf # DNS不做检测
32 dnssec-validation no;
注:DNS每次进行查询时,都要通过DNSSEC进行安全检测,否则查询不到信息,no表示不检测安全
性,因为我们是实验,所以为了加快查询速度,所以设置为no
[root@localhost ~]# systemctl restart named
客户端测试
[root@foundation78 ~]# dig www.baidu.com
[root@foundation78 ~]# dig www.baidu.com # 第二次访问