常常会听到别人说,你的浏览器要设代理服务器(Proxy Server),这样你上网的速度会比较快。到底什么是代理服务器,它在Internet里扮演什么样的角色?
当使用者要向服务器要求资料时,假设使用者输入www.yahoo.com向Yahoo索取资料时,在正常的网路流程中,当使用者的浏览器看到www.yahoo.com这个域名(Domain Name)时,会向域名解析服务器(DNS)寻找www.yahoo.com所对应的IP地址,当DNS传回对应的IP地址后,浏览器会再对这个Yahoo服务器索取资料,这看起来是没有问题的,但如果网络阻塞、网站的机器配备不好、网站的专线不够快等不良的因素通通加在一起后,你要连接的网站就会变的很慢,所以这个时候有一个叫代理服务器的东西,会把大家常常看的网页资料暂存在一个位置,这个位置的机器设备通常会很好,线路带宽会很大,所以用户读取的速度就会很快。
当用户设了代理服务器时,浏览器在读取资料时,资料应该是如何传递的呢?相同的,浏览器会先向DNS查询IP地址,然后找到IP地址后,会先向代理服务器查询是否有这个网站的资料,如果有的话,代理服务器就直接把内容传给了用户,如果代理服务器没有资料的话,才会直接向网站要资料。
代理服务器的主要功能有:
(1)设置用户验证和记帐功能,可按用户进行记帐,没有登记的用户无权通过代理服务器访问Internet网。并对用户的访问时间、访问地点、信息流量进行统计。
(2)对用户进行分级管理,设置不同用户的访问权限,对外界或内部的Internet地址进行过滤,设置不同的访问权限。
(3)增加缓冲器(Cache),提高访问速度,对经常访问的地址创建缓冲区,大大提高热门站点的访问效率。通常代理服务器都设置一个较大的硬盘缓冲区(可能高达几个GB或更大),当有外界的信息通过时,同时也将其保存到缓冲区中,当其他用户再访问相同的信息时,则直接由缓冲区中取出信息,传给用户,以提高访问速度。
(4)连接Internet与Internet,充当防火墙(Firewall):因为所有内部网的用户通过代理服务器访问外界时,只映射为一个IP地址,所以外界不能直接访问到内部网;同时可以设置IP地址过滤,限制内部网对外部的访问权限。
(5)节省IP开销:代理服务器允许使用大量的伪IP地址,节约网上资源,即用代理服务器可以减少对IP地址的需求,对于使用局域网方式接入Internet ,如果为局域网(LAN)内的每一个用户都申请一个IP地址,其费用可想而知。但使用代理服务器后,只需代理服务器上有一个合法的IP地址,LAN内其他用户可以使用10.*.*.*这样的私有IP地址,这样可以节约大量的IP,降低网络的维护成本。
保守的估计:Google现在拥有超过45万台服务器,分布在全球25个地方。搜索引擎的服务器越多,那么存储的数据就越多,根据四大搜索引擎的收录情况,就可以计算出百度有多少台服务器了。
所以可以推算出:
百度的服务器是谷歌的 16分之一,谷歌45万台服务器,百度的就应该是3万台服务器。
全国ping百度没有用,根本不用服务器做应答,ping只不过检测网络状态。
百度又不是一个服务器,你ping它你就能阻断攻击了吗,不能的,防火墙是干什么的。
百度和淘宝工作方式不一样,淘宝双十一每秒请求亿次,为了保证数据正确它会有锁机制,所以在付款时会出现服务器瘫痪。百度不需要保证数据及时更新,你会发现百度搜索你在本地搜索和你在异地搜索同一个关键词,给出的结果不大一样,这是因为两个地区数据没同步,这种分布式服务器架构大大提高了服务器安全,同时也能把流量分流减轻服务器压力。
全国人ping百度,由于把我们的请求分配到了不同服务器,不会给百度造成多大影响。
Baidu作为一种分布式系统,ping这种数据量想把服务器宕机还是比较困难的,毕竟那么多服务器,就算只攻击一个ip,Baidu在察觉到ping流量高时直接把ping封掉就行了,或者把流量导向其他服务器。
不过ping倒一个没有分布式架构的网站还是比较容易的,例如12306,每年都有几天宕机,因为买票这种服务决定了它做不成分布系统,流量一大就不行了
不会崩溃,因为大家ping的是他的各地cdn服务器而已,对于cdn来说你的ping是一根毛而已,即便你牛X把他其中一个CDN击垮了,那也只是那个节点下的用户无法访问。
这个问题首先看ping的是什么,ping的是最近的服务器节点,也就是离你最近的cdn节点,然后再看ping的本质是什么,就是发包向终端服务器,大家一起ping,终端节点的cdn服务器可能就会宕机,无法提供服务,这差不多有点类似DDoS攻击,但是这种攻击没法防御,因为都是真实用户去访问,不过百度可以做到cdn服务器不接受ping包,那么ping的意义就不大了。从你的问题上来看宏观上会搞死百度,但是只针对这个场景的话,百度虽然无法像防御DDoS攻击那样去防御但是可以服务器不接受ping来拒绝你的请求,来抵抗恶意访问带来的影响和压力。
百度的域名做了CDN,不同地区、不同运营商ping出的地址都不同
先说结论, 不会怎么样.
你的意思应该是ICMP洪水攻击, 这种攻击是需要预先知道对方真实IP的网络DDOS攻击. 大规模发起IP的ping请求, 耗光对方IP服务器所在线路带宽. 这种只是攻击单个固定IP比较合适, 而百度显然不是.
因为百度是集群服务, 各地机房有n个IP, 即使你使用上述方法耗光了某个机房的带宽, 能怎样, 百度还有其他机房提供服务.
那就把百度所有对外服务IP都进行攻击, 耗掉所有带宽. 想得很好, 这里有个问题, 你能穷举百度的所有机房的所有IP吗? 实际上非常困难. 运营商的实际线路非常复杂, 不是你能简单探测到的.
再说DNS过程, 从baidu.com ->IP 这样进行穷举, 基本上是不可行的. 这层DNS解析的防护现在都非常成熟了, 解析服务器会自动发现异常流量, 然后将流量拒绝解析挡掉或者将峰值流量导向一个无效IP, 这样就保证了主干带宽不会被占满.
要讲清楚这个问题,必须说明:
1.ddos攻击,dos攻击的方式和原理。
2.分布式数据中心,内容分发网络的架构和原理。
3.搜索引擎工作原理,日常通过浏览器访问所百度经历的处理流程。
4.ping命令(ICMP报文的本质),qos,防火墙数据报文处理流程。网络设备转发原理等。
一.DOS攻击,以及DDOS攻击的方式和原理:
DOS攻击(Denial of Service)拒绝服务攻击,DDOS(Distributed Denial of Service)分布式拒绝服务攻击。
两种攻击的攻击原理相同,实现方式略有区别。答主所说的ping的方式,也是DOS攻击的一部分,属于ICMP攻击。但是属于DOS攻击中比较low的一种。
拒绝服务攻击的本质,是通过客户端发起大量无用访问请求,来占用服务器性能资源。网络资源,造成对于正常业务访问响应缓慢,甚至宕机无响应的情况。通常需要攻击者研究攻击目标的系统,网络架构。针对性对其性能瓶颈进行攻击,或对其软件系统设计缺陷,漏洞进行性能攻击。如当年谣传一时的“死亡之ping”。(不过软件缺陷都可以通过软件版本升级或者打补丁来解决。而性能问题通常需要硬件升级扩容才能解决)。
如果打个比方的话,DOS攻击(拒绝服务攻击)就好比你开了一家店,这个店就好比你的服务端。是来提供服务的,顾客就是来访问你的PC主机(客户端)。你这家店只能同时给一个顾客提供服务处理问题,如果来的顾客比较多,就得排队了(处理队列)。好在平时顾客也不是很多,而且你也处理的比较快,响应速度比较快顾客也比较满意。但是DOS攻击来了后,就好比来了一群只看不买的闲人,不但占用你的时间,精力(CPU资源,内存硬盘网络资源等。)还会使得排队队列过长(响应延迟)最后因为队列太大厅不够站了,客户没有办法进入你的商店。(服务无响应),甚至可能出现因为客人太多把老板娘逼疯的情况,人亡店歇 ( _ ) (服务器宕机)。
DOS和DDOS的区别在于,DOS作为攻击的发起方,发起方只有一个。可根据源IP地址进行识别拦截以及事后追踪,攻击的流量也相对较少。DDOS是DOS攻击的升级版(分布式DOS攻击),一般通过病毒劫持肉鸡来作为DOS攻击的发起方,相比DOS攻击识别攻击流量困难,事后追溯麻烦,攻击流量相对较大。
应对DOS攻击,最好的应对方法是在网络出口(也就是外网入口),购置IDS设备(入侵检测设备,只监控不阻断。但是会对网络管理员发出告警并记录日志方便追溯。)ISP设备(入侵防御设备,监控并进行阻断。并记录阻断日志。在网络中运行可能出现转发慢,正常流量被拦截阻断情况,需要根据实际情况采购合适的IPS产品并应用合适的安全策略)防火墙(对数据报文进行过滤拦截,虽然很多防火墙支持IPS功能但是分开说,防火墙更多是针对针对IP地址,目标端口进行审计过滤,对网络性能影响不大。)用其中的一种或者多种设备来综合进行防御。
全国这么多人,一起ping的话会导致百度服务器收到大量数据,服务器直接挂掉,没有几个小时都恢复不了,导致作业不能百度了,不会做交不上作业被老师批评。。
全国一起的话应该是会的,前提是得一起,没有延迟,不然是不会的,数据量不够,不如全国一起ddos效果好
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)