DNS 简介
- 什么是域名
域名(DomainName),简称域名、网域,是由一串用点分隔的名字组成的Internet上某一台计算机
或计算机组的名称,用于在数据传输时标识计算机的电子方位。具有独一无二,不可重复的特性。。
- 域名的关系和组成
常见域名:www.baidu.com
分类:
1、国家地区域名: (cn(中国)、hk(香港)、sg (新加坡)等。
2、通用项级域名: com (商业机构)、org (非营利组织)、edu (教育机构)等。
3、新通用顶级域名: red (红色、热情)、top (顶级、高端)等。
4、com.cn属于“二级域名”,是cn项级域的子域。
baidu:级域(注册域) ,可由·个人或组织申请注册。
什么是DNS?
域名系统(Domain Name System,缩写: DNS)是互联网的一项服务。域名解析是把域名指向网站空间IP,让人们通过注册的域名可以方便地访问到网站的一种服务。IP地址是网络上标识站点的数字地址,为了方便记忆,采用域名来代替IP地址标识站点地址。域名解析就是域名到IP地址的转换过程。域名的解析工作由DNS服务器完成。可以理解为DNS就是翻译官。
流程
在从自己本机中查询host文件,是否有此域名的解析记录,如果有则返回给浏览器
如果host文件没有域名的解析记录,则会在本机上继续查询是否有DNS的解析缓存,如果有则返回给浏览器
如果本机没有DNS的解析记录,则会在网卡设置的DNS服务器上,查询域名的解析结果
如果DNS服务器上也没有查询到,则会从别人询问的结果的缓存中查找
DNS服务器分类
主服务器
在特定区域内具有唯一性,负责维护该区域的域名与IP地址之间的对应关系。
从服务器:从服务器中获得域名与IP地址的对应关系并进行维护,以防止主服务器宕机(无法恢复的死机)
缓存服务器:主机向其他域名解析器服务器查询获得域名与IP对应关系,并经常查询的域名信息保存到服务器本地,以此来提高重复查询时的效率。
要求:三台有ip地址的虚拟机
web服务器 192.168.1.30
dns服务器 192.168.1.31
cli客户端 192.168.1.20
三台都要关闭防火墙
# setenforce 0
# systemctl stop firewalld
一、部署web服务器
修改hostname
# hostnamectl sethostname web
安装nginx服务
# yum -y install nginx
# nginx //启动nginx服务
测试
配置ifcfg-ens33文件
# vim /etc/sysconfig/network-scripts/ifcfg-ens33
YPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=none
TPADDR=192.168.1.30
NETMASK=255.255.255.0
GATEWAY=192.168.1.2
DNS1=8.8.8.8
DNS2=114.114.114.114
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=68c31b83-5dc7-42af-bc52-14049fd26f3c
DEVICE=ens33
ONBOOT=yes
IPADDR=192.168.1.30
PREFIX=24
:wq
二、配置cli客户机
配置ifcfg-ens33文件,同上,ip地址不同
安装elinks服务
# yum -y install elinks.x86_64
修改resolv.conf文件
# echo "nameserver 192.168.1.31" > /etc/resolv.conf //指定的是dns服务器的ip
三、配置dns服务器
配置ifcfg-ens33文件,同上,ip地址不同
安装bind服务
# yum -y install bind.x86_64
启动named服务
# named
备份重要的配置文件
# cp /etc/named.conf /etc/named.conf.bak
# cp /etc/named.rfc1912.zones /etc/named.rfc1912.zones.bak
修改文件配置
# vi /etc/named.conf
...
options {
listen-on port 53 { 127.0.0.1;any; };
listen-on-v6 port 53 { ::1; };
directory "/var/named";
dump-file "/var/named/data/cache_dump.db";
statistics-file "/var/named/data/named_stats.txt";
memstatistics-file "/var/named/data/named_mem_stats.txt";
recursing-file "/var/named/data/named.recursing";
secroots-file "/var/named/data/named.secroots";
allow-query { localhost;any; };
...
# vi /etc/named.rfc1912.zones
...(在最后添加)
zone "web" IN {
type master;
file "web.zone";
allow-update { none; };
};
#保存退出
重启named服务
# systemctl restart named
编写web.zone文件
复制一份附属组为named的文件进行修改
# cd /var/named/
# cp -p named.localhost web.zone