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

DNS基础及域名系统架构

 
阅读更多
先拿csdn说事儿吧
www.csdn.net
↓ ↓ ↓
主 域 类
机 名 型

类型:标识此域名的类型(com、net、org、edu、gov等)
域名:域名称
主机名:该域中某台主机的名称
注释:
① 表示csdn.net这个域里面的www这台网页服务器
② 对大小写透明,比如Www.cSdN.neT,亦同
③ 完整的域名实际上在末端还有个".",也就是,www.csdn.net.,"."代表root DNS server

域名是面向用户的,而计算机底层仍然是依赖IP通信



日常主机(个人PC等)一般都是作为DNS客户端使用
浏览器等通过调用OS底层提供的gethostbyname()发起对DNS服务器的查询
进而实施域名解析

域名解析方式


① /etc/hosts
② DNS
③ NIS
注释:
⒈ hosts文件优先级较高,OS一般会优先访问hosts
比如:
[root@even ~]# cat /etc/hosts
127.0.0.1 even.example.com even
117.79.93.222 www.csdn.net
不过,这个hosts文件常会被一些黑客拿去“钓鱼攻击”
将中国农业银行的IP解析到黑客所设置的另外一个钓鱼网
不知不觉你的用户名和密码就被socket

⒉ 二把手的当属DNS,在resolv.conf有它的配置
[root@even ~]# cat /etc/resolv.conf
; generated by /sbin/dhclient-script
search example.com ##域名服务器的域名
nameserver 192.168.227.2 ##域名服务器对应的IP地址
在client端,DNS服务器的相关信息就保存在文件/etc/resolv.conf中
每当client向server问一个域名,而server端必须要回答此域名的真正IP地址
当地的DNS先会查自己的资料DNS服务器库。如果自己的资料库没有,则会往该DNS的上级的DNS询问
依此得到答案之后,将收到的答案存起来,并回答客户
DNS服务器会根据不同的授权区(Zone),记录所属该网域下的各名称资料,这个资料包括网域下的次网域名称及主机名称


⒊ 但是我们可以通过/etc/nsswitch.conf改变查询优先级
[root@even ~]# cat /etc/nsswitch.conf
hosts: files dns
这里的files就是指/etc/hosts这个文件
如果我们想改变这个顺序:
要么把files这个关键字删掉
要么把files和dns掉个序

DNS专用查询命令


① 简单型:host
─→host www.csdn.net
② 复杂型:dig
─→dig www.csdn.net
这两个都不会使用/etc/nsswitch.conf的配置
只会通过/etc/resolv.conf进行DNS查询


[root@even ~]# dig +trace www.csdn.net

; <<>> DiG 9.3.6-P1-RedHat-9.3.6-20.P1.el5 <<>> +trace www.csdn.net
;; global options:  printcmd
.                       371171  IN      NS      d.root-servers.net.
.                       371171  IN      NS      k.root-servers.net.
.                       371171  IN      NS      m.root-servers.net.
.                       371171  IN      NS      e.root-servers.net.
.                       371171  IN      NS      i.root-servers.net.
.                       371171  IN      NS      f.root-servers.net.
.                       371171  IN      NS      a.root-servers.net.
.                       371171  IN      NS      b.root-servers.net.
.                       371171  IN      NS      c.root-servers.net.
.                       371171  IN      NS      h.root-servers.net.
.                       371171  IN      NS      g.root-servers.net.
.                       371171  IN      NS      l.root-servers.net.
.                       371171  IN      NS      j.root-servers.net.
;; Received 512 bytes from 192.168.1.1#53(192.168.1.1) in 87 ms

net.                    172800  IN      NS      k.gtld-servers.net.
net.                    172800  IN      NS      g.gtld-servers.net.
net.                    172800  IN      NS      j.gtld-servers.net.
net.                    172800  IN      NS      m.gtld-servers.net.
net.                    172800  IN      NS      i.gtld-servers.net.
net.                    172800  IN      NS      f.gtld-servers.net.
net.                    172800  IN      NS      e.gtld-servers.net.
net.                    172800  IN      NS      h.gtld-servers.net.
net.                    172800  IN      NS      d.gtld-servers.net.
net.                    172800  IN      NS      l.gtld-servers.net.
net.                    172800  IN      NS      a.gtld-servers.net.
net.                    172800  IN      NS      c.gtld-servers.net.
net.                    172800  IN      NS      b.gtld-servers.net.
;; Received 487 bytes from 128.8.10.90#53(d.root-servers.net) in 348 ms

csdn.net.               172800  IN      NS      ns1.dnsv2.com.
csdn.net.               172800  IN      NS      ns2.dnsv2.com.
;; Received 171 bytes from 192.42.93.30#53(g.gtld-servers.net) in 236 ms

www.csdn.net.           600     IN      A       117.79.93.222
csdn.net.               600     IN      NS      ns1.dnsv2.com.
csdn.net.               600     IN      NS      ns2.dnsv2.com.
;; Received 100 bytes from 221.204.186.8#53(ns1.dnsv2.com) in 195 ms


注释:
① 由上可知:
"." → "net." → "csdn.net." → "www.csdn.net."
② "csdn.net."这个域名服务器通常由企业自行维护或者个人租用运营商
可由我们自由控制在这个域名下有哪些主机信息
我们可以自行搭建这样一台DNS服务器


DNS查询类型


① 递归查询


② 循环查询


③ 混合查询


资源记录


在DNS服务器上,DNS的信息通过资源记录(RR,Resource Record)的格式进行保存
RR不仅能够保存域名到IP的映射信息,还能够保存很多其他信息
RR常用属性:
● name :域名、主机名,如www,mail
● class :资源类别,一般都是IN,代表Internet
● type :资源类型,常见如下:
▼ IN A → IPV4地址:用于设置主机名对应IP地址的对应记录
▼ IN AAAA → IPV6地址
▼ IN MX → 邮件记录:用于提供邮件服务器名称
▼ IN CNAME → 别名:用于在区域文件中对主机名称设置别名
▼ IN PTR → 指针(逆向解析):语法(IP地址INPTR主机名)
▼ IN SRV → 服务资源

▼ IN NS
● rdata :record data
比如:
www INA 192.168.1.1
↓↓↓ ↓
name class
type rdata



DNS服务器类型


Master:保存该域的zone配置文件,该域的所有配置、更改都在该服务器上进行
Slave: 抓取Master的zone配置文件,但没有权限修改zone配置文件,可作为负载均衡使用
Cache: 不存在任何zone配置文件,仅依靠缓存为客户端提供服务,通常作负载均衡和加速访问使用,比如在大的局域网出口就可以架设cache DNS server
可见、无论Slave或cache、都是依靠缓存Master的zone配置文件


Zone配置文件


在DNS服务器中,一般一个域通过一个zone文件保存该域的相关信息
zone文件格式是标准化的


注释:
① "NS @"之上的代码无须我们去管理,有标准的模块可供参考

▼ serial:序列号,如果DNS配置文件修改一次,则序列号加一,从而通知下级或从服务器去刷新配置文件,因为,序列号不一致
▼ refresh:刷新时间,1D:一天,也就是从服务器一天刷新一次
▼ retry:如果刷新不成功,多长时间重试
▼ expire:多长时间缓存信息过期
以上这些信息是用来规定主从服务器之间信息的同步
一般使用默认即可,可能需要修改的仅是serial


高级查询


● dig -t mx www.csdn.net
案例:查询gmail的邮件服务器

[root@even ~]# dig -t mx gmail.com

; <<>> DiG 9.3.6-P1-RedHat-9.3.6-20.P1.el5 <<>> -t mx gmail.com
;; global options:  printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 64810
;; flags: qr rd ra; QUERY: 1, ANSWER: 5, AUTHORITY: 4, ADDITIONAL: 8

;; QUESTION SECTION:
;gmail.com.                     IN      MX

;; ANSWER SECTION:
gmail.com.              949     IN      MX      10 alt1.gmail-smtp-in.l.google.com.
gmail.com.              949     IN      MX      20 alt2.gmail-smtp-in.l.google.com.
gmail.com.              949     IN      MX      30 alt3.gmail-smtp-in.l.google.com.
gmail.com.              949     IN      MX      40 alt4.gmail-smtp-in.l.google.com.
gmail.com.              949     IN      MX      5 gmail-smtp-in.l.google.com.

;; AUTHORITY SECTION:
gmail.com.              186940  IN      NS      ns2.google.com.
gmail.com.              186940  IN      NS      ns3.google.com.
gmail.com.              186940  IN      NS      ns1.google.com.
gmail.com.              186940  IN      NS      ns4.google.com.

;; ADDITIONAL SECTION:
alt1.gmail-smtp-in.l.google.com. 244 IN AAAA    2a00:1450:4010:c04::1b
alt2.gmail-smtp-in.l.google.com. 244 IN AAAA    2607:f8b0:4002:c04::1a
alt3.gmail-smtp-in.l.google.com. 244 IN AAAA    2607:f8b0:400d:c00::1b
alt4.gmail-smtp-in.l.google.com. 244 IN AAAA    2607:f8b0:400c:c02::1b
ns1.google.com.         184158  IN      A       216.239.32.10
ns2.google.com.         189126  IN      A       216.239.34.10
ns3.google.com.         186984  IN      A       216.239.36.10
ns4.google.com.         192641  IN      A       216.239.38.10

;; Query time: 28 msec
;; SERVER: 192.168.1.1#53(192.168.1.1)
;; WHEN: Tue Nov 27 00:26:40 2012
;; MSG SIZE  rcvd: 398

MX后面的数字表示优先级
● dig -x 逆向解析
● dig -t soa 查询zone配置文件里面"NS @"之上的信息
案例:查询csdn.net这个域的soa信息

[root@even ~]# dig -t soa csdn.net

; <<>> DiG 9.3.6-P1-RedHat-9.3.6-20.P1.el5 <<>> -t soa csdn.net
;; global options:  printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 5007
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 6

;; QUESTION SECTION:
;csdn.net.                      IN      SOA

;; ANSWER SECTION:
csdn.net.               570     IN      SOA     ns1.dnsv2.com. level3dnsadmin.dnspod.com. 1353658206 3600 180 1209600 180

;; AUTHORITY SECTION:
csdn.net.               320     IN      NS      ns1.dnsv2.com.
csdn.net.               320     IN      NS      ns2.dnsv2.com.

;; ADDITIONAL SECTION:
ns1.dnsv2.com.          14141   IN      A       122.225.217.193
ns1.dnsv2.com.          14141   IN      A       183.60.59.230
ns1.dnsv2.com.          14141   IN      A       221.204.186.8
ns2.dnsv2.com.          14141   IN      A       180.153.162.151
ns2.dnsv2.com.          14141   IN      A       112.90.143.34
ns2.dnsv2.com.          14141   IN      A       119.167.195.7

;; Query time: 27 msec
;; SERVER: 192.168.1.1#53(192.168.1.1)
;; WHEN: Tue Nov 27 00:31:54 2012
;; MSG SIZE  rcvd: 225


倘若大家在调试DNS连通性的时候,可以借助google提供的全球免费的DNS免费服务器:8.8.8.8

分享到:
评论

相关推荐

    如何搭建DNS–域名系统

    DNSDNS介绍DNS的概念因特网中的域名结构:分层树状结构DNS域名解析的过程发展解析过程DNS域名解析的方式DNS服务类型DNS配置DNS协议的一种开源实现–bindbind相关的程序包bind配置的要点DNS配置实例正向解析反向解析...

    Linux操作系统:DNS服务器简介.pptx

    DNS(Domain Name System,域名系统)是一个分布式数据库系统,其作用将域名解析成IP地址。 好记的名字 IP地址 DNS服务器 DNS系统组成 DNS系统的三部分组成: ● 域名空间:标识一组主机并提供他们的有关信息的树...

    DNS服务器试题.doc

    答:域名系统;主域名服务器,辅助域名服务器,缓存域名服务器,转发域名服务器 3. DNS服务器类型 答:本地DNS服务器,根DNS服务器,授权DNS服务器 4. 递归查询和迭代查询有什么不同?一般DNS客户端向DNS服务器提出...

    2-Windows中的DNS服务——正向解析&反向解析配置.docx

    域名系统采用类似目录树的等级结构。域名服务器为客户机/服务器模式中的服务器方,它主要有两种形式:主服务器和转发服务器。将域名映射为IP地址的过程就称为“域名解析”。 也就是说,DNS服务器的主要作用可以简单...

    DNS实验报告

    域名系统采用类似目录树的等级结构。域名服务器为客户机/服务器模式中的服务器方,它主要有两种形式:主服务器和转发服务器。DNS 命名用于 Internet的 TCP/IP网络中,通过用户友好的名称查找计算机和服务。当用户...

    如何对抗_DNS域名劫持

    如何对抗_DNS域名劫持 DNS不可缺少的Internet基础架构服务 • 无处不在的DNS – Email – WWW & WAP – Peer to peer applications – Instant Messaging – Game – Video – Voice over IP …… – IMS 系统以及...

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

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

    DNS服务器搭建.doc

    由于域结构网络中的每台计算机都有域名,而且通过Acti ve Directory进行的动态更新是安全的,所以在域结构网络的DNS服务器中必须启用动态 更新。但在工作组模式中,通常只有服务器才拥有域名,所以如果服务器都采用...

    IPv6时代的域名系统

    IPv6网络中的DNS与IPv4的DNS在体系结构上是一致的,都采用树型结构的域名空间,如图1所示。IPv4协议与IPv6协议的不同并不意味着需要单独两套IPv4 DNS体系和IPv6 DNS体系,相反的是,DNS的体系和域名空间必须是一致的...

    DNS服务器的配置与管理.doc

    客户机的 DNS设置 " " " " " " 5.1 DNS 服务器的概念和原理 " " DNS 是域名系统的缩写, 它是嵌套在阶层式域结构中的主机名称解 " "析和网络服务的系统。当用户提出利用计算机的主机名称查询相应的 IP" "地址请求的...

    任务:安装DNS服务器角色(“服务器”相关文档)共21张.pptx

    任务1 安装DNS服务器角色 一、课程导入 二、知识原理 2.1 域名系统概述 2.2 DNS 域名结构 2.3 FQDN的命名规则 2.4 DNS 服务的解决方案 2.5 主机名解析过程 三、演示:安装 DNS 服务器角色 四、小结 任务:安装DNS...

    Win2003 Server DNS服务安装

    DNS(Domain Name System,域名系统)是一种组织成层次结构的分布式数据库,里面包含有从DNS域名到各种数据类型(如IP地址)的映射。这通常需要建立一种A(Address)记录,意为“主机记录”或“主机地址记录”,是所有DNS...

    DNS服务器配置教程

    DNS(Domain Name System,域名系统)是一种组织成层次结构的分布式数据库,里面包含从DNS域名到各种数据类型(如IP地址)的映射。这通常需要建立一种A(Address)记录,意为“主机记录”或“主机地址记录”,是所有...

    基于twisted实现的智能dns系统smartdns.zip

    smartdns 是 python 语言编写,基于 twisted 框架实现的dns server,能够支持针对不同的dns请求根据配置返回不同的解析结果。smartdns获取dns请求的源IP或者客户端IP(支持edns协议的请 求可以获取客户端IP),根据...

    php项目源码_[主机域名]雨过星晴二级域名系统v1.0_xydns10.rar

    【主机域名】雨过星晴二级域名系统v1.0_xydns10.rar 资源介绍 雨过星晴二级域名系统v1.0是一款针对网站建设者、开发者和企业用户的高效、稳定且易于使用的二级域名解析管理系统。通过该系统,用户可以轻松地管理其...

    DNS服务器的架设.pptx

    6.2 项目知识准备 DNS就是Domain Name System或者Domain Name Service,中文意思是域名系统或者域名服务。 DNS的作用:你不知道某个网站的IP地址,用域名通过DNS查询,只要该域名已经注册,就能查到相应的IP地址。...

    详解Linux搭建DNS服务器

    即域名系统,其作用就是将我们经常使用的“网址”解析为IP地址 联机分布式数据库系统,DNS大多数名字在本地解析,仅少量需要在网上通讯,所以效率高 2.DNS相关概念 DNS利用树形目录结构,将主机名的管理分配给不同的...

    DNS服务器搭建实验.docx

    DNS 域名系统:是一种层次结构的计算机和网络服务的命名系统,可以将域名解释为对应的 IP 地址。 DNS 服务器:在 DNS 域名系统中提供域名解释服务的服务器。 正向查找:由域名查找对应的 IP 地址。 DNS服务器搭建...

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

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

    DNS服务器配置教程.doc

    DNS(Domain Name System,域名系统)是一种组织成层次结构的分布式数据库,里面包含从DNS域名到各种 数据类型(如IP地址)的映射。这通常需要建立一种A(Address)记录,意为"主机记录 "或"主机地址记录",是所有...

Global site tag (gtag.js) - Google Analytics