1、DNS解析过程详解

1)、在浏览器中输入一个域名,例如www.tmall.com,操作系统会先检查自己本地的hosts文件是否有这个网址映射关系,如果有,就先调用这个IP地址映射,完成域名解析, windows下hosts文件在C:/Windows/System32/drivers/etc/hosts下,linux一般都在/etc/hosts下。

2)、如果hosts里没有这个ip到域名的映射,那么就要查找本地DNS解析器缓存,是否有这个域名到ip地址的映射关系,如果有,直接返回,完成域名解析。

3)、如果本机的hosts与本地DNS解析器缓存都没有相应的网址映射关系,那么就要找到你的TCP/ip参数中设置的首选DNS服务器,我们叫它本地DNS服务器,此服务器收到查询时,如果要查询的域名,包含在本地配置区域资源中,则返回解析结果给客户机,完成域名解析,此解析具有权威性。

4)、如果要查询的域名,不由本地DNS服务器区域解析,但该服务器已缓存了此网址映射关系,则调用这个域名到ip地址的映射,完成域名解析,但是此解析不具有权威性。

5)、如果本地DNS服务器本地区域文件与缓存解析都失效,则根据本地DNS服务器的设置(是否设置转发器)进行查询,如果未用转发模式,本地DNS就把请求发至13台根DNS,根DNS服务器收到请求后会判断这个域名(.com)是谁来授权管理,并会返回一个负责该顶级域名服务器的一个IP。本地DNS服务器收到IP信息后,将会联系负 责.com域的这台服务器。这台负责(.com)域名的服务器收到请求后,如果自己无法解析,它就会找一个管理(.com)域的下一级DNS服务器地址 (tmall.com)给本地DNS服务器。当本地DNS服务器收到这个地址后,就会找(tmall.com)域服务器,重复上面的动作,进行查询,直至找到 (www.tmall.com)主机。

6)、如果用的是转发模式,此DNS服 务器就会把请求转发至上一级DNS服务器,由上一级服务器进行解析,上一级服务器如果不能解析,或找根DNS或把转请求转至上上级,以此循环。不管是本地 DNS服务器用是是转发,还是根提示,最后都是把结果返回给本地DNS服务器,由此DNS服务器再返回给客户机。

这里我们把从客户端到本地DNS服务器的查找称为递归查询,而DNS服务器之间的交互查询称为迭代查询。

2、DNS劫持

DNS劫持又称域名劫持,是指在劫持的网络范围内拦截域名解析的请求,分析请求的域名,把审查范围以外的请求放行,否则返回假的IP地址或者什么都不做使请求失去响应,其效果就是对特定的网络不能反应或访问的是假网址。举一个简单的例子,比如你输入的域名地址是www.google.cn然后弹出来百度的页面,很明显发生了DNS域名劫持。

应对DNS劫持的方法

1)、我们都知道,访问一个网站用域名而不用ip地址的原因就是逻辑地址不好记,但是如果你知道这个网页的ip地址的话,你可以直接输入ip地址来访问从而绕开DNS解析。

2)、将自己的电脑DNS解析地址手动设置为国内比较权威又稳定的服务器地址,例如114.114.114.114、8.8.8.8。

3)、修改你的路由器密码,登录路由器192.168.1.1,更改你的用户密码,然后最好重新启动路由器。

作为运营商来处理DNS劫持,一般运营商都会有提供多台DNS解析服务器,负责一个区域的DNS解析至少会有两台,其中的一台发生了DNS劫持运营商就会停止该服务器的网络地址解析工作而启动备预案,这样就可以预防发生DNS劫持而导致用户主机受到攻击甚至发生某些不法的钓鱼网站窃取用户账户密码,造成财务损失的严重事故。

DNS解析过程和DNS挟持的更多相关文章

  1. 浏览器与DNS解析过程

    浏览器解析 1.地址栏输入地址后,浏览器检查自身DNS缓存 地址栏输入chrome://net-internals/#dns 查看. 2.浏览器缓存中未找到,那么Chrome会搜索操作系统自身的DNS ...

  2. DNS解析过程

    参考: http://www.maixj.net/ict/dns-chaxun-9208 http://blog.it985.com/8389.html DNS(Domain Name System) ...

  3. (转)DNS解析过程详解

    DNS解析过程详解 原文:http://blog.csdn.net/crazw/article/details/8986504 先说一下DNS的几个基本概念: 一. 根域 就是所谓的“.”,其实我们的 ...

  4. DNS解析过程详解(转载)

    DNS解析过程详解(转载) DNS Domain Name System 域名系统,它就是根据域名查出IP地址.    先说一下DNS的几个基本概念: 一. 根域 就是所谓的“.”,其实我们的网址ww ...

  5. DNS解析过程详解

    先说一下DNS的几个基本概念: 一. 根域 就是所谓的“.”,其实我们的网址www.baidu.com在配置当中应该是www.baidu.com.(最后有一点),一般我们在浏览器里输入时会省略后面的点 ...

  6. DNS解析过程和域名收敛、域名发散、SPDY应用

    前段时间项目要做域名收敛,糊里糊涂的完成了,好多原理不清晰,现在整理搜集下知识点. 域名收敛的目的是什么?简单来说就是域名解析慢.那为什么解析慢?且听下文慢慢道来. 什么是DNS? DNS( Doma ...

  7. 转载:DNS解析过程详解

    2015-09-20 此好文是转载,如有侵权联系我,立马删掉 DNS的几个基本概念: 一. 根域 就是所谓的“.”,其实我们的网址www.baidu.com在配置当中应该是www.baidu.com. ...

  8. DNS解析过程详解【转】

    转自:http://blog.chinaunix.net/uid-28216282-id-3757849.html 先说一下DNS的几个基本概念: 一. 根域 就是所谓的“.”,其实我们的网址www. ...

  9. DNS解析过程--笔试答题版

    在运维笔试的时候,回答DNS解析的过程,不能写一大堆,一是不美观,二是浪费时间,应该怎么写呢?我觉得这样写比较好. 1.客户端:chche----hosts 2.DNS服务器:cache---递归-- ...

随机推荐

  1. Linq to Entity 多条件 OR查询

    技术背景:框架MVC,linq to Entity 需要一定的lambda书写能力 问题:在简单的orm中完成一些简单的增删查改是通过where insert delete update 完成的,但是 ...

  2. [Algorithms] Radix Sort

    Radix sort is another linear time sorting algorithm. It sorts (using another sorting subroutine) the ...

  3. CodeForeces 665C Simple Strings

    C. Simple Strings time limit per test 2 seconds memory limit per test 256 megabytes input standard i ...

  4. <2014 04 29> *nix环境编程常用库总结

    -------------------------linux常用头文件如下:POSIX标准定义的头文件<dirent.h>        目录项<fcntl.h>        ...

  5. caffe使用(1)

    caffe使用 caffe是一个卓越的CNN框架 caffe源码是Cpp语言的,基于一些外部的库,包括BLAS(矩阵计算),CUDA(GPU驱动),gflags,glog,boost,protobuf ...

  6. SSDT表概念具体解释

    SSDT 的全称是 System Services Descriptor Table,系统服务描写叙述符表. 这个表就是一个把 Ring3 的 Win32 API 和 Ring0 的内核 API 联系 ...

  7. Ionic 3 项目的工程目录结构(转载)

    工程目录结构说明如下图

  8. 用Maven构建Mahout项目实现协同过滤ItemCF--集群版

    本文来自于:http://blog.fens.me/hadoop-mahout-mapreduce-itemcf/ 前言 Mahout是Hadoop家族一员,从血缘就继承了Hadoop程序的特点,支持 ...

  9. Apache添加多端口

    Apache\conf 目录下 添加端口监听     Vhost.conf简单写写

  10. 杭电1025Constructing Roads In JGShining's Kingdom

    地址:http://acm.hdu.edu.cn/showproblem.php?pid=1025 题目: Problem Description JGShining's kingdom consis ...