失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > Linux网络之DNS域名解析服务

Linux网络之DNS域名解析服务

时间:2019-05-21 02:04:46

相关推荐

Linux网络之DNS域名解析服务

目录

1、DNS的自我介绍:

2、DNS服务器类型:

(1)缓存域名服务器:

(2)主域名服务器:

(3)从域名服务器:

3、DNS查询类型及原理:

4、正向解析:

5、 Linux网络服务之DNS正反向解析项目实验:

DNS反向解析:

1、DNS的自我介绍:

在TCP/IP网络中的设备之间进行通信,是利用和依赖于IP地址实现的。但数字形式的IP地址是很难记(64.233.189.147),而域名形式的地址更加直观和更容易被用户记住()。

域名解析:是把域名指向网站空间IP,让人们通过注册的域名可以方便地访问到网站的一种服务。IP地址是网络上标识站点的数字地址,为了方便记忆,采用域名来代替IP地址标识站点地址。域名解析就是域名到IP地址的转换过程。域名的解析工作由DNS服务器完成。

域名解析:也叫域名指向、服务器设置、域名配置以及反向IP登记等等。说得简单点就是将好记的域名解析成IP,服务由DNS服务器完成,是把域名解析到一个IP地址,然后在此IP地址的主机上将一个子目录与域名绑定。

2、DNS服务器类型:

(1)缓存域名服务器:

提供域名解析结果的缓存功能,目的在于提高查询速度和效率,但是没有自己控制的区域地址数据。

(2)主域名服务器:

管理和维护所负责解析的域内解析库的服务器。

(3)从域名服务器:

从主服务器或从服务器"复制"(区域传输)解析库副本。

扩充:

IPv4的根名称服务器:全球共13个负责解析根域的DNS服务器,美国10个,英国1,瑞典1,日本1

IPv6的根名称服务器:全球共25个,中国1主3从,美国1主2从

3、DNS查询类型及原理:

(1)递归查询:一般客户机和本地DNS服务器之间属于递归查询,即当客户机向DNS服务器发出请求后,若DNS服务器本身不能解析,则会向另外的DNS服务器发出查询请求,得到最终的肯定或否定的结果后转交给客户机。此查询的源和目标保持不变,为了查询结果只需要发起一次查询。(不需要自己动手)

(2)迭代查询:一般情况下(有例外)本地的DNS服务器向其它DNS服务器的查询属于迭代查询,如:若对方不能返回权威的结果,则它会向下一个DNS服务器(参考前一个DNS服务器返回的结果)再次发起进行查询,直到返回查询的结果为止。此查询的源不变,但查询的目标不断变化,为查询结果一般需要发起多次查询。(需要自己动手)

本地名称解析配置文件:hostsLinux: /etc/hostswindows: c/windows/system32/drivers/etc/hostswindows系统查询dns缓存命令:ipconfig /displaydnswindows系统清理dns缓存命令:ipconfig /flushdns

大型、分布式的互联网DNS解析库:

根. 根域名DNS服务器:专门负责根域名;

一级DNS服务器:专门负责一级域名的解析(一般代表一种类型的组织机构或国家地区);

.com(工商 企业) .net(网络供应商) .edu(教育机构) .cn(中国国家域名) .org(团体组织) .gov (政府部门)

补充部分域名地址:

114.114.114.114是国内移动、电信和联通通用的DNS,手机和电脑端都可以使用。

8.8.8.8是GOOGLE公司提供的DNS,该地址全球通用,相对来说,更适合国外以及访问国外网站的用户使用。

223.5.5.5 和 223.6.6.6 是阿里云DNS。

4、正向解析:

区域解析库:由众多资源记录RR(Resource Record)组成;

记录类型:A, AAAA, PTR, SOA, NS, CNAME, MX;

SOA:起始授权记录,一个区域解析库有且仅能有一个SOA记录,必须位于解析库的第一条记录;

A(internet Address):作用,域名解析成IP地址。

AAAA(FQDN): --> IPV6。

PTR(PoinTeR):反向解析,ip地址解析成域名。

NS(Name Server):专用于标明当前区域的DNS服务器,服务器类型为域名服务器。

CNAME :别名记录。

MX(Mail eXchanger):邮件交换器。

TXT:对域名进行标识和说明的一种方式,一般做验证记录时会使用此项,如:SPF(反垃圾邮件)记录,https验证等;

#固定格式name [TTL] IN rr_type value缓存时间internet记录区域解析库 值$TTL 1D@ IN SOA . . (0 ; serial1D; refresh1H; retry1W; expire3H ) ; minimumNS.master A 192.168.91.100wwwA 192.168.91.103dbA 192.168.91.101INMX 10 .mail A 192.168.91.10ftpCNAME www$TTL 1D#有效解析记录的生存周期@ in SOA . . ( #“@"符号表示当前的DNS区域名0 ; serial#更新序列号,可以是10位以内的整数1D ; refresh #刷新时间,重新下载地址数据的间隔1H ; retry #重试延时,下载失败后的重试间隔1W ; expire#失效时间,超过该时间仍无法下载则放弃#3H) ; minimum #无效解析记录的生存周期,NS. #记录当前区域的DNS服务器的名称A192.168.80.10 #记录主机IP地址IN MX 10 .#MX为邮件交换记录,数字越大优先级越低www IN A192.168.80.10 #记录正向解析对应的IPmail IN A192.168.80.11 #MX为邮件交换记录,数字越大优先级低 ftp IN CNAME www #CNAME使用别名,ftp 是www的别名* IN A 192.168.80.100 #泛域名解析,“*"代表任意主机名

5、 Linux网络服务之DNS正反向解析项目实验:

#yum仓库安装bind软件包[root@localhost ~]#yum install bind bind-utils -y#关闭防火墙[root@localhost ~]#systemctl stop firewalld.service[root@localhost ~]#setenforce 0#开启服务[root@localhost ~]#systemctl start named#过滤查看一下named[root@localhost ~]# netstat -natp | grep namedtcp 00 127.0.0.1:53 0.0.0.0:*LISTEN2136/namedtcp 00 127.0.0.1:953 0.0.0.0:*LISTEN2136/namedtcp6 00 ::1:53 :::*LISTEN2136/namedtcp6 00 ::1:953 :::*LISTEN2136/named#更改网卡域名DNS地址[root@localhost ~]#vim /etc/sysconfig/network-scripts/ifcfg-ens33 DNS1=127.0.0.1#重启网卡[root@localhost ~]#systemctl restart network#查看配置文件包[root@localhost ~]# rpm -qc bind/etc/logrotate.d/named/etc/named.conf/etc/named.iscdlv.key/etc/named.rfc1912.zones/etc/named.root.key/etc/rndc.conf/etc/rndc.key/etc/sysconfig/named/var/named/named.ca/var/named/named.empty/var/named/named.localhost/var/named/named.loopback#先host一下百度域名地址[root@localhost ~]# host ;; connection timed out; no servers could be reached#修改一下配置[root@localhost ~]#vim /etc/named.conf #可以修改配置,注释,或者删除这两行listen-on port 53 { any; };allow-query{ any; };# // listen-on port 53 { 127.0.0.1; };# // allow-query { localhost; };#重新加载DNS服务[root@localhost ~]#rndc reloadserver reload successful#再host一下百度域名[root@localhost ~]# host is an alias for www..www. has address 180.101.49.11www. has address 180.101.49.12#自己编写域名[root@localhost named]# vim /etc/named.rfc1912.zones zone "" {type master;file ".zone";allow-update { none; };};#再cd到 /var/named目录下[root@localhost ~]# cd /var/named/[root@localhost named]# lsdata dynamic named.ca named.empty named.localhost named.loopback slaves#保留权限复制[root@localhost named]# cp -p named.localhost .zone#编辑数据库文件,解析记录对应关系[root@localhost named]#vim .zone$TTL 1D@ IN SOA . . (0 ; serial1D; refresh1H; retry1W; expire3H ) ; minimumNS.master INA 192.168.59.131www A 192.168.59.132MX 10 .mail INA 192.168.59.30ftpINCNAME www*A 192.168.59.132 #代表泛域名@A 192.168.59.132 #代表不需要主机名字#重启一下服务[root@localhost named]# rndc reloadserver reload successful

#客户端1访问服务器编写的域名[root@localhost ~]# cat /etc/resolv.conf # Generated by NetworkManagernameserver 192.168.59.131[root@localhost ~]# host has address 192.168.59. mail is handled by 10 .[root@localhost ~]# host has address 192.168.59.30[root@localhost ~]# host has address 192.168.59.132[root@localhost ~]# host has address 192.168.59.132

#客户端2做http服务实验,测试#先yum安装httpd软件包[root@localhost ~]# yum install httpd -y已安装:httpd.x86_64 0:2.4.6-97.el7.centos 作为依赖被安装:apr.x86_64 0:1.4.8-7.el7 apr-util.x86_64 0:1.5.2-6.el7httpd-tools.x86_64 0:2.4.6-97.el7.centosmailcap.noarch 0:2.1.41-2.el7完毕![root@localhost ~]# cd /var/www/html[root@localhost html]# ls[root@localhost html]# vim index.html[root@localhost html]# ls[root@localhost html]# ifconfig ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500inet 192.168.59.132 netmask 255.255.255.0 broadcast 192.168.59.255#开启httpd服务[root@localhost html]# systemctl start httpd#服务器端或浏览器访问IP地址[root@localhost named]# curl 192.168.59.132hello word....[root@localhost named]# curl hello word....

DNS反向解析:

#服务器端#先修改区域配置文件(在文末添加)[root@localhost named]#vim /etc/named.rfc1912.zoneszone "59.168.192.in-addr.arpa" IN {type master;file ".zone";allow-update { none; };};#复制正向解析文件[root@localhost named]# cp .zone .zone -p#编辑文件[root@localhost named]# vim .zone $TTL 1D@ IN SOA . . (0 ; serial1D; refresh1H; retry1W; expire3H ) ; minimumNS.master INA 192.168.59.131100INPTR.88INPTR.#重启服务[root@localhost named]# rndc reloadserver reload successful#客户端进行验证[root@localhost ~]# host 192.168.59.100100.59.168.192.in-addr.arpa domain name pointer .[root@localhost ~]# host 192.168.59.8888.59.168.192.in-addr.arpa domain name pointer .

总结:

DNS在网络中是非常重要的,各大厂面试题里的常驻选手,大家可以多了解一下域名解析服务的原理及步骤,能够构建主从域名和分离解析域名服务器。

如果觉得《Linux网络之DNS域名解析服务》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。