DNS

DNS

DNS全称Domain Name SystemDomain Name被译为域名,中文名为域名系统,也称为域名解析系统;另外域名服务器Domain Name Server也简称为DNS

域名系统是因特网的一项内核服务,它作为可以将域名和IP地址相互映射的一个分布式数据库,能够使人更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。DNS是具有树型结构的名字空间,核心功能是完成域名到IP地址的转换,使用TCPUDP端口53

当前,对于每一级域名长度的限制是63个字符,域名总长度则不能超过253个字符。



 域名系统

通俗地说,DNS帮助用户在互联网上寻找路径。在互联网上的每一个计算机都拥有一个唯一的地址,称作“IP地址”(即互联网协议地址)。由于IP地址(为一串数字)不方便记忆,DNS允许用户使用一串常见的字母(即“域名”)取代。DNS命名用于InternetTCP/IP网络中,通过用户友好的名称查找计算机和服务。当用户在应用程序中输入DNS名称时,DNS服务可以将此名称解析为与之相关的其他信息,如IP地址。因为,你在上网时输入的网址,是通过域名解析系解析找到相对应的IP地址,这样才能上网。其实,域名的最终指向是IP

虽然域名系统后便于人们记忆,但网络中的计算机之间只能互相认识IP地址,它们之间的转换工作称为域名解析,域名解析需要由专门的域名服务器(Domain Name Server)来完成,这里的DNS就是域名服务器。

DNS的安全问题

1、针对域名系统的恶意攻击:DDOS攻击造成域名解析瘫痪。

2、域名劫持:修改注册信息、劫持解析结果。

3、国家性质的域名系统安全事件:“.ly”域名瘫痪、“.af”域名的域名管理权变更。

 

DNS的结构及运行

Internet域名系统是一个树型结构,其形式如下:

com(企业)net(网络运行服务机构)gov(政府机构)org(非營利性组织)edu(教育)域由InterNic管理,其注册、运行工作目前由Network Solution公司负责。

7个新的顶级域名分别是:firm(公司企业)shop(商店)web(希望突出万维网活动的实体)arts(主要从事娱乐文化活动的实体 )rec(主要从事娱乐文化实体)info(主要从事信息服务实体)nom(一些希望在互联网上发布个人信息的人)将于1998年启动,这些域名的注册服务由多家机构承担,CNNIC也有幸成为注册机构之一。

按照ISO3166标准制定的国家域名,一般由各国的NIC(Network Information Center,网络信息中心 )负责运行。

我国域名体系分为类别域名和行政区域名两套。

类别域名是指图中最下面一行前面的六个域名,分别依照申请机构的性质依次分为:AC-科研机构;COM-工、商、金融等专业;EDU-教育机构;GOV-政府部门; NET-互联网络、接入网络的信息中心和运行中心;ORG-各种非盈利性的组织。

 

DNS的劫持


DNS劫持是安全界常见的一个名词,劫持了DNS服务器,意思是通过某些手段取得某域名的解析记录控制权,进而修改此域名的解析结果,导致对该域名的访问由原IP地址转入到修改后的指定IP,其结果就是对特定的网址不能访问或访问的是假网址,从而实现窃取资料或者破坏原有正常服务的目的.

通常在三种情况下会遇到DNS劫持的问题

 1、用户计算机感染病毒,病毒在操作系统中的HOSTS文件中添加了虚假的DNS解析记录。WindowsHOSTS文件的优先级高于DNS服务器,操作系统在访问某个域名时,会先检测HOSTS文件,然后再查询DNS服务器。

2、用户试图访问的网站被恶意攻击。这种情况下,你可能访问到的是一个欺骗性网站,也有可能被定向到其它网站。

3、用户在浏览器中输入了错误的域名,导致DNS查询不存在的记录。以前遇到这种情况,浏览器通常会返回一个错误提示。而最近,这种情况下用户会看到ISP设置的域名纠错系统提示。

由于域名劫持往往只能在特定的被劫持的网络范围内进行,所以在此范围外的域名服务器(DNS)能够返回正常的IP地址,高级用户可以在网络设置把DNS指向这些正常的域名服务器以实现对网址的正常访问。所以域名劫持通常相伴的措施——封锁正常DNSIP

域名解析

举一个例子,zh.wikipedia.org作为一个域名就和IP地址208.80.154.225相对应。DNS就像是一个自动的电话号码簿,我们可以直接拨打wikipedia的名字来代替电话号码(IP地址)。DNS在我们直接调用网站的名字以后就会将像zh.wikipedia.org一样便于人类使用的名字转化成像208.80.154.225一样便于机器识别的IP地址。

DNS查询有两种方式:递归迭代

DNS客户端设置使用的DNS服务器一般都是递归服务器,它负责全权处理客户端的DNS查询请求,直到返回最终结果。

DNS服务器之间一般采用迭代查询方式。

以查询zh.wikipedia.org为例:

· 客户端发送查询报文"query zh.wikipedia.org"至DNS服务器,DNS服务器首先检查自身缓存,如果存在记录则直接返回结果。

· 如果记录老化或不存在,则

1. DNS服务器向根域名服务器发送查询报文"query zh.wikipedia.org",根域名服务器返回.org域的权威域名服务器地址,这一级首先会返回的是顶级域名的权威域名服务器。

2. DNS服务器向.org域的权威域名服务器发送查询报文"query zh.wikipedia.org",得到.wikipedia.org域的权威域名服务器地址。

3. DNS服务器向.wikipedia.org域的权威域名服务器发送查询报文"query zh.wikipedia.org",得到主机zh的A记录,存入自身缓存并返回给客户端。

在每一个名称服务器中都有一个快取缓存区(Cache),这个快取缓存区的主要目的是将该名称服务器所查询出来的名称及相对的IP地址记录快取缓存区中,这样当下一次还有另外一个客户端到次服务器上去查询相同的名称 时,服务器就不用在到别台主机上去寻找,而直接可以从缓存区中找到该笔名称记录资料,传回给客户端,加速客户端对名称查询的速度。例如:

DNS客户端向指定的DNS服务器查询网际网路上的某一台主机名称 DNS服务器会在该资料库中找寻用户所指定的名称 如果没有,该服务器会先在自己的快取缓存区中查询有无该笔纪录,如果找到该笔名称记录后,会从DNS服务器直接将所对应到的IP地址传回给客户端 ,如果名称服务器在资料记录查不到且快取缓存区中也没有时,会向最接近的名称服务器去要求帮忙找寻该名称的IP地址 ,在另一台服务器上也有相同的动作的查询,当查询到后会回复原本要求查询的服务器,该DNS服务器在接收到另一台DNS服务器查询的结果后,先将所查询到的主机名称及对应IP地址记录到快取缓存区中 ,最后在将所查询到的结果回复给客户端。

域名(domain name)

网域名称(英语:Domain Name),简称域名、网域,是由一串用点分隔的名字组成的Internet上某一台计算机或计算机组的名称,用于在数据传输时标识计算机的电子方位(有时也指地理位置)。

域名服务器

主条目:名称服务器

这种管理名字的方法是:分不同的组来负责各子系统的名字。系统中的每一层叫做一个域,每个域用一个点分开。所谓域名服务器(即Domain Name Server,简称Name ServerDNS)实际上就是装有域名系统的主机。它是一种分层结构数据库,能够执行名字解析(name resolution)。

DNS可以允许一个名称服务器把他的一部分名称服务(众所周知的zone委托给子服务器,从而实现一种层次结构的名称空间。此外,DNS还提供了一些额外的信息,例如系统别名、联系信息以及哪一个主机正在充当系统组或域的邮件枢纽。

另外,在域名中大小写是没有区分的。域名一般不能超过5级,从左到右域的级别越高,高的级域包含低的级域。域名在整个Internet中是唯一的,当高级子域名相同时,低级子域名不允许重复。一台服务器只能有一个IP地址,但是却可以有多个域名

 

 

 

 

 

 

05-30
### DNS 配置教程与问题解决 DNS(Domain Name System,域名系统)是互联网中将域名转换为IP地址的服务。以下是关于DNS配置的详细信息和解决方案: #### 一、DNS服务的基本原理 DNS通过分布式数据库实现域名解析功能,其核心任务是将易于记忆的域名转换为计算机可识别的IP地址[^1]。域名空间采用层次化结构,由根域、顶级域、二级域等组成。 #### 二、DNS服务器类型 DNS服务器主要分为以下几种类型: - **主DNS服务器**:负责存储区域文件并提供权威解析。 - **辅DNS服务器**:从主DNS服务器同步数据,用于负载均衡和冗余备份。 - **缓存DNS服务器**:不存储区域文件,仅通过缓存机制加速查询响应速度[^1]。 #### 三、DNS查询方式 DNS查询分为递归查询和迭代查询两种方式: - **递归查询**:客户端向DNS服务器发送请求后,DNS服务器负责完成整个解析过程,并将最终结果返回给客户端。 - **迭代查询**:DNS服务器只返回自己知道的部分信息,客户端需要继续向其他DNS服务器发起查询直到获得最终结果。 #### 四、DNS缓存机制 为了提高查询效率和减轻服务器负担,DNS引入了缓存机制。缓存记录包括TTL(Time To Live)值,表示该记录在缓存中的有效时间。当TTL过期时,DNS服务器会重新获取最新记录[^1]。 #### 五、DNS服务的配置文件 Linux系统中常用的DNS服务软件是BIND(Berkeley Internet Name Domain)。其主要配置文件如下: - **named.conf**:全局配置文件,定义区域和模块加载。 - **zone文件**:包含具体域名到IP地址的映射关系。 配置示例: ```bash options { directory "/var/named"; allow-query { any; }; }; zone "example.com" IN { type master; file "example.com.zone"; allow-update { none; }; }; ``` 上述代码定义了一个名为`example.com`的主DNS区域,并指定了对应的zone文件[^1]。 #### 六、如何搭建DNS服务? ##### 服务端配置 1. 安装BIND软件包。 2. 编辑`named.conf`文件,添加或修改区域配置。 3. 创建或编辑zone文件,填写正向解析(A记录)和反向解析(PTR记录)。 4. 启动或重启DNS服务。 ```bash systemctl start named systemctl enable named ``` ##### 客户端配置 在客户端操作系统中设置DNS服务器地址。例如,在Windows系统中,可以通过网络适配器属性进行设置;在Linux系统中,编辑`/etc/resolv.conf`文件: ```bash nameserver 8.8.8.8 nameserver 8.8.4.4 ``` 此处以Google公共DNS为例[^2]。 #### 七、常见DNS问题及解决方法 1. **无法解析域名**:检查DNS服务器是否正常运行,确保客户端配置了正确的DNS地址。 2. **解析速度慢**:优化DNS缓存策略,减少递归查询次数。 3. **安全问题**:启用DNSSEC(Domain Name System Security Extensions),防止中间人攻击和数据篡改。 ###
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值