文章目录
前言:本章从IP报文的结构开始讲起,引入了两个重要协议------ARP和ICMP
1.IP数据包格式
首部长度(Header Length):该字段用于表示IP数据包长度,4比特,IP数据包头最短为20字节,但其长度可以变。
优先级与服务类型(Priority&Type of Service):该字段用于表示数据包的优先级和服务类型,8比特。
总长度(Total Length):该字段用于指示整个IP数据包的长度,16比特
标识符 (Identification):该字段用于表示IP数据包的标识符,16比特
标志(Flags):标志字段,3比特,标志和分片一起用来传递信息。
段偏移量(Fragment Offset):该字段用于表示段偏移量,13比特,段偏移量中包含的信息是在一个分片序列中如何让将各分片重新连接起来
TTL(Time to Offset):该字段用于表示IP数据包的生命周期,8比特
协议号(Protocol):协议字段,8比特,该字段用以指示在IP数据包中封装的哪一个协议,是TCP还是UDP,TCP的协议号为6 ,UDP的协议号为17
首部校验号(Header Checksum):该字段用于表示校验号,16比特,校验号是16位的错误检测字段。
源IP地址(Source IP Address):该字段用于表示数据包的源地址,32比特,这是一个网络地址,但指的是发送该数据包的设备网络地址。
目标IP地址(Source IP Address):该字段用于表示数据包的目的地址,32比特。这是一个网络地址,指的是发送该数据包的设备的网络地址。
可选项(Options):可选项字段根据实际情况可变长,可以和IP一起使用的选项有多个。
2.ICMP协议
ICMP(Internet Control Message Protocol)Internet控制报文协议。它是TCP/IP协议簇的一个子协议,用于在IP主机、路由器之间传递控制消息。控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息。这些控制消息虽然并不传输用户数据,但是对于用户数据的传递起着重要的作用。
2.1. ping基本使用详解
在网络中ping是一个十分强大的TCP/IP工具。它的作用主要为:
(1)用来检测网络的连通情况和分析网络速度;
(2)根据域名得到服务器IP;
(3)根据ping返回的TTL值来判断对方所使用的操作系统及数据包经过路由器数量。
我们通常会用它来直接ping IP地址,来测试网络的连通情况。
以下是请求超时的应答
使用参数改变ping包的大小
3.ARP协议
3.1ARP协议的概述:
地址解析协议,即ARP(Address Resolution Protocol),是根据IP地址获取物理地址的一个TCP/IP协议。主机发送信息时将包含目标IP地址的ARP请求广播到局域网络上的所有主机,并接收返回消息,以此确定目标的物理地址;收到返回消息后将该IP地址和物理地址存入本机ARP缓存中并保留一定时间,下次请求时直接查询ARP缓存以节约资源。地址解析协议是建立在网络中各个主机互相信任的基础上的。
3.2 ARP原理演示:
如图下显示,这是一个对等网的环境,PC1和PC2第一次通信,在通信双方的ARP缓存表中都不会有批次的IP-MAC地址的映射
具体实验步骤如下:
1.用arp-a命令查看PC1和PC2的ARP缓存表
C:\>arp -a
未找到ARP项目
2.在pc1上ping PC2的IP地址,之后用“arp -a” 查看arp缓存信息,如下所示
C:\>arp -a
接口:10.0.0.7 --- 0x2
Internet地址 物理地址 类型
10.0.0.6 00-lf-c6-44-11-11 动态
在PC1的ARP缓存表中显示了PC2的IP-MAC地址的对应关系,这是由于在ping命令发送数据之前,PC1先通过ARP请求获得了PC2的MAC地址
3.2 ARP欺骗的原理
1.攻击主机制造假的arp应答,并发送给局域网中除被攻击之外的所有主机。arp应答中包含被 攻击主机的IP地址和虚假的MAC地址。
2.攻击主机制造假的arp应答,并发送给被攻击的主机,arp应答中包含除被攻击攻击主机之外的所有主机的IP地址和虚假的MAC地址。
3.只要执行上诉arp攻击行为中的一种就可以实现被攻击主机和其他主机无法通信.