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

  首先,我们来谈谈服务器的访问问题。服务器也是一台计算机,连上互联网之后,就成了网络中的一个节点。一个网络中的每台计算机都会分配得一个唯一的标识——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. (六)6.9 Neurons Networks softmax regression

    SoftMax回归模型,是logistic回归在多分类问题的推广,即现在logistic回归数据中的标签y不止有0-1两个值,而是可以取k个值,softmax回归对诸如MNIST手写识别库等分类很有用 ...

  2. Spring IOC 三种注入方式

    1.    接口注入 2.    setter注入 3.    构造器注入 对象与对象之间的关系可以简单的理解为对象之间的依赖关系:A类需要B类的一个实例来进行某些操作,比如在A类的方法中需要调用B类 ...

  3. [转载] FFmpeg API 变更记录

    最近一两年内FFmpeg项目发展的速度很快,本来是一件好事.但是随之而来的问题就是其API(接口函数)一直在发生变动.这么一来基于旧一点版本的FFmpeg的程序的代码在最新的类库上可能就跑不通了. 例 ...

  4. 函数式宏定义用do...while(0)的好处

    函数式宏定义经常写成这样:<pre lang="c" escaped="true">#define device_init_wakeup(dev, ...

  5. js判断是否是pc

    //判断是否是pc function IsPC() { var userAgentInfo = navigator.userAgent; var Agents = new Array("An ...

  6. Maven与Ant的区别

    相同点: Ant和Maven都是基于Java的构建(build)工具. 理论上来说,有些类似于(Unix)C中的make ,但没有make的缺陷.Ant是软件构建工具,Maven的定位是软件项目管理和 ...

  7. 史上最完整的Android开发工具集合

    路径: http://www.apkbus.com/thread-252748-1-1.html

  8. unity, sprite atlas

    一, Sprite Packer 可以直接在unity里放碎图,只要将Texture Type选为Sprite(2D and UI),Sprite Mode选为Single,再把想打在一张大图里的碎图 ...

  9. tilecache2.11在windows apache2.22安装部署

    tilecache2.11在windows apache2.22安装部署 蔡建良 2013-09-03 一.安装环境 操作系统: Windows7 32位 Apache2.22 Python2.5 m ...

  10. RandomAccessFile、FileChannel、MappedByteBuffer读写文件

    s package com.nio; import java.io.Closeable; import java.io.FileNotFoundException; import java.io.IO ...