DNS设置错误,浏览器能够正常访问网站么?

news/2024/5/14 7:15:20/文章来源:https://blog.csdn.net/weixin_33862188/article/details/89900090

大家在看到这个问题,第一反应是不是都认为:不能?

嘿嘿,我料定大家的正常思路也该是这样。

起初我也认为应该是这样但是前段时间遇到一件事让我改变了这个固有观念:

前段时间机房的dhcp服务关闭,我们不得已开始使用静态IP,此时由于老师没说DNS服务器在另外一台机器上,我们想当然的认为DNS的IP就是原来DHCP的IP,因为我们使用的是360浏览器,我发现设置好静态IP并不影响我们正常上网查资料。之后由于51cto的视频看不了,就去问老师原因,老师看了IP说DNS设置错误。老师一改就恢复正常。我当时就困惑了,DNS设置错误不就解析不了域名了么,怎么还能正常登录网站呢?然后就这个问题问了老师,老师也很意外,开始用抓包工具进行检测:同时打开IE和360,将DNS故意设置错误,抓包工具看到,IE很规矩的按照我设置的DNS去找域名进行解析,而360则直接访问51cto的IP地址。看到这的时候,;老师也蒙了。他也困惑360到底具备什么工具怎么会直接去访问网站的IP呢。
之后回家也测试了一番,用了IE,遨游,360急速版。依旧是将DNS故意设置错误,结果发现只有360急速能正常访问网站,其余两个浏览器都无法访问。


我们先不去追究它的原理到底是什么,我们先通过实验验证一下。

我们一般的环境下都是用的DHCP分配的IP,DNS。

实验前,我们先将DNS设置为:主DNS:1.2.3.4,副DNS:5.6.7.8

浏览器:我采用IE,Firefox,chrome,百度,360,Opera这六个浏览器进行测试。

之所以选它们是有一定原因的。

大家都知道目前三大主流浏览器内核:

IETridentFirefoxGeckoChromeWebKit(现在貌似又改进为Blink)。

选它们就是为了检验浏览器的内核是否进行了DNS内置的这些设置,而另外的三款则是用的比较有代表性的三个,Opera性能,速度都不错的浏览器;360则是主攻安全;百度,仅仅是个人喜好。

360百度这两个的浏览器内核是基于开源的WebKit进行的二次开发。如果错了还请指正

实验开始


准备工作:

wKioL1QATIbD-ftMAAF3669_Rs8038.jpg

wKiom1QAS2_zsFyuAAHeAwJ_Jqw476.jpg

            wKioL1QAT5vBPXz-AAOHM0r9ldA530.jpg

            我们主要对DNS进行分析,因此我们看的时候将其他的包过滤。只关注DNS

实验开始:

开启wireshark的抓包进程

wKioL1QATIbyU8MnAAJB0Bqh0oY866.jpg

             选择与外网连接的网卡class,之后点击start

先对IE,Chrome,Firefox进行测试:输入51cto网址

wKioL1QATIfwGhhyAADdTnA2hPo335.jpg

            IE未能打开网页

wKioL1QblNKRInJhAAC5_-7_nRw300.jpg

           Google加载过程

wKiom1QblLjTaK6SAABpr4NjFIQ507.jpg

           网页未能打开


wKioL1QjhsbzlJNnAALp8uMO0Js580.jpg

  Firefox加载过程

wKioL1Qjhsei9sbVAAMK96rFy1o222.jpg

 Firefox未能打开网页

wKioL1QjhsnwkR4gABEnvnaZlXc898.jpg

测试结果:失败

这三款内核的代表者很实在,在DNS设置错误的情况下老老实实的按照我设置的错误DNS查找对应的域名。网页没能打开。(其实这三者的DNS包都大同小异,因此就以一图表示了)


下面对Opera浏览器进行测试:输入51cto网址

wKioL1QjhsCgyuW_AAHZgQoOWIs723.jpg

 加载过程

wKiom1QjhpzQILTCAAHE4Di2o9k243.jpg

  加载结束,未能打开网页

wKiom1Qjhp7yEFJyABFX6E-hPLs814.jpg

结论:失败。Opera还是很实在的一款浏览器,依旧按我的设置进行查询。可惜了。


下面开始对百度进行测试:输入51cto网址

wKiom1QjhqeifbNWAAmUMqSvJ54411.jpg

 完美加载

wKioL1QjhsyBpP5WAAsCZC-Qxzs092.jpg

  百度成功打开网页

wKiom1QjhqrANugUABDWcuJm5sg860.jpg

 起初老老实实按规矩读取我设置的DNS

wKioL1QjhtDz2zkxABITHffuM3g164.jpg

  该图出现了144.144.144.144.

下面付了两张它http的包大家感兴趣可以看看,我是没看出什么特别的地方。

wKioL1QjhtKiOwyTABMTI6mSeMs057.jpg

wKiom1QjhrDTbZeDABHK60AswVw260.jpg

结论:成功。我们通过DNS包可以发现,起初百度也是老老实实按我设置的DNS进行域名查询,可没过多久突然蹦出了公共DNS:144.144.144.144。这是什么情况?我们先不讨论。

下面看看360的表现吧

依旧是输入51cto网站

wKiom1QjhraD_YOXAAcn6pXVXsQ967.jpg

   网页打开,但是图片看不到,加载的不够完美

wKiom1QjhreQDMrgAAp1ZnuWsmw872.jpg

wKioL1Qjht3A0kINABFEuPfUWEE303.jpg

 刚开始依旧按规矩来

wKioL1QjhuOwsQv4ABD8c3Ug_7c134.jpg

  这张图出现了公共IP8.8.8.8

wKioL1QjhuqQ83YqABDbLByzfto801.jpg

wKioL1QjhvDDXYHSABFZgrv6Jr4383.jpg

  下面也为360付了一张http的抓包图。

wKiom1Qjhs_R0AWDABS12t-IOHI726.jpg

结论:成功。起初360也是老老实实地按照我设置的DNS进行域名查询,没过多久,也是突然蹦出一个公共DNS:8.8.8.8

实验总结:

IE,Chrome,Firefox,Opera都失败。百度,360成功

IE,Chrome,Firefox的失败排斥了浏览器内核设置了DNS的这个可能。

百度,360的成功证明这个功能是他或他们独立开发出来的。

实验的结果可能让大家大感意外。最不被看好的两款浏览器反而在DNS设置错误的情况下不受影响的访问网站,为什么呢?

当初自己也对此很困惑,查了360所有的更新补丁说明也没有发现有DNS的相关说明,百度也是。

之后就在论坛发帖,没想到还有几位专家回复

他们的答案如下

你故意将DNS服务器地址设错,那么按照常理来说你不会有机会访问51cto。

但是请注意360安全浏览器是一个安全浏览器,作为浏览器最最忌讳的就是发生DNS劫持这会在根本上瓦解360的安全机制。换句话说,如果读取了本地设置作为默认DNS,那么如果这个DNS是被劫持的(也就是说,我可以把www.baidu.com,指向任意一个我伪造的IP地址或网站)那么就算360浏览器再牛,也没有办法保证用户安全。处于这个考虑,360必然内置安全的DNS服务器,直接使用360内置DNS IP来解析地址或者作为比对DNS是否被劫持的手段。由此可见。问题必然出现在360浏览器上。多说一句,DNS只提供域名解析功能所以,如果你直接使用IP地址进行访问,就算你没有配DNS一样可以得。因此如果360内置一个较为公正的DNS IP地址,然后所有在360浏览器的访问都有这个IP来解析,只有360能上网也就没有问题了。


我看后,有点懂了,之后又问了其他人。得出了一个目前自己比较信服的答案。

360和百度都是在开源浏览器内核上进行的2次开发与优化(很明显百度的优化做的更完善点),想到中国大多数人对DNS都不明白,更别提设置了。因此他们想到干脆我们的浏览器帮你把这个问题解决算了。之后他们就写了相应的策略,就是当本地的DNS服务器不能提供正常的服务时就将DNS指定到他们设置的比较公正安全的DNS上供解析域名。之后就出现了我们在上面看到的结果。之前好多人对360都有点抵触,其实客观来说,360的浏览器还是靠谱的。(真不是为360做广告啊)但是这两款浏览器的内部策略或者说内核到底是不是如此我就不知道了,如果360,百度浏览器的开发人员看到了,还请解释一下。这是目前我总结的自己信服的答案。大家有不同意见可以交流一下。


PS:我发现如果我们仔细观察生活的话,还是能发现不少有趣的问题的。










本文转自 紫色的茶碗 51CTO博客,原文链接:http://blog.51cto.com/chawan/1558074,如需转载请自行联系原作者

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_826860.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

css点击后变颜色_Web 性能优化:21 种优化 CSS 和加快网站速度的方法

这是 Web 性能优化的第 4 篇,上一篇在下面看点击查看:Web 性能优化:使用 Webpack 分离数据的正确方法Web 性能优化:图片优化让网站大小减少 62%Web 性能优化:缓存 React 事件来提高性能CSS 必须通过一个相对复杂的管道…

外链发布,如何一箭双雕,而非仅仅为了SEO?

目前,我们不可否认的是社交媒体对SEO的影响,特别是新媒体平台,很多比较成熟的公司都会在原有的SEO部门增加新媒体部,这就意味着,基础性的营销推广,不单单存在于SEO,以往通过SEO获取大量流量的操…

记录 OpenGL 学习网站

LearnOpenGL CNhttp://learnopengl.com 系列教程的简体中文翻译https://learnopengl-cn.github.io/http://learnopengl.com 系列教程的简体中文翻译https://learnopengl-cn.github.io/ OpenGL入门(一)-- 图形API简介与作用 - 简书由于第一次的文章排版有…

如何处理 网站被网安大队下发的信息系统安全等级保护限期整改通知书

2018年6月,我们接到一位来自北京的新客户反映,说是他们单位收到一封来自北京市公安局海淀分局网安大队的通知书,通知称:贵单位网站存在网络安全漏洞,网站被植入后门程序,要求你单位要在XX日之前,对网站进行…

社交媒体(social media)网站设计尺寸参考(转)

社交媒体网站,这里主要指的是国外的几大网站,比如说:Facebook、Twitter、Google、LinkedIN、Pinterest、Instagram和Youtube七个。今天不说别的,主要将其设计图尺寸发于大家参考,希望这这几张图对设计人员有所帮助。 社…

网站快照被劫持 标题描述被篡改成博彩内容的解决方法

三年前用dedecms织梦系统,帮公司设计了一个网站,平常的网站更新,以及优化也都是我在负责,前段时间发现网站的流量越来越少,用爱站站长工具查看了一下,竟然发现网站快照被劫持了,网站快照标题和实…

初创企业没网站,如何利用SEO推广?

在日常工作中,我们经常会遇到一些初创的企业,由于刚刚成立而没有建立自有网站,但这个时候,仍然有业务需要配合线上推广。 那么,初创企业没网站,如何利用SEO推广? 根据以往的SEO工作经验&#…

企业网站建设前所需的准备哪些?

目前,在仍有不少传统的企业想建设自已的网站,可是大多数却不知道网站建设的具体流程和一些建站的物料准备工作。所以,今天搜客建设网站公司小编就和大家谈一谈网站建设前所需的准备物料。 一、网站建设流程 第1步:域名注册 任何…

获取网站的Logo图标

当我们访问不同的网站时,IE会根据不同的网站显示不同的图标,如下图所示。 在IE的收藏夹里也可以看到类似的情况(IE6经常获取不到Logo图标,IE7就好多了)。 其实这个图标就存放在网站的根目录下,名字为"…

mysql 昨天访问量_PHP+MySQL实现精确统计网站访问量(IP个数)

基于WordPress的网站有很多统计功能。但是只能统计文章阅读数。不能统计访客人数。以下代码可以实现获取来访用户的IP地址,一个IP对应一次访问。即使刷新也不会增加访问量。这个非常精确。1、创建一个存储数据的表。进入MySQL后直接创建即可。create table wp_jc_co…

建站之星检测不到mysql_建站之星安装,建站之星安装教程 | 帮助信息-动天数据...

建站之星安装,建站之星安装教程作者:dthost |时间:2016-07-23 |26,443 次阅读建站之星是美橙科技开发的一套完美的建站系统,这套系统和PHPWEB有异曲同工之处。而且没有BUG,非常好用,很多人在使用这套程序建设网站&…

2012年移动SEO启示

2012年是搜索营销真正成熟的一年 ,手机成为增长最大的组成部分之一,其整体搜索市场已达到20%的份额。移动媒体的出现,使得搜索引擎优化更难。 展望未来,预计到2012年一年,语义搜索Web 3.0,极大地…

20个网站测试工具

1. PageSpeed Online – Make Your Web Site Faster – Test Tools PageSpeed ​​online to analyze the content of a web page and then generates suggestions to make this page more quickly. Reducing page load times may reduce the bounce rate and increase convers…

ajax data传form.serialize()多个参数_Django建站历程:(十一)ajax实现文章添加评论...

为了结构清晰,我们新创建一个comment APP来做评论系统,如何创建和配置具体可以看前面的章节,这里就不详细写了。需要注意的是,本文只实现了对文章的评论,对于对评论进行回复和评论没有实现,其实实现方法类似…

建站之星php 漏洞,建站之星任意文件上传漏洞

#1 漏洞产生/module/mod_media.phpflash_picker() 和 image_picker() 两个函数image_picker() 函数$typeArr array(image/jpeg,image/pjpeg);$flash_typeArr array(image/jpeg,image/pjpeg);$file_info & ParamHolder::get(localfile, array(), PS_FILES);$file_info[nam…

网站需要显示在线访问人数

Insus.NET开发这样多网站,客户一直没有这个要求。不过,现在有客户有这样的要求了。在线用户访问人数,也就是说,要为网站写一个计数器,计数器的初始值为0,网站一开始运行时(Application_Start),就…

个人网站制作模板

前言 小伙伴们,大家好,今天和大家分享主题是个人网页设计作品,此作品包含css文件、fonts文件夹、images文件夹、js文件夹和index.html文件,支持PC端和手机端浏览,使用chrome浏览器,浏览效果更佳。 主题 …

清新漂亮简约好看的个人博客网站模板

该从哪里开始呢?好久没来,有点生疏,有点茫然,那就按常规套路来吧,首先对你们的驻足说声3q,本次分享的是一款个人博客设计,主题为《周末s博客》,本来代码算是早就写好,但因…

个人网站模板

/ 01 / 主题 《周末の飞扬》 / 02 / 图摘

我的家乡网站设计

/ 01 / 主题 《我的家乡》 / 02 / 图摘