首页 > 编程知识 正文

icmp协议的网络层和数据链路层协议,网络层协议分析之IP协议分析

时间:2023-05-06 11:34:10 阅读:275896 作者:711

这里写目录标题 一、网络层的功能二、IP数据包格式三、ICMP协议四、ARP协议

一、网络层的功能 定义了基于IP协议的逻辑地址;连接不同的媒介类型;选择数据通过网络的最佳路径。 二、IP数据包格式 版本(Version):该字段包含的是IP的版本号,4bit。目前IP的版本为4(即IPv4).该版本形成于20世纪80年代早期,现在无论是在局域网还是在广域网中,使用的都是IPv4.目前IPv4所面临的最大问题是IP地址空间不足,即将使用的IPv6是IP的下一个版本,但也不能解决IP地址缺乏的问题。首部长度(Header Length):该字段用于表示IP数据包头传唱度,4bit。IP数据包头最短为20字节,但是其长度是可变的,具体长度取决于选项字段的长度。优先级与服务类型(Priority&Type of Serveice):该字段用于表现数据包的优先级和服务类型,8bit。通过在数据包中划分一定的优先级,用于实现QoS(服务质量)的要求。总长度(Total Length):该字段用以指示整个IP数据包的长度,16bit。最长为65535字节,包括包头和数据。标识符(Identification):该字段用于表示IP数据包的标识符,16bit。当IP对上层数据进行分片时,它将给所有的分片分配一组编号,然后将这些编号放入标识符字段中,保证分片不会被错误地重组。标识符字段用于标志一个数据包,以便接收节点可以重组被分片的数据包。标志(Flags):标志字段,3bit。标志和分片一起被用来传递信息。例如,对当前的包不能进行分片(当该包从一个以太网发送到另一个以太网时),或当一个被分片后用以指示在一系列的分片中,最后一个分片是否已发出。段偏移量(Fragment Offset):该字段用于表示段偏移量,13bit。段偏移量中包含的信息是指在一个分片序列中如何将各分片重新连接起来。TTL(Time to Live):该字段用于表示IP数据包的生命周期,8bit。该字段的信息可以防止一个数据包在网络中无限循环地转发下下去。TTL值的意义是一个数据包在被抛弃钱在网络中可以经历的最大周转时间。该数据包经过的每一个路由器都会检查该字段中的值,当TTL的值为0时,该数据包将被丢弃。TTL对应于一个数据包通过路由器的数目。一个数据包每经过一个路由器,TTL将减去1。协议号(Protocol):协议字段,8bit。该字段用以指示在IP数据包中封装的是哪一个协议,是TCP还是UDP,TCP的协议号为6,UDP的协议号为17.首部校验和(Header Checksum):该字段用于表示校验和,16bit。检验和是16位的错误检测字段。目的主机和网络中的每个网关都要重新计算报头的校验和,就如同源机器所做的一样。如果数据没有被改动过,两个计算结果应该是一样的。源IP地址(Source IP Address):该字段用于表示数据包的源地址。32bit。这是一个网络地址,指的是发送该数据包的设备的网络地址。目标IP地址(Destination IP Address):该字段用于表示数据包的目的地址,32bit。这也是一个网络地址,但指的是接收节点的网络地址。可选项(Options):选项字段根据实际情况可边长,可以和IP一起使用的选项有多个。例如,可以输入创建该数据包的时间等。在可选项之后,就是上层数据。 三、ICMP协议

ICMP协议概述及功能
ICMP协议(Internet Control Message Protocol)的全称是“Internet控制消息协议”,主要用于在IP网络中发送控制消息,提供在通信环境中可能发生的各种问题的反馈。
ICMP采取“错误侦测与回馈机制”,通过IP数据包封装,用来发送错误和控制消息。
ICMP协议号是1

ICMP协议的封装
传输ICMP信息时,要先封装网络层的IP报头,再交给数据链路层,即ICMP报文对应IP层的数据。

ICMP协议的基本使用
在网络中,ICMP协议的使用是靠各种命令来实现的。以ping为例。
ping命令的返回信息
1.不能建立连接的应答:
2.连接超时的应答
注意:如果目标计算机启用了防火墙的相关设置,即使网络正常也可能会返回“请求超时”信息。
选项:

-a 可以显示对方主机名称-t 长ping命令 四、ARP协议

ARP协议概述
在局域网中,交换机通过MAC地址进行通信,要获得目标主机的MAC地址就需要使用ARP协议将目的IP地址解析成目的MAC地址。所以,ARP(Address Resolution Protocol,地址解析协议)的基本功能是负责将一个已知的IP地址解析成MAC地址,以便在交换机上通过MAC地址进行通信。

ARP协议工作过程
若PC1想发消息给PC2,但是只知道PC2的IP,未知PC2的MAC,PC2就会通过ARP发送广播帧给交换机,交换机接收到广播帧时无条件做广播处理,此时连接到交换机上的所有主机都可以收到广播帧,他们会比较自己的IP与目标IP是否一致,若不一致则丢弃处理,若一致则回复消息给发送方,在回包过程中自然会加上自己的IP和MAC,当发送方接收到此数据时,查看接收方的IP和MAC地址,把他们放入ARP缓存表。

ARP协议攻击原理

ARP欺骗原理
ARP协议实际上是一种广播,广播是请求+回应,在回应过程中可以出现bug,可以主动回应欺骗其他主机或者网关等。主机如何绑定ARP来防止ARP欺骗
如何查找IP的接口号:netsh interface ipv4 show neighbors
格式:netsh interface ipv4 set neighbors 接口号 IP地址 IP地址对应的MAC地址
附:如何解除绑定
格式:netsh -c “i i” delete neighbors idx号 IP地址 IP地址对应的MAC地址
如何查看idx号:netsh i i show in

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。