目录
一、网络层的功能
1、定义了基于IP协议的逻辑地址
2、连接不同的网段
3、选择数据通过网络的最佳选择
二、IP数据包格式
版本(4) | 首部长度(4) | 优先级与服务类型(8) | 总长度(16) | |
标识符(16) | 标志(3) | 段偏移量(13) | ||
TTL(8) | 协议号(8) | 首部校验号(16) | ||
源地址(32) | ||||
目标地址(32) | ||||
可选项 | ||||
数据 |
IP数据包格式(分为20字节的固定部分,表示每个ip数据包必须包含的部分,和40字节的可变长部分)
版本号(4bit):指IP协议版本。并且通信双方使用的版本必须一致,目前我们使用的是IPv4,表示为0100
首部长度(4):IP数据包的包头长度
优先级与服务类型(8):该字段用于表示数据包的优先级和服务类型。通过在数据包中划分一定的优先级,用于实现QoS(服务质量)的要求。
总长度(16):IP数据包的总长度,最长为65535字节,包括包头和数据。
标识符(16):该字段用于表示lP数据包的标识符。当IP对上层数据进行分片时,它将给所有的分片分配一组编号,然后将这些编号放入标识符字段中,保证分片不会被错误地重组。标识符字段用于标志一个数据包,以便接收节点可以重组被分片的数据包
标志(3):和标识符一起传递,指示不可以被分片或者最后一个分片是否发出(完整)
段偏移量(13):在一个分片序列中如何将各分片连接起来,按什么顺序连接起来
TTL生命周期(8):可以防止一个数据包在网络中无限循环的转发下去,每经过一个路由器-1,当TTL的值为0时,该数据包将被丢弃0-255
协议号(8):封装的上层哪个协议,ICMP:1TCP:6 UDP:17
首部校验和(16):这个字段只检验数据报的首部,不包括数据部分。这是因为数据报美经过一次路由器,都要重新计算一下首部校验和(因为,一些字段如生存时间、标志、片偏移等可能发生变化)
源地址(32):源ip地址,表示发送端的IP地址
目标地址(32):目标ip地址,表示接收端的P地址
可选项:选项字段根据实际情况可变长,可以和P一起使用的选项有多个。例如,可以输入创建该数据包的时间等。在可选项之后,就是上层数据
数据:表示传输层的数据,如保存 TCP、UDP、ICMP 或 IGMP 的数据。数据部分的长度不固定
三、ICMP协议
定义:Internet控制报文协议,是错误侦测与回馈机制
作用:测试网络数位联通性并给予一定的反馈
组成:ping、tracert(路由跟踪,最多跟踪30个跃点)
封装
1、ICMP报文格式
2、ICMP协议作用
ICMP协议主要用来检测网络通信故障和实现链路追踪,最典型的应用就是PING。
ping命令
1)基本命令
c:sping[-t][-H字节数][-a][-i]IP_Addressl target_name
2)ping -t
测试网络质量,-t会一直不停的执行ping命令,按ctrl+c中止命令
调试故障或需要进行持续联通性测试时使用。
3)ping -a
显示主机名
4)ping -l
设定ping包的大小,默认ping包的大小为32字节,可用于简单测试通信质量
四、ARP协议
1、概述
在局域网中,交换机通过MAC地址进行通信,要获得目的主机的MAC地址,就需要使用ARP协议将目的IP地址解析成目的MAC地址。
2、基本功能
ARP负责将一个已知的IP地址解析成MAC地址,以便在交换机上通过MAC地址进行通信
3、工作原理
PC1已知PC2的IP地址, 未知PC2的MAC时候用。PC1发送ARP广播给二层交换机,二层交换机接收到ARP广播消息后无条件泛洪处理,连接到二层交换机下的所有PC都将接收到此广播消息,每个PC都会把自身的IP地址和目标IP地址进行比对,若一致则接收此广播消息,并回数据包给 PC1, PC1接收到返回的数据包后会记录下PC2的IP和MAC地址,记录到ARP缓存表中;若不一致则丢弃处理。
4、ARP相关命令
1)Windows系统中的ARP命令
arp -a 查看arp缓存表
arp -d 清除缓存
arp -s arp绑定,例如arp -s 192.168.1.1 aa-aa-aa-aa-aa-aa
2)华为ARP相关命令
< >/[ ] display arp //查看ARP缓存表
[ ]arp static 192.168.10.1 aa-aa-aa-aa-aa-aa //arp捆绑
< >reset arp all //清除所有arp缓存
< >reset arp static //清除静态arp
五、ARP攻击与ARP欺骗的原理和应用
ARP攻击