网络层相关知识
一、网络层协议介绍
1.网络层工作在传输层和数据链路层之间
2.网络层的功能:
1)定义了基于IP协议的逻辑地址
2)连接不同的媒介类型
3)选择数据通过网络的最佳路径
3.IP数据包格式
版本:显示IP类型是IPV4还是IPV6
首部长度:显示IP的头部长度
优先级与服务类型:占8个位,主要定义数据包的优先级使用和服务类型的
总长度:定义IP这个数据包的总长度,IP数据包就包括上层数据以及IP太头部的数据
标识符:通过标识符对分片的数据做标记以便分清哪些分片是属于同一数据的(上层数据到IP层会被分片)
标志:当文件不能再被分片时,加上标志告诉我们不能分片了 (上层数据到IP层会被分片)
段偏移量:给数据分片给予个顺序,方便将各分片重新连接起来(上层数据到IP层会被分片)
TTL:表示生命周期。当每经过一个路由器转发时,TTL就会减1,当TTL为0时,该数据包就会被丢弃。
协议号:表示上层数据时TCP数据还是UDP数据
首部校验和:就是校验数据包有没有篡改过
可选项:包含数据包的添加时间,和一些其他的选项
数据:代表数据段的数据(上层数据+TCP头部数据)
总共20个字节
二、ICMP协议
1.ICMP是什么?
ICMP协议实际上是互联网控制报文协议:工作在网络层,是一个错误侦测与回馈的机制。
2.ICMP的作用!
主要用来探测节点之间的网络连通性
在局域网中,主机与主机之间的通信就是点到点之间的通信(通过IP地址进行的)IP地址只是逻辑间的寻址,但是网卡和网卡是不知道对方MAC地址,所以要用要探测址。
3.ICMP的封装!
上两层是在网络层进行的,最下面的一层是在数据链路层进行的。
4.Ping命令!
ping命令的基本格式为 C: >ping [-t] [-I字节数] [-a] [-i] IP_ Address| target_ name
Windows系统中:
1):ping -t ip地址 参数会一直下停的执行ping
2):ping -a ip地址 参数可以显示主机名称
3):ping -l(小写的L) 参数可以设定Ping包的大小
4):ping -n 指定发送包的个数
5):ping -s 指定源IP去Ping(源地址+目的地址)
Linux系统:
1):ping -s 参数可以设定ping包的大小
2):ping -c 指定发送包的个数
3):ping -I(大写的i)源地址 + 目的地址 指定源IP去ping。《其中地址可以通过 ifconfig (linux)查询,ipconfig(windows)查询》
5.跟踪路由器路径命令!
Windows:
tracert IP/域名
Linux:
traceroute IP/域名
6.广播与广播域!
广播:将广播地址做为目的地址的数据帧
广播域:网络中能接收到同-个广播的所有节点的集合
广播地址为FF-FF-FF-FF-FF-FF
三、ARP协议介绍
1.ARP是什么?
地址解析协议,即ARP(Address Resolution Protocol),是根据IP地址获取物理地址的一个TCP/IP协议。主机发送信息时将包含目标IP地址的ARP请求广播到局域网络上的所有主机,并接收返回消息,以此确定目标的物理地址;收到返回消息后将该IP地址和物理地址存入本机ARP缓存中并保留一定时间,下次请求时直接查询ARP缓存以节约资源。
ARP协议的作用:就是将一个已知的IP地址解析成MAC地址
2.ARP的工作原理
1.主机A想发送数据给主机B,会先检查自己的ARP缓存表。
2.如果发现要查找的MAC地址不在表中,就会发送一个ARP请求广播,用于
发现日的地的MAC地址。ARP请求消息中包括主机A的IP地址和MAC地址以及主机B
的IP地址和日的MAC地址(此时为广播MAC地址F-FF-FE-FF-FF-FF)。
3.交换机收到广播后做泛洪处理,除主机A 外所有主机收到ARP请求消息,
主机B 以单播方式发送ARP应答,并在自己的ARP表中缓存PC1的IP 地址和MAC地
址,其他主机丢弃这个ARP请求消息。
4.主机A在自己的ARP表中添加主机B的IP 地址和MAC地址的对应关系,以
单播方式与主机B通信。
3.ARP的攻击和欺骗原理
(1).ARP的欺骗攻击原理
ARP攻击的原理,主要是ARP协议自身设计的缺陷,在主机收到arp应答时,不管以前是否发出请求,都会接收并更新arp缓存这就可以导致虚假的arp应答。
(2).ARP欺骗的危害
1、使同一网段内其他用户无法上网
2、可以嗅探到交换式局域网中的所有数据包
3、对信息进行篡改
4、可以控制局域网内任何主机