分享

Web应用系统介绍-TCP/IP协议

 没事打豆豆 2018-04-17



在我们开始CTF的道路之前,希望你们能知道并理解下面基本概念,其中有一些是计算机类毕业生必学的内容


学过的同学可以回顾一下


没学过的同学通过我们的抛砖引玉加深自己的理论学习


首先就是TCP/IP协议

TCP/IP协议源于1969年,是针对Internet开发的一种体系结构和协议标准,其目的在于解决异种计算机网络的通信问题


TCP/IP的全称是Transmission Control Protocol/Internet Protocol,中译名为传输控制协议/因特网互联协议,又名网络通讯协议,是Internet最基本的协议、Internet国际互联网络的基础,由网络层IP协议传输层TCP协议组成。TCP/IP定义了电子设备如何连入因特网,以及数据如何在它们之间传输的标准。协议采用了4层的层级结构,每一层都呼叫它的下一层所提供的协议来完成自己的需求。通俗而言:TCP负责发现传输的问题,一有问题就发出信号,要求重新传输,直到所有数据安全正确地传输到目的地。而IP是给因特网的每一台联网设备规定一个地址。

使得网络在互联时能为用户提供一种通用、一致的通信服务,是国际互联网Internet采用的协议标准 


TCP/IP是一组通信协议的代名词,是由一系列协议组成的协议簇。它本身指两个协议集: 


TCP 传输控制协议

IP    互联网络协议

sdfd


组成


其组成如下如所示



当数据在网路中传输的时候,会依次进过每一层,最终呈现给用户


sdfd


TCP/IP体系和协议栈之间的关系




我们可以看出,我们熟知的DNS,FTP等等协议,都是在应用层上的协议,下面我用FTP做例子讲解这个从上到下从下到上的过程

sdfd



基于TCP/IP的文件传输协议(FTP)





原始数据在应用层加上了一个FTP之后,在传输层加上了TCP头,依次类推,到达目的之后,又反方向脱去数据头,最终呈现原始的数据


sdfd


数据链路层协议


这里我们稍微了解一下数据链路层协议


SLIP


全称是Serial Line IP,它是一种在串行线路上对IP数据报进行封装的简单形式 


PPP


点对点协议修改了SLIP协议中的所有缺陷,与SLIP类似,PPP经常用于低速的串行链路


好了,能用心看到这里的同学我们休息一下~



然后继续~


sdfd


网络层IP协议



网际协议(IP)主要负责在主机之间寻址和选择数据包的路由,IP协议不含错误恢复的编码,属于不可靠的协议




MAC地址


MAC地址是网路设备在出厂之前由厂家写入到硬件中的一个地址


当我们的设备接入网络之后,计算机会使用ARP协议来建立IP地址和MAC地址的映射表


为什么讲这个,ARP攻击的原理就是从这里引伸出来的


sdfd



IP地址的分类



IP地址划分为A、B、C3类


InternetNIC在全球范围内统一分配,D、E类为特殊地址(组播和广播)


A类IP地址

一个A类IP地址1字节的网络地址和3字节主机地址组成,网络地址的最高位必须是0


地址范围从0.0.0.0127.255.255.255


可用的A类网络有126个,每个网络能容纳1亿多个主机


A类私有IP


10.0.0.010.255.255.255


可以看出~我们培训的网段其实是在A类私有IP段里面


B类IP地址 

一个B类IP地址2个字节的网络地址和2个字节的主机地址组成,网络地址的最高位必须是10


地址范围从128.0.0.0191.255.255.255


可用的B类网络有16382个,每个网络能容纳6万多个主机 。 


B类私有IP


172.16.0.0172.31.255.255

C类IP地址 

一个C类IP地址3字节的网络地址和1字节的主机地址组成,网络地址的最高位必须是110


范围从192.0.0.0223.255.255.255,C类网络可达209万余个,每个网络能容纳254个主机。 


C类私有IP


192.168.0.0192.168.255.255


现在我们大多数的家庭路由器都是工作在这个段里面


那么一个网络设备是如何能被其他网络设备发现的呢?


对于这么几个地址,做到知道并能区别,然后我们休息一下再继续



我们再次开始



ARP


ARP把基于TCP/IP软件使用的IP地址解析成局域网硬件使用的媒体访问控制(MAC地址)地址


sdfd



互连网控制报文协议ICMP


ICMP传递差错报文以及其他需要注意的信息


ICMP报文通常被网络层或更高层协议(TCP或UDP)使用,一些ICMP报文把差错报文返回给用户进程


ICMP用来传送一些关于网络和主机的控制信息,如目标主机是不可到达的、路由的重定向等


常用的ping命令就是使用了ICMP协议,ICMP不为数据提供错误控制服务,只是报告数据出错并不再传送错误的数据,并在IP数据报的生存期过后将期抛弃


sdfd


传输层协议


传输层包括两个协议:


第一个是TCP协议,即传输控制协议,是一个可靠的、面向连接的协议


第二个是UDP协议,它采用无连接的方式,不管发送的数据包是否到达目的主机,数据包是否出错,收到数据包的主机也不会告诉发送方是否正确收到了数据,它的可靠性是由上层协议来保障的


TCP


传输控制协议TCP将数据分成数据报,用能够到达目的地的路径信息连行包装,接收端则将这些数据进行重组。它提供可靠的、面向连接的数据报传递服务


UDP


用户数据报协议UDP是无连接的服务,在无连接服务的情况下,两个实体之间的通信不需先建立好一个连接,因此其下层的有关资源不需要事先进行预定保留,这些资源将在数据传输时动态地进行分配


sdfd


端口



传输层就是通过协议端口(protocol port,简称端口)与应用层的应用程序进行信息交互的,应用层各种用户进程通过相应的端口与传输层实体进行信息交互


端口实际上是一个16bit长的地址,范围可以从065535


01023端口号称为熟知端口(Well-Known Port),其余102465535端口号称为一般端口动态连接端口(Registered/Dynamic)


在数据传输过程中,应用层中的各种不同的服务器进程不断地检测分配给它们的端口,以便发现是否有某个应用进程要与它通信。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多