C++复习之路24:计算机网络相关4:

1.从浏览器输入URL到执行的全过程

一、进行域名解析(获取IP地址)

域名解析过程:

  1、浏览器搜索自己的DNS缓存,缓存中维护了一张域名和IP地址的对应表

  2、若没有则搜索操作系统的DNS缓存

  3、若没有则操作系统将域名发送到本地域名服务器,本地域名服务器在自己的DNS缓存查找(递归查询)

  4、若没有则通过以下方式查找(递归查询/迭代查询)

    本地域名服务器向根域名服务器发送请求,根域名服务器返回com/net/cn/org等等的域顶级服务器域名地址

    本地域名服务器向com域顶级域名发送请求,com域顶级域名服务器返回权限域名服务器地址

    本地域名服务器向权限域名服务器发送请求,得到IP地址

  5、本地域名将得到的IP地址返回操作系统,同时自己也将IP地址缓存起来

  6、操作系统得到IP地址返回给浏览器,同时自己也将IP地址缓存起来

  7、浏览器得到IP地址

二、应用层-浏览器发送HTTP请求

作为发送端的客户端在应用层(HTTP协议)发送了一个想要做某件事的HTTP请求(比如请求某个接口)

三、传输层-TCP或者UDP封装数据(HTTP请求报文)

为了传输方便,传输层选择协议(TCP协议或者UDP协议)对从应用层收到的数据(HTTP请求报文)进行封装(对收到的数据进行分割,并在各个报文上打上标记序号及端口号)后转发给网络层

四、网络层-IP协议封装IP地址,获取目的MAC(media access control address)地址

通过IP协议将IP地址封装为IP数据报,此时会使用ARP协议(ARP是一种用以解析地址的协议,根据通信方的IP就可以反查对应的MAC地址)主机发送信息时会将包含目标IP地址信息ARP请求广播到网络上所有的主机,并接受返回消息,以此确定目标的物理地址,找到目的的MAC地址

五、链路层-(又名数据链路层、网络接口层)建立TCP连接

 把网络层交下来的IP数据添加首部和尾部,封装为MAC帧,根据目的MAC地址建立TCP连接(三次握手)

 

不同的协议层对数据包有不同的称谓,在传输层叫做段(segment),在网络层叫做数据报(datagram),在链路层叫做帧(frame)。数据封装成帧后发到传输介质上,到达目的主机后每层协议再剥掉相应的首部,最后将应用层数据交给应用程序处理。

 

2.URL的几个部分:

http://www.aspxfans.com:8080/news/index.asp?boardID=5&ID=24618&page=1#name

从上面的URL可以看出,一个完整的URL包括以下几部分:
1.协议部分:该URL的协议部分为“http:”,这代表网页使用的是HTTP协议。在Internet中可以使用多种协议,如HTTP,FTP等等本例中使用的是HTTP协议。在"HTTP"后面的“//”为分隔符

2.域名部分:该URL的域名部分为“www.aspxfans.com”。一个URL中,也可以使用IP地址作为域名使用

3.端口部分:跟在域名后面的是端口,域名和端口之间使用“:”作为分隔符。端口不是一个URL必须的部分,如果省略端口部分,将采用默认端口

4.虚拟目录部分:从域名后的第一个“/”开始到最后一个“/”为止,是虚拟目录部分。虚拟目录也不是一个URL必须的部分。本例中的虚拟目录是“/news/”

5.文件名部分:从域名后的最后一个“/”开始到“?”为止,是文件名部分,如果没有“?”,则是从域名后的最后一个“/”开始到“#”为止,是文件部分,如果没有“?”和“#”,那么从域名后的最后一个“/”开始到结束,都是文件名部分。本例中的文件名是“index.asp”。文件名部分也不是一个URL必须的部分,如果省略该部分,则使用默认的文件名

6.锚部分:从“#”开始到最后,都是锚部分。本例中的锚部分是“name”。锚部分也不是一个URL必须的部分

7.参数部分:从“?”开始到“#”为止之间的部分为参数部分,又称搜索部分、查询部分。本例中的参数部分为“boardID=5&ID=24618&page=1”。参数可以允许有多个参数,参数与参数之间用“&”作为分隔符。

3.服务器攻击(DDoS):

拒绝服务攻击的发展从拒绝服务攻击已经有了很多的发展,简单Dos到DdoS。那么什么是Dos和DdoS呢?DoS是一种利用单台计算机的攻击方式。而DdoS(Distributed Denial of Service,分布式拒绝服务)是一种基于DoS的特殊形式的拒绝服务攻击,是一种分布、协作的大规模攻击方式,主要瞄准比较大的站点,比如一些商业公司、搜索引擎等站点。DdoS攻击是利用一批受控制的机器向一台机器发起攻击,这样来势迅猛的攻击令人难以防备,因此具有较大的破坏性。所以说防范DdoS攻击变得更加困难,如何采取措施有效的应对呢?

 (1)定期扫描
  要定期扫描现有的网络主节点,清查可能存在的安全漏洞,对新出现的漏洞及时进行清理。骨干节点的计算机因为具有较高的带宽,是黑客利用的最佳位置,因此对这些主机本身加强主机安全是非常重要的。而且连接到网络主节点的都是服务器级别的计算机,所以定期扫描漏洞就变得更加重要了。
  (2)在骨干节点配置防火墙
  防火墙本身能抵御DdoS攻击和其他一些攻击。在发现受到攻击的时候,可以将攻击导向一些牺牲主机,这样可以保护真正的主机不被攻击。当然导向的这些牺牲主机可以选择不重要的,或者是linux以及unix等漏洞少和天生防范攻击优秀的系统。
  (3)用足够的机器承受黑客攻击
  这是一种较为理想的应对策略。如果用户拥有足够的容量和足够的资源给黑客攻击,在它不断访问用户、夺取用户资源之时,自己的能量也在逐渐耗失,或许未等用户被攻死,黑客已无力支招儿了。不过此方法需要投入的资金比较多,平时大多数设备处于空闲状态,和中小企业网络实际运行情况不相符。
  (4)充分利用网络设备保护网络资源
  所谓网络设备是指路由器、防火墙等负载均衡设备,它们可将网络有效地保护起来。当网络被攻击时最先死掉的是路由器,但其他机器没有死。死掉的路由器经重启后会恢复正常,而且启动起来还很快,没有什么损失。若其他服务器死掉,其中的数据会丢失,而且重启服务器又是一个漫长的过程。特别是一个公司使用了负载均衡设备,这样当一台路由器被攻击死机时,另一台将马上工作。从而最大程度的削减了DdoS的攻击。

DDoS攻击通过大量合法的请求占用大量网络资源,以达到瘫痪网络的目的。一般分为以下几种:

1、端口扫描攻击:

端口扫描攻击通过对VPS主机进行系统的结构化扫描来实现。例如,某人可能扫描您的 VPS主机上搭建的Web 服务器,其目的是找到暴露的服务或其他可以利用的漏洞。只要具有可从Internet上免费获得的众多端口扫描器之,任何人都可以轻松实现这种攻击。这也是常见的攻击之一,因为它很容易实现,脚本小子通常利用它窃取服务器的主机名或IP地址(不过,他们通常不知道如何解析获得的结果)。注意,高的攻击者将利用端口扫描挖掘信息。

2、ping洪水(flooding)攻击:

ping洪水攻击是种简单的DDoS攻击。在这种攻击中,一个计算机向另一个系统发送个包(ping),以找到关于服务或系统的信息。对于低的攻击,ping流可用于偷偷地查找信息,但是如果要截取向目标发送的包,则要求系统离线或停机。这种攻击虽然是“老牌攻击”,但它仍然很有活力,因为很多现代的操作系统都容易受到这种攻击。

3、SYN洪水(flooding)攻击:

这种攻击要求了解TCP/IP协议—即整个通信流程是如何工作的。通过一个类比就能够很好地解释这种攻击。这种攻击类似于向某人发送封需要回复的信件,但是信封使用虚假的回信地址。收信人回复了信件并等待您的回复,但永远不能收到回信,因为它在某个地方被阻止了。只要针对系统的SYN请求足够多,攻击者就能够使用系统上的所有连接,从而阻止任何东西通过。

DDoS攻击的方式有哪些?如何防御DDoS攻击?

4、Smurf攻击:

这种攻击类似于ping洪水攻击,但它能巧妙地修改进程。在Smurf攻击中,先向中间网络发送个 ping 命令,然后在自身得到增强之后转发到攻击目标。以前的“点滴”流量现在变成了巨大的流量。幸运的是,这种攻击现在很少见。

5、FTP跳转攻击:

文件传输协议(FTP)跳转攻击指攻击者向有漏洞的FTP 服务器上传个结构特殊的文件,然后该服务器将这个文件转发到其他位置(通常是组织内的另个服务器)。被转发的文件通常包含某些代码,其目的是在终服务器上完成攻击者希望做的事情。

6、P分片(fragmentation)攻击:

在这种攻击中,攻击者凭借高的TCP/IP协议知识将包分成更小的片段(即分片),从而绕过许多入侵检测系统。在比较严重的情况下,这种攻击会造成挂起、锁定、重启和蓝屏等。不过,这种攻击不是般人能实施的。

7、SimpleNetworkManagementProtocol(SNMP)攻击:

SNMP攻击的主要目标是SNMP服务(用于管理网络及其上的设备)。因为SNMP用于管理网络设备,所以通过攻击该服务,攻击者能够详细了解网络的结构,从而为以后的攻击做准备。

DDoS攻击的方式有哪些?如何防御DDoS攻击?

被DDoS攻击并发现象

网站遭受DDOS、CC攻击后一般会表现出:网站掉包严重,访问网站时要么打不开,要么打开了提示“server unavailable”,刷新后情况依然如此,服务器远程困难,远程连接桌面非常卡,或者远程桌面进去后是黑屏。有的用户勉强能远程桌面连接进去了,但是操作困难,CPU处于100%,内存占用率也高,服务器已处于瘫痪状态。

如何有效防御DDoS攻击?

1、软件防火墙

防止DDoS攻击的最简单(虽然并非最有效的)方法是简单地在服务器上使用软件防火墙,或者通过设置相关脚本,过滤掉这些异常流量。企业可以使用简单的命令和专用服务器的软件防火墙来获取攻击者的IP地址、与服务器的连接数,并将其屏蔽。这种方法适用于流量较小的骚扰型DDoS攻击,很多服务器供应商也会在数据中心部署这样的软件防火墙以保护网络,不过防御流量比较小,一旦超过服务商就会触发黑洞策略。当遭受到更大规模更复杂的攻击时,应该选择更专业更具针对性的DDoS防护方案。

2、高防服务器

除了软件防火墙,我们常见的防御手段还有硬防--高防服务器。高防服务器是指独立单个防御50G以上的服务器类型,一旦超过这个防御流量就也扛不住了,而且硬件成本非常高,中小型企业一般负担不起,只有那些大型企业才会选择这种防御方式。

3、高防IP

高防IP是通过把域名解析到高防IP上,并配置源站IP。所有公网流量都经过高防IP机房,通过端口协议转发的方式将访问流量通过高防IP转发到源站IP,同时将恶意攻击流量在高防IP上进行清洗过滤后将正常流量返回给源站IP,从而确保源站IP稳定访问。这种防御方式防御能力够强且成本低,是大部分企业选择的DDOS防御措施。

DDoS攻击的方式有哪些?如何防御DDoS攻击?

下面在看看简单的DDOS防护流程是如何实现的?

DDoS攻击的方式有哪些?如何防御DDoS攻击?

从图中可以看到,攻击流量牵引到清洗路由器,经过清洗后回注正常的流量。

以上是总结的DDOS攻击常用的防御措施,每一种方式都有一定的优势和劣势,像软件防火墙防御能力虽然小,但价格低甚至有免费的,高防服务器防御能力高,信息安全性强,都是成本高,高防IP虽然防御能力和成本都不错,但源IP一旦暴露那高防IP将完全失效。现在发起DDOS攻击越来越简单化,成本也越来越低,导致企业被攻击的风险越来越大,企业可以根据自身的实际情况去选择适合自己的高防方式,保障企业服务器正常运行。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

溯夜流云

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值