戳蓝字“CSDN云计算”关注我们哦!


文章转载自公众号:漫画编程

2019年1月23日下午,我正在公司疯狂的撸着代码,沉浸在我的代码世界中,正在欣赏着自己刚刚写下的一行lambda表达式,突然微信上传来女朋友的消息。

在浏览器输入cn.bing.com,显示结果如下:


于是,我打开我的terminal,准备ping一下,看看到底怎么回事:

➜  mhcoding ping cn.bing.com
PING cn.bing.com (127.0.0.1): 56 data bytes
64 bytes from 127.0.0.1: icmp_seq=0 ttl=64 time=0.046 ms
64 bytes from 127.0.0.1: icmp_seq=1 ttl=64 time=0.091 ms
64 bytes from 127.0.0.1: icmp_seq=2 ttl=64 time=0.098 ms

于是,我再微信上给女朋友回复:


晚上下班回到家,还没等我脱下我的双肩包,女朋友就快速的跑过来找我。

DNS

DNS,是Domain Name System的缩写,翻译成域名系统。它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网。

DNS最主要的作用就是将域名翻译成ip地址。

IP地址

IP地址是IP Address的缩写,指互联网协议地址(英语:Internet Protocol Address,又译为网际协议地址)。IP地址是IP协议提供的一种统一的地址格式,它为互联网上的每一个网络和每一台主机分配一个逻辑地址,以此来屏蔽物理地址的差异。

互联网上的每一台计算机,都会分配到一个IP地址。

IP地址被用来给Internet上的电脑一个编号。大家日常见到的情况是每台联网的PC上都需要有IP地址,才能正常通信。

IP地址是一个32位的二进制数,通常被分割为4个“8位二进制数”(也就是4个字节)。IP地址通常用“点分十进制”表示成(a.b.c.d)的形式。如:208.80.152.2

域名

域名,这个是很多人都熟悉的概念,我们大多数情况下,在浏览器上访问某个网站的时候,都是通过域名访问的。

域名是由一串用点分隔的字符组成的互联网上某一台计算机或计算机组的名称,用于在数据传输时标识计算机的电子方位。

域名可以说是一个IP地址的代称,目的是为了便于记忆后者。

例如,wikipedia.org是一个域名,和IP地址208.80.152.2相对应。人们可以直接访问wikipedia.org来代替IP地址,然后域名系统(DNS)就会将它转化成便于机器识别的IP地址。

这样,人们只需要记忆wikipedia.org这一串带有特殊含义的字符,而不需要记忆没有含义的数字。

域名、IP和DNS

在现实生活中,我们可能经常需要通过电话找人,每一台接入网络的电话都有一个自己独一无二的号码。

有的时候,我们想要打某个公司的客服电话,如想要给工商银行的客服打电话,想查询账户余额。但是我们不知道具体号码,我们可以拨打114,告诉他们自己想要拨打工商银行的电话。然后114的客服会帮你查询到工商银行的电话,并帮你自动转接到工商银行的客服电话。

这个过程就和域名、IP地址以及DNS之间的关系比较像了。

每一台接入网络的电话 -> 每一台接入网络的计算机
工商银行 -> 域名
电话号码 -> ip地址
114咨询台  -> DNS

有了DNS,我们不需要记住每一个网站的多个IP地址,我们只需要之道这个网站的域名就可以了。就像我们不关心工商银行的客服电话,我们只需要知道我们要找工商银行就可以了。

而且,对于一个网站来说,一个域名会对应其无数个IP地址。会通过负载均衡等方式进行调配。就像工商银行的客服中心也有很多分机的道理是一样的。

某些网络运营商为了某些目的,可能会限制某些用户访问某一些特定的网站,而限制手段最常用的就是DNS污染和DNS劫持。

正常情况下,当我们访问某个域名的时候,会跳转到失败页面,但是如果爬到墙外,就可以正常访问。比如所谓的qiang。

还有一种典型场景,当我们的宽带欠费的时候,访问某个网站时,被自动跳转到运营商网站,提示充值。

这都是运营商在DNS上做了手脚。其目的是为了让域名无法解析到正常的IP地址。

而此次必应无法访问期间,通过ping可以发现,cn.bing.com被DNS解析成127.0.0.1。这是无法访问bing的直接原因原因。

127.0.0.1是回送地址,指本地机,一般用来测试使用。

DNS污染

网域服务器缓存污染(DNS cache pollution),又称域名服务器缓存投毒(DNS cache poisoning),是指一些刻意制造或无意中制造出来的域名服务器数据包,把域名指往不正确的IP地址。

其工作方式是:由于通常的DNS查询没有任何认证机制,而且DNS查询通常基于的UDP是无连接不可靠的协议,因此DNS的查询非常容易被篡改,通过对UDP端口53上的DNS查询进行入侵检测,一经发现与关键词相匹配的请求则立即伪装成目标域名的解析服务器(NS,Name Server)给查询者返回虚假结果。

DNS污染指的是用户访问一个地址,国内的服务器(非DNS)监控到用户访问的已经被标记地址时,服务器伪装成DNS服务器向用户发回错误的地址的行为。为了减免网络上的交通,一般的域名都会把外间的域名服务器数据暂存起来,待下次有其他机器要求解析域名时,可以立即提供服务。一旦有关网域的局域域名服务器的缓存受到污染,就会把网域内的电脑导引往错误的服务器或服务器的网址。


简单点说,DNS污染是指把自己伪装成DNS服务器,在检查到用户访问某些网站后,使域名解析到错误的IP地址。

DNS劫持

DNS劫持又称域名劫持,是指在劫持的网络范围内拦截域名解析的请求,分析请求的域名,把审查范围以外的请求放行,否则返回假的IP地址或者什么都不做使请求失去响应,其效果就是对特定的网络不能访问或访问的是假网址。


简单点说,DNS劫持指的是通过非法手段,获取DNS服务器的权限,然后把DNS配置进行修改,使域名解析到错误的IP地址。

DNS污染和DNS劫持的区别

DNS劫持是劫持了DNS服务器,进而修改其解析结果。

DNS污染是国内的某些服务器对DNS查询进行入侵检测,发现与黑名单上匹配的请求,该服务器就伪装成DNS服务器,给查询者返回虚假结果。它利用了UDP协议是无连接不可靠性。

一个是劫持了DNS服务器,一个是伪装成DNS服务器。造成的结果都是返回错误的IP地址。

如何解决DNS污染和劫持

对于 DNS劫持,可以通过手动更换DNS服务器为第三方公共DNS解决。

公共DNS 是一种面向大众的免费的 DNS 互联网基础服务。更换 DNS 服务器地址为 公共DNS 后,可以在一定程度上加快域名解析速度、防止 DNS劫持、加强上网安全,还可以屏蔽大部分运营商的广告。

下图就是常用的公共DNS:


 (图源:http://www.yunweipai.com/archives/5175.html)

对于 DNS污染,可以说,个人用户很难单单靠设置解决,通常可以使用 VPN 或者域名远程解析的方法解决。

必应挂了如何访问


一、用必应(Bing)临时域名

www2.bing.com 或者 www4.bing.com

二、强制绑定host

用户只需要暂时修改下host然后坐等微软服务器恢复后再删除即可。即强制指定cn.bing.com指向的IP地址。

13.107.21.200 cn.bing.com

修改后如果浏览器依然无法正常打开请直接重启系统,重启后再尝试打开必应搜索看看能否恢复正常访问。

三、修改DNS服务器

把DNS修改成公共DNS,如8.8.8.8 或者 114.114.114.114。

参考:https://laod.cn/news/cn-bing-com-404.html

事件后续

1月23日下午,有网友发现微软搜索引擎网站必应(Bing)出现无法访问故障。打开之后显示,“无法访问此网站”。

1月24日,微软发言人先后回复记者称,“正在展开调查”以及“我们正在积极应对,以确定下一步相关措施”。

1月25日早上,微软发言人回复记者称,“我们确认必应网站之前在中国无法访问,但是现已恢复正常”。不过,微软并未透露此前不能正常访问的原因。

本文的重点是分析必应无法被正常访问的原因,关于域名、DNS等并未深入和展开介绍,如果读者感兴趣,后面会继续逐一展开介绍。

福利

扫描添加小编微信,备注“姓名+公司职位”,加入【云计算学习交流群】,和志同道合的朋友们共同打卡学习!

推荐阅读:

  • 2019年中国IT市场趋势热点

  • 2019年最值得关注的五大微服务发展趋势

  • 叫你一声“孙悟空”,敢答应么?

  • 骚操作!代码写情诗 | 程序员有话说

  • 30 秒?!Chrome 插件带你速成编程学习 | 程序员硬核评测

  • 翟天临之后,大连博士细数区块链博士圈那些事……

  • 50个最有价值的数据可视化图表(推荐收藏)

  • 微服务、Kubernetes和无服务器之后,即将发生的……

  • 为了完成月入三万的目标,我都做了哪些准备?

喜欢就点击“好看”吧

云漫圈 | 什么是DNS?什么是DNS污染?什么又是DNS劫持?相关推荐

  1. 云漫圈 | 谈谈怎么做【服务隔离】

    戳蓝字"CSDN云计算"关注我们哦! 转自:  孤独烟 引言 OK,如下图所示 那显而易见,做服务隔离的目的就是避免服务之间相互影响.毕竟谁也不能说自己的微服务百分百可用,如果不做 ...

  2. 云平台圈地须群攻莫单打

    DT(数据处理技术)时代无云不互联,尚在初级阶段的云计算领域已群雄并起,封地之争无处不见,如何更有效地圈地占市场,乐视云CEO吴亚洲认为,必须是开放全资源上阵群攻,而不能保守的只搞业务合作. &quo ...

  3. 招募 | “壹脑云科研圈“招募新成员啦

    Hello, 这里是壹脑云科研圈,我是喵君姐姐~ "壹脑云科研圈"是致力于助力心理学科研与心理科普的公众号,也是一个由来自各大高校.公司的成员共同运营的科研公众平台,旨在向大家分享 ...

  4. 2020 dns排名_《2020年全球DNS威胁报告》:DNS攻击平均损失高达92万美元

    根据EfficientIP的统计,有79%的组织遭受了DNS攻击,每次攻击的平均成本在924,000美元左右. DNS攻击的平均成本 与IDC合作完成的<2020年全球DNS威胁报告>显示 ...

  5. DNS是什么?有哪些公共 DNS ?

    DNS 的简介 DNS(Domain Name System,域名系统),是一个域名和IP地址互相映射的数据库,能够使用户更方便的访问互联网,而不是记忆那些繁杂的 IP 数字.通过主机名,最终得到该主 ...

  6. 首选DNS服务器地址不显示,首选dns服务器如何设置?如何设置DNS地址

    首选dns服务器如何设置?如何设置DNS地址 分类:云服务资讯 编辑:聊聊云计算 浏览量:165 2021-01-29 15:18:29 现在有很多朋友对于首选dns服务器的设置方法不是很了解,不知道 ...

  7. DNS反射放大攻击分析——DNS反射放大攻击主要是利用DNS回复包比请求包大的特点,放大流量,伪造请求包的源IP地址为受害者IP,将应答包的流量引入受害的服务器...

    DNS反射放大攻击分析 摘自:http://www.shaojike.com/2016/08/19/DNS%E6%94%BE%E5%A4%A7%E6%94%BB%E5%87%BB%E7%AE%80%E ...

  8. bat文件设置dns服务器,.bat文件设置IP、DNS

    这几天遇到个烦心事,每次开机之后都要去手动去设置一下IP地址,一大串的数字还是有点麻烦,于是就想写个批处理文件设置IP 注意:在DOS下设置IP时需要管理员权限运行 1.查看机子设置IP需要用到的名字 ...

  9. linux下dns服务器部署,linux系统下部署DNS服务器

    一.实验环境: 准备一台cos7系统的虚拟机 二.实验要求:物理机和虚拟机要能相互通信 三.实验步骤: 1)安装bind.bind-chroot软件包 yum -y install bind bind ...

最新文章

  1. 【勘误】第4章字符串的实现
  2. 最短路算法总结(入门版)
  3. 中国量化投资将呈现三大发展趋势
  4. 005_控制器和动作
  5. vue 页面闪烁的问题_vue页面加载闪烁问题的解决方法
  6. connectionstring mysql_Entity Framework 6 自定义连接字符串ConnectionString连接MySQL
  7. 泛微OA流程表单验证附加验证条件-js代码块
  8. Hongjin2 软件研发作为一项工程而言
  9. in use 大学英语4word_匈牙利留学 | 名校篇:罗兰大学2021英文授课项目最新招生信息...
  10. MySql explain命令详解
  11. nmake编译dll
  12. Google AdMob账号注册及收款指南(新手必看)
  13. 【数理逻辑】命题和联结词 ( 命题 | 命题符号化 | 真值联结词 | 否 | 合取 | 析取 | 非真值联结词 | 蕴涵 | 等价 )
  14. Surface pro系统重装
  15. shell 删除simatic_西门子技术--TIA Portal 软件安装时注册表的删除
  16. Golang zap和lumberjack实现日志存储和自动管理
  17. Linux nobody
  18. TopCoder SRM 558 Div 1 - Problem 1000 SurroundingGame
  19. 【STM32】芯片自锁、No Cortex-M SW Device Found/HardFault_Handler无法下载等问题的解决办法
  20. 【Shader】实验02——后处理实现景深效果

热门文章

  1. 计算机科学丛书之第9章和第10章代码
  2. JOYMY九脉换弹电子烟评测
  3. 04.jQuery++1201
  4. 关于Java双大括号{{}}
  5. 百度搜索结果页链接地址即将升级
  6. java多边形合并_碎多边形合并 | SuperMap iDesktop Java
  7. Excel根据出生日期判断生肖,Leo老师来教你!
  8. 我国第三方支付的发展及监管现状
  9. 微信小程序拼团功能之表结构
  10. 更聪明地学习,而不是苦读——《如何高效学习》