`
caobihole
  • 浏览: 952228 次
文章分类
社区版块
存档分类
最新评论

Linux系统服务 2 ---- DNS基础及域名系统架构

 
阅读更多


1 域名

1 比如www.LinuxCast.net,实际上域名只是后面的一部份,但是我们一般都是整个叫为域名

2 对于域名来说,我们一般使用.来分割,严格的域名最后一位还是有一个.的,但是我们都直接省略

3 域名分为三个部分

主机名 该域中的某台主机,对于网页服务器来说都是www,但是也有ftp,mail等等

域名 域名称

类型 标识此域名的类型,比较常见的有com , net , org , edu , gov

2 DNS

1 每一个域名实际上代表的是一个ip地址,比如www.LinuxCast.net的ip为1.1.1.1(假设)

2 DNS(Domain Name System),服务有DNS来提供

3 比如我要访问www.LinuxCast.net

第一步我们先去请求DNS服务器

第二步DNS返回当前域名的ip地址

第三步主机通过ip地址去访问当前的网站


3 DNS客户端

1 我们日常使用的支持网络的计算机一般都是做为一个DNS客户端使用,应用程序,服务,进程等等通过操作系统底层的功能发起对dns服务器的查询,对指定域名进行解析

2 Linux中一般使用系统底层提供的gethostbyname()来进行域名解析

3 解析基于以下几种方式

文件(/etc/hosts . /etc/networks)

DNS

NIS

4 我们可以通过配置文件/etc/nsswhich,conf来控制查询的顺序,默认是先文件hosts , 第二是DNS

4 DNS专用查询命令

1 命令host可用于进行dns的查询

host www.LinuxCast.net

2 dig命令也可以用来进行dns查询,输出较为详细的信息

dig www.LinuxCast.net

3 命令host和dig都不会使用/etc/nsswhich.conf的配置,只会通过/etc/resolve.conf进行dns查询



5 DNA查询

1 DNS是一个树状结构,查询的时候根据域名从右到左查询,域名每一级由独立的一个或多个服务器

2 比如我们要查询www.LinuxCast.net(其实是www.LinuxCast.net.)这个域名

第一步我们先去查找根域名服务器,也就是. 那么这个根域名服务器保存了比如com , net , org等等的信息

第二步根据我们找到的net,我们去查net. , 也就是在顶级域名服务器,保存的是域名,比如LinuxCast等等

第三步根据找到的LinuxCast.net.,我们去查这个域名下的主机名,通常这个服务器保存比如www , mail , ftp等主机

第四步找到www.LinuxCast.net

3 我们可以通过 dig +trace www.LinuxCast.net 来追踪这个DNS的解析过程


6 DNS的查询类型

1 递归查询

比如我们要查询www.LinuxCast.net

首先我们客户端发送请求到本地的DNS服务器,然后本地DNS服务器去查询根域名服务器.并返回给本地域名服务器,本地域名服务器根据返回回来的结果进行查询下一个..... 最后返回给客户端

2 循环查询

同样还是查询www.LinuxCast.nat

首先客户端先通过本地域名服务器,然后本地域名服务器去查找根域名服务器. 然后根域名服务器去找顶级域名服务器net,顶级域名服务器找LinuxCast.net,最后再把结果返回给客户端

3 实际应用中是客户端和本地服务器之间利用循环查询,本地域名服务器和其他服务器之间利用递归查询

7 资源记录

1 在DNS服务器上,DNS的信息通过一个叫做资源记录(RR,Resource Record)的格式进行保存,RR不仅能够保存域名到ip地址的对应信息,还能够保存很多其他的信息

2 资源记录常用的属性有

NAME ---- 名称

CLASS ---- 类别(一般都市IN,代表internet)

TYPE ---- 类型(A代表的是ipv4,4A代表ipv6 等等)

RDATA ---- 数据


8 DNS服务器的类型

1 Primary DNS Server(Master)

一个域的服务器保存该域的zone配置文件,该域所有的配置,更改都在该服务器上面

2 Seconday DNS Server(Slave)

从服务器一般做为冗余负载使用,一个域的从服务器从该域的主服务器上抓取zone配置文件,从服务器不进行信息修改,所有的修改与主服务器同步

3 Caching only Server

DNS缓存服务器不存在任何的zone文件,仅仅依靠缓存为客户端提供服务,通常用于负载均衡以及加速访问


9 zone

在DNS服务器中,一般一个域通过一个zone文件保存该域的相关信息,zone文件的格式是标准化的,一个典型的zone配置文件内容如下



分享到:
评论

相关推荐

    LINUX基础与服务器架构课程 大作业

    LINUX基础与服务器架构大作业 【需求说明】 搭建小型公司局域网服务器,并实现以下服务: 1.DHCP服务 2.Samba共享服务 3.ftp文件共享服务 4.Web网站服务 5.DNS域名解析服务 【环境搭建】(测试客户端系统版本不做...

    虚拟化基础与Linux基础以及web服务.pdf

    虚拟化基础与Linux基础以及web服务 ...06域名和域名系统DNS 07实战项目一在Ubuntu上安装FTP服务 01 Web服务的用户端和服务端 02三层架构 03 Web服务相关知识 04实战项目-PHP+MySQL+ Apache动态网站服务部署

    IPv6域名系统及其在Linux下的实现

    域名系统作为当今Internet的基础架构将在下一代网络中发挥更大的作用IPv6是被设计用来取代IPv4协议的下一代网络协议它的许多新特性也需要域名系统的支持本文根据IPv6的地址结构特点分析了IPv6中域名系统的体系结构和...

    citrix-linuxvda-rhel7-1.2.0.tgz

    SSSD 为系统守护程序,其主要功能是通过能够提供缓存和脱机支持的通用架构提供对身份和身份验证远程资源的访问权限。 SSSD 同时提供 PAM 和 NSS 模块。 有关详细信息,请参阅为 RHEL 配置 SSSD 和为 Ubuntu 配置 ...

    Linux运维从入门到高级全套案例v3.rar

    目录 Linux入门篇 操作系统简介 1.2 Linux发展趋势 3 Linux系统安装 4 Linux学习技巧 2. Linux系统篇…… 2.1 Linux系统管理… ...5.6构建DNS域名解析服务器 5.7 MySQL主从高可用架构… 5.8Ls+ Keepalived负载均衡

    linux网络编程-宋敬彬-part1

    1.5 Linux的系统架构 7 1.5.1 Linux内核的主要模块 7 1.5.2 Linux的文件结构 9 1.6 GNU通用公共许可证 10 1.6.1 GPL许可证的历史 10 1.6.2 GPL的自由理念 10 1.6.3 GPL的基本条款 11 1.6.4 关于GPL...

    安装部署zimbra仓库并链接外部ldap(1).docx

    Zimbra是一款开源的邮件和协作平台,可以部署在Linux服务器上,提供邮件、日历、联系人、任务等多个功能模块,以及Web客户端和移动端应用程序,支持多租户和高可用性架构。 部署Zimbra需要满足以下系统要求: - 64...

    Linux运维从入门到高级全套案例v3

    5. 6 构建DNS域名解析服务器 99 5. 7 MySQL主从高可用架构 102 5. 8 LVS+Keepalived负载均衡 110 5. 9 Squid缓存服务器配置 116 6. Linux下高并发系统内核优化 122 7. Nginx负载均衡机制及常见问题 124 8. Linux运维...

    nacos1.4.1版本资源(windows+linux)注册中心、配置管理

    另外,Nacos提供了动态 DNS 服务,能够根据实际情况动态调整域名解析,以支持动态环境下的服务发现和路由。这使得在动态环境下的服务部署和发现变得更加灵活和便利。 此外,Nacos还支持对注册的服务实例进行健康...

    DDNS-go可自动获得你的公网 IPv4 或 IPv6 地址,并解析到对应的域名服务

    DDNS-Go目前支持Mac、Windows、Linux系统,支持ARM、x86架构;它支持国内主流的的域名服务商,如阿里云、 腾讯云、华为云、百度云,也支持大名鼎鼎的Cloudflare,还通过自定义回调支持更多的第三方DNS服务商

    企业Intranet建设宝典

    9 二、TCP/IP协议……………………9 三、域名系统(DNS)…………………11 四、动态主机配置协议(DHCP)……………………11 五、Windows Internet命名服务(WINS)…………………13 六、TCP/IP的命令测试…………………14...

    低清版 大型门户网站是这样炼成的.pdf

    第7章 ssh 2热身——构建新闻发布系统 427 7.1 门户网站新闻资讯基本分类 427 7.2 新闻发布系统需求分析 429 7.3 新闻发布系统功能设计 429 7.4 新闻栏目后台管理 432 7.4.1 展示层jsp 2+struts 2 标签库实现 ...

    用DNSPod和Squid打造自己的CDN全程分享

    另外一方面,本篇文章基本不会涉及到Windows的内容,整套系统将会是架构在CentOS Linux 5上。别问我为什么不是Windows,因为Windows只能拿一个字形容:烂。不喜欢Linux,或者认为Linux学习起来有困难的朋友,可以到...

Global site tag (gtag.js) - Google Analytics