2010年1月17日,Google在其官方网站上发布了一篇名为《A new approach to China》的博文,在博文中,Google官方透露,将停止过滤搜索结果。在国内市场上停止过滤搜索结果,这将意味着Google对于搜索结果的处理将不再依据法律。 2010年3月23日凌晨3时,Google停止对谷歌中国搜索服务的“过滤审查”,并将搜索服务由内地转至香港。

在Google退出内地初期,国内依然可以访问Google.com,随着过滤加强,如今Google等境外网站,已彻底无法访问。

把时间继续往后倒推8年。在2002年,网络审查已开始采用技术手段,通过对IP或端口、关键字进行过滤,防止民众访问被过滤的网站,这算是“防火长城”(简称GFW)的前身。GFW 主要的作用就是通过一定的技术手段对网络内容、资源进行过滤,极大的提升了网络环境。而GFW具体用到哪些技术手段,我们就来一起看看。(只聊技术)

永久原文链接:https://didiheng.com/essay.......

#DNSCP

“域名服务器缓存污染技术”(DNS Cache Poisoning Technology) 简称DNSCP 是最初采取的过滤手段之一,随着互联网的发展,更多手段被应用,下面我们会说到。想象一下我们平时搜索网站的过程,当我们在浏览器输入一个网址,按下Enter键,在网络状况良好的前提下,界面基本都可以正常显示出来。

那输入网址,按下Enter键发生了什么呢?浏览器会先主动向DNS服务器请求,获取网址所在的IP地址 (DNS服务器各个地区都有,负责存储域名对应的IP地址,拥有IP地址即可访问网页),获取到IP地址后访问服务器,获取到资源,在浏览器中渲染出对应的网页。对于网络技术不是很了解的同学,只需要知道 输入网址后,浏览器会从DNS服务器获取正确的服务器IP地址,然后就可以显示网页了。(这里的资源指的 网页显示的图片、文字等资源)

说了这么多,那DNSCP在其中起到怎么样的作用呢?如果你请求不合法网址,它会污染DNS服务器请求,让浏览器无法获取到正确IP地址,没有正确的IP地址,当然就无法访问网页。可能有些人会说,可以换一台DNS服务器试试啊!抱歉,根DNS服务器被统一管理。DNSCP 在目前仍然起着至关重要的作用,它污染Google、twitter、facebook等境外网址IP,保证国内网民无法请求到正确的IP,阻止访问非法网址。

DNSCP技术只是其中 GFW 所应用的技术中的其中之一,还有更多网络技术被使用,下面我会继续讲解。

#TCP关键字阻断

我们继续说下一个:TCP关键字阻断,TCP关键字阻断 和 DNSCP 基本是被同时期投入,更加有逼格。TCP关键字阻断,字面理解——TCP请求被检测到关键词,如:"www.google.com",就伪装成对方干扰连接,使请求的内容无法查看。在我们的浏览器输入http://www.baidu.com 网址,这个网址中的“http”表示超文本传输协议,这个协议是计算机协议,你如果要请求网址,就需要带上这个协议标示,这是默认的。

那这里又与TCP有啥关系呢?TCP简称传输控制协议,它是传输层的协议,而http是应用层协议,http是在TCP协议上实现的,依赖于TCP协议。当你请求http://www.baidu.com 网址,需要通过TCP协议请求连接两端,客户端和服务端,TCP连接成功,http请求才可以获取到网页。

简单点说,TCP关键字阻断技术,会检测TCP连接是否存在特殊关键字,如果出现,则会马上伪装成对方向连接两端,干扰TCP连接,连接失败,http请求无法获取到资源,网页就无法显示了。

TCP关键字阻断、 DNSCP 都是计算机系统 协议层面的手段,下面来说一个非常通用的手段,也是目前非常 常见的手段,它在GFW也被使用。

#IP地址端口封锁

IP地址端口封锁,这是目前商业互联网公司常用的手段,在我们的生活中随处可见。

就拿拼多多作为例子,2019年双十一刚刚过去,让人印象深刻的,就属拼多多了,百亿补贴 + 骚气的分享文案,让你欲罢不能,当然,我们这里不是要介绍运营模式,而是要说一下它的分享。双十一期间,经常会在各种微信群看见拼多多的 分享链接,要群友帮忙砍价,你点开之后,还会提示你分享,想必大家都有这个经历。其实微信是不允许诱导分享的,近期的新规范,提到禁止砍价、加速、好友助力,一旦发现就会对域名IP进行封锁,甚至永久封禁账号。

微信中拼多多分享页面就属于诱导分享,它的分享网页已经不知道被封锁多少次,那么既然已经被封禁N次,那怎么现在还可以访问,难道拼多多是微信的亲儿子??

说一说,“NetWork Wall”所用到技术的更多相关文章

  1. dubbo所用到的技术

    服务注册:zookeeper 协议:dubbo  Hessian  Rmi 网络编程:netty 动态代理:jdk和Javassist 序列化:Hessian  Dubbo  Json  Java S ...

  2. 为什么我们要使用ssh框架技术,及感想

    前言: 在公司从C++转向Java Web方向大概有3个月(11月初-1月底)了.三个月前对Java和Web还几乎是零基础.然后从安装Eclipse,MySQL,tomcat开始,到学习HTML/CS ...

  3. 《嵌入式系统原理与接口技术》——嵌入式系统接口应用基础

    本文为我负责编写的电子工业出版社出版的<嵌入式系统原理与接口技术>一书第七章部分,这里整理的仍然是修改稿,供需要的同学参考,本书为普通高等教育"十二五"规划教材,电子信 ...

  4. 简单又好用的聊天室技术——WebSocket

    现在,很多网站为了实现推送技术,所用的技术都是轮询.轮询是在特定的的时间间隔(如每1秒),由浏览器对服务器发出HTTP request,然后由服务器返回最新的数据给客户端的浏览器.这种传统的模式带来很 ...

  5. Managing Network Usage

    This lesson describes how to write applications that have fine-grained control over their usage of n ...

  6. Bigo的Java面试,我挂在了第三轮技术面上.........

    背景 前段时间家里出了点事,辞职回家待了一段时间,处理完老家的事情后就回到广州这边继续找工作,大概是国庆前几天我去面试了一家叫做Bigo(YY的子公司),面试的职位是面向3-5年的Java开发,最终自 ...

  7. soso官方:网页分类技术介绍

    http://www.wocaoseo.com/thread-190-1-1.html 1.    技术背景     分类问题是人类所面临的一个非常重要且具有普遍意义的问题.将事物正确的分类,有助于人 ...

  8. Linux File System

    目录 . Linux文件系统简介 . 通用文件模型 . VFS相关数据结构 . 处理VFS对象 . 标准函数 1. Linux文件系统简介 Linux系统由数以万计的文件组成,其数据存储在硬盘或者其他 ...

  9. iptables rule

    和H3C中的acl很像,或者就是一会事,这就是不知道底层的缺陷,形式一变,所有的积累都浮云了 参考准确的说copy from http://www.ibm.com/developerworks/cn/ ...

随机推荐

  1. ES三节点重启后报错no known master node

    问题 一直在研究ES的监控怎么做,想偷点懒,不去通过API获取然后计算,就想找个现成的插件或者监控软件,只要装个agent就可以,然后就找到了x-pack,插件装好了之后,需要重启ES集群,线上的ES ...

  2. surging 微服务引擎 -协议主机的Behavior特性

    1.前言 因为工作的关系,最近很少更新surging,因为surging 一直处在不温不火的状态,而自己每天利用业余时间进行完善,每天都是疲惫的状态,还要应付新手的提问,曾经一度想放弃,但是有些人劝说 ...

  3. sql数据文件导入数据库

    1.首先通过xshell连接数据库服务器,执行命令mysql -u root -p 命令,按照提示输入密码.连接上数据库. 2.在连接终端上执行命令create database JD_Model; ...

  4. Potato土豆win综合提权

    0x01 NBNS和WDAP NBNS: 在 Windows 系统中的另外一种名称就是 NetBIOS 名称,准确的说 NetBIOS 名称并非是一种名字系统,而是 Windows 操作系统网络的一个 ...

  5. [网络流 24 题] luoguP2756 飞行员配对方案问题

    [返回网络流 24 题索引] 题目描述 英国皇家空军从沦陷国征募了大量外籍飞行员.由皇家空军派出的每一架飞机都需要配备在航行技能和语言上能互相配合的 222 名飞行员,其中 111 名是英国飞行员,另 ...

  6. c++11::std::decltype/declval

    decltype ( 实体 ) () (C++ 起) decltype ( 表达式 ) () (C++ 起) 若实参是其他类型为 T 的任何表达式,且 a) 若 表达式 的值类别为亡值,则 declt ...

  7. go-关键字-变量

        var 声明变量 const 常量的关键字, 常量不能出现只声明不赋值的情况. 名字首字母为大写的程序实体可以被任何代码包中的代码访问到. 名字首字母为小写的程序实体则只能被同一个代码包中的代 ...

  8. linux+jenkins+github+python持续集成

    1.服务器上事先安装jenkins   参见:linux上war包方式安装Jenkins 2.新建一个自由风格的job,名字随意起 3.配置git(拉取github代码) 从github复制pytho ...

  9. 使PC端网页宽度自适应手机屏幕大小

    有时候我们会纠结PC页面在手机页面上无法正常显示,超出屏幕,有些内容看不到,现在又了下面的代码,可以做到自适应手机端的屏幕宽度: 在html的<head>中增加一个meta标签: < ...

  10. css布局两端固定中间自适应

    第一种:采用浮动 1.1首先来看一下网上一个哥们给的代码 <body> <div class="left">左</div> <div cl ...