我们都知道,平常我们所访问的网站,都是与服务器进行数据交互的。但是,浏览器和服务器是分处于不同的计算机上的,那他们是怎样进行通信的呢?今天,我们就来粗浅地聊一聊。不涉及很深的技术原理,只讲大概的流程。

  首先,我们来谈谈服务器的访问问题。服务器也是一台计算机,连上互联网之后,就成了网络中的一个节点。一个网络中的每台计算机都会分配得一个唯一的标识——IP地址。既然IP地址具有唯一性,所以,我们可以通过IP地址唯一地找到一台计算机。IP地址就是形如“192.127.123.125”的数字串,你可以在控制台输入ipconfig指令查看本机的IP地址。

  IP地址虽然精确,但是没有逻辑性,数字的组合是随机的,一两台还能记住,当你要访问的地址多了起来,还能记得清每个地址吗?所以,我们又有了第二种访问服务器的方式——域名。域名,通俗来说就是网址。域名是由一连串有一定格式、一定的逻辑性或寓意的字符串组成。如:www.google.com。一看就知道是谷歌搜索,简单好记。那么域名是怎么找到其对应网站所处的服务器(那台计算机)的呢?那就涉及一个叫DNS的东西。

  DNS,域名解析系统。顾名思义,就是解析域名,也就是解析网址的。在一个DNS里,存放了很多对应关系对,一个域名对应于一个IP地址。当客户端通过域名发出请求,网络经过DNS时把域名转换成相应的IP地址,然后就可以根基IP地址精确地找到服务器计算机了。DNS又分了好几级,从低级DNS开始检查,有域名-IP对则发生转换,跳转到IP地址。如果没有,则把域名上传到上一级DNS,继续查找......直到顶级DNS(或者墙-_-)还没有相应的域名—IP对,则说明没有这个服务器,返回错误信息。

  既然低级的DNS中域名-IP配对优先级高于高级DNS,那么我们就可以利用这个原理实现把高级DNS中的某些域名-IP对在低级DNS中修改、覆盖掉,那就是DNS劫持。比如,我们现在连上了一个校园网,通过网络请求访问国外的某个网站(如:iHerb.com)。在校园网原来的DNS中,是没有iHerb.com的解析对的,所以会往上一级DNS(运营商DNS)去查找。这时,如果有某些奸商通过技术手段,往校园网DNS中注入了一个域名-IP对:iHerb.com = 123.123.123.123,那么当我们通过iHerb.com搜索时,就会被校园网DNS跳转到123.123.123.123对应的服务器上了,而这台服务器上运行的网站根本不是我们要访问的iHerb.com,而是一个假冒的网站。就这样,iHerb.com就被劫持了。

  

  

DNS与DNS劫持原理、IP、域名、服务器访问浅讲的更多相关文章

  1. DNS工作流程及原理 域名、IP与DNS的关系

    转自:http://blog.csdn.net/maminyao/article/details/7390208 一.DNS服务概述 DNS是Domain Name System的缩写,即域名系统.其 ...

  2. DNS递归和迭代原理

    11.3.7 DNS递归解析原理 “递归解析”(或叫“递归查询”,其实意思是一样的)是最常见,也是默认的解析方式.在这种解析方式中,如果客户端配置的本地名称服务器不能解析的话,则后面的查询全由本地名称 ...

  3. Linux的DNS实现负载均衡及泛域名部署

    DNS负载均衡技术的实现原理是在DNS服务器中为同一个主机名配置多个IP地址,在应答DNS查询时,DNS服务器对每个查询将以DNS文件中主机记录的IP地址按顺序返回不同的解析结果,将客户端的访问引导到 ...

  4. Windows下DNS ID欺骗的原理与实现

    域名系统(DNS)是一种用于TCP/IP应用程序的分布式数据库,它提供主机名字和IP地址之间的转换信息.通常,网络用户通过UDP协议和DNS服务器进行通信,而服务器在特定的53端口监听,并返回用户所需 ...

  5. 关于dns服务工作的原理,和配置的细节理解。

    dns服务器相关 1,dns原理,也就是迭代,和递归查询.将域名解析为ip的过程. 一次完整的查询请求经过的流程: Client -->hosts文件 -->DNS Service Loc ...

  6. DNS详解: A记录,子域名,CNAME别名,PTR,MX,TXT,SRV,TTL

    DNS DNS,Domain Name System或者Domain Name Service(域名系统或者域名服务).域名系统为Internet上的主机分配域名地址和IP地址.由于网络中的计算机都必 ...

  7. 服务器部署网站后,公网ip可以访问,域名不能访问问题(稳)

    出现问题 这几天我网站已经部署到vps上,域名也备好案,想使用域名指向我们公网ip.指完发现用域名访问不了网站,但是公网ip可以.于是看了网上资料,好像是要清除浏览器DNS缓存,我清完没用.然后发现我 ...

  8. DNS查询的工作原理

    二.DNS查询的工作原理 1.DNS查询过程按两部分进行     1.名称查询从客户端计算机开始, 并传送给本机的DNS客户服务程序进行解析     2.如果不能再本机解析查询, 可根据设定的查询DN ...

  9. DNS笔记 DNS区域集成到 Active Directory

    可以将 DNS 区域集成到 Active Directory 中以提供增强的容错功能和安全性.OpenDNS   Google Public DNS往返时间 (RTT) 远程访问服务 (RAS)域名与 ...

随机推荐

  1. 自己构建MVC中的M

    /** * @ description Model MVC中M 数据模型 * @ Object * @ public * @ create method IE不支持 */ if(typeof Obje ...

  2. Google Code Pretiffy 代码 着色 高亮 开源 javascript(JS)库

    1.简介 introduction Google Code Pretiffy 是 Google 的一个用来对代码进行语法着色的 JavaScript 库,支持 C/C++, Java, Python, ...

  3. struts2运行机制

    struts2是web应用中一个常用的mvc框架,下面探讨一下其内部运行机制: 1.从客服端浏览器输入的url后,客服端通过http协议发送一个请求到服务器(tomcat),Tomcat收到这个请求之 ...

  4. is_file和file_exists效率比较

    目前在弄文件缓存的时候用到了判定文件存在与否,is_file()还是file_exists()呢?is_file和file_exists两者效率比较起来,谁的运行速度更快呢?还是做个测试吧: 1 2 ...

  5. 嵌入式 hi3518平台增加路由代码

    <span style="font-family:Courier New;"> /********************************** (C) COPY ...

  6. [算法 笔记]2014年去哪儿网 开发笔试(续)第一题BUG修正

    上一篇的blog地址为:http://www.cnblogs.com/life91/p/3313868.html 这几天又参加了一个家公司的笔试题,在最后的编程题中竟然出现了去哪儿网开发的第一题,也就 ...

  7. border透明

    最近在写一表项目,需要边框透明,起初我以为没有办法实现,最近看一本书中找到办法,就是通过rgba实现,代码如下: border: 1px solid rgba(0, 0, 0, 0.7); 关于rgb ...

  8. PHP.ini 配置文件解析

    [PHP] ;;;;;;;;;;;;;;;;;;;; About php.ini   ;;;;;;;;;;;;;;;;;;;;; PHP's initialization file, generall ...

  9. 上海洋码头(www.ymatou.com)急招技术人才(职位:互联网软件开发工程师,.NET网站架构师,Web前端开发工程师,高级测试工程师,产品经理)

    对公司招聘职位有兴趣的童鞋可以把简历发送到zhangzhiqiang@ymatou.com,我们HR会快速给你答复. 互联网软件开发工程师 岗位职责: 1.参与洋码头各个平台(www.ymatou.c ...

  10. 【C#】如何创建xml文件以及xml文件的增、改

    增: using System; using System.Collections.Generic; using System.Linq; using System.Text.RegularExpre ...