标签:
一、DNS原理
1.1、基本概念
1.1.1、DNS(Domain Name System,域名系统)是指由域名到ip地址的映射,DNS协议运行在udp协议之上,使用端口号53。该域名->ip地址的映射分两种:静态映射(本地维护一个映射表),动态映射(需要一套域名解析系统)。
1.1.2、主机名:三级域名.二级域名.顶级域名。
1.1.3、Internet的域名空间
(1)国家顶级域名nTLD:cn代表中国,us代表美国,uk代表英国,等等。
(2)通用顶级域名gTLD:最常见的通用顶级域名有7个:com(公司企业),net(网络服务机构),org(非营利组织),int(国际组织),gov(美国的政府部门),mil(美国的军事部门)。
(3)基础结构域名(infrastructure domain):这种顶级域名只有一个,即arpa,用于反向域名解析,因此称为反向域名。
1.2、DNS原理
本地主机、域名服务器中都有缓存,保存了域名->ip地址的映射关系,能加快查询速度。本地主机仅仅向本地DNS进行查询,而本地DNS则分别需要向根、顶级、二级、三级等域名服务器查询,最终得到查询结果,返回给客户端。下面举个实例进行分析。
当主机A需要和www.abc.com主机进行通信时,它就需要知道www.abc.com域名所对应的ip地址。下面是它需要做的几个查询步骤:
(1)主机A先查找本地缓存,看有没有该主机所对应的ip地址,若没有,再向本地域名服务器(DNS)发出查询请求;
(2)同样,本地DNS先查找本地缓存,看有没有该主机所对应的ip地址,若没有,则直接向根DNS发出请求;
(3)根DNS回复本地DNS,告诉本地DNS “.com”顶级域名服务器的ip地址;
(4)本地DNS收到.com域名服务器的ip地址之后,向该.com DNS 发出查询请求,查询.abc.com的二级域名服务器的ip地址;
(5)同理,.com告诉本地DNS .abc.com的地址;
(6)本地DNS向.abc.com发出查询请求,询问www.abc.com的地址;
(7).abc.com二级域名服务器告诉本地DNS www.abc.com主机的ip地址;
(8)本地DNS得到主机www.abc.com的ip地址后,在本地缓存下来,并发送给主机A;
(9)主机A就得到www.abc.com主机的ip地址。
二、DNS劫持
DNS劫持是通过劫持DNS服务器,从而修改某域名的解析结果,将错误ip地址反馈给客户,导致用户不能正常上网或者访问的是虚假网址,即:DNS劫持的目的就是为了告诉用户一个错误的ip地址,这样就能达到钓鱼、窃取用户信息的目的。它发生在本主机与本地DNS服务器之间的通信。
DNS劫持的表现为,你访问www.abc.com网址是,结果却被解析成百度的首页。
三、查看域名解析结果
3.1、Windows下查看
在cmd中输入ipconfig /displaydns | more;
64位系统,打开C:\Windows\System32\drivers\etc\hosts文件。
3.2、chrome浏览器的dns缓存
chrome://net-internals/#dns
3.3、linux下查看dns、网关
dns:cat /etc/resolv.conf
gateway:netstat -rn 或者查看文件:/etc/sysconfig/network
标签:
原文地址:http://www.cnblogs.com/yuan2016/p/DNS.html