软件大小:
软件语言:
浏览人数:597人
软件类型:
授权方式:
用户评分:
更新时间:2022-12-04
软件分类:Mac系统
运行环境:
学习目标
IP包格式
ICMP协议介绍
ARP攻击原理
1.网络层功能
定义基于IP协议的逻辑地址
连接不同的媒体类型
选择数据通过网络的最佳路径
2. ICMP协议( )
ICMP协议是一种“错误检测和反馈机制”
封装在 IP 数据包中
用于发送错误和控制消息
ICMP协议属于网络层协议
3.ping命令格式
C:\ping [-t][-][-a][-i]IP|
3.1ping命令参数
① -t参数会一直执行ping
ping -t
在调试失败或需要连续连接测试时使用
CRTL+C 可以中断命令
② -a参数可以显示主机名
ping -a IP
③ -l参数可以指定ping包的大小
ping ip -l 值
以字节为单位
可用于简单测试通信质量
4.ARP协议概述
ARP(Address Resolution Protocol),地址解析协议
ARP协议的基本功能即是负责将一个已知的IP地址解析成MAC地址
,以便在交换机上通过MAC地址进行通信
4.1 ARP工作原理
1)主机PC1要向主机PC2发送数据,它检查自己的ARP缓存表。ARP缓存表是保存在主机内存中的IP地址和MAC地址的一一对应表。在操作系统中,可以使用arp -a 来显示ARP缓存表。
如果要查找的MAC地址不在表中,ARP就发送广播来发现目的MAC地址。
查看PC1的ARP缓存表,没有找到PC2的MAC地址。此时PC1会发起ARP请求过程(发送ARP请求广播)来发现目标的MAC地址。
2)主机PC1发送ARP请求信息,ARP请求是目的地址为MAC广播地址(FF-FF-FF-FF-FF-FF)的MAC地址广播帧,从而保证所有的设备都能够收到该请求。在ARP请求信息中包好PC1的IP地址和MAC地址。
3)交换机收到广播地址后,发现为MAC地址广播,所以将数据帧从即除了接收口之外的所有接口转发出去。主机接收到数据帧后,进行IP地址的比较,如果目标IP地址与自己的IP地址不同,则其会丢弃这个数据包,而只有PC2这台主机会在自己的ARP表中缓存PC1的IP地址和MAC地址的对应关系,同时发送一个ARP应答,来告诉PC1自己的MAC地址(这个数据帧是单播)。
4)PC1在接收到这个回应的数据帧后,在自己的ARP表中添加PC2的IP地址和MAC地址的对应关系。在这个过程中,Switch交换机已经学习到了PC1和PC2的MAC地址,之后传输数据时PC1和PC2之间使用单播方式。
需要注意:ARP请求为广播,而ARP应答为单播。
4.2 ARP相关命令 4.2.1系统ARP命令
arp -a:查看ARP缓存表
arp -d:清除ARP缓存
ARP绑定
4.2.2 Cisco交换机ARP命令
Switch#show arp #查看arp
Switch#clear arp-cache #清除arp
Switch(config)#arp 192.168.2.1 0009.7C90.05AD arpa f0/1 #绑定arp,模拟器不支持
4.2.3 Cisco路由器ARP命令
Router#show arp #查看arp缓存表
Router#clear arp-cache #清除arp缓存表(模拟器不支持,模拟器要清除,可以断电)
Router(config)#arp 192.168.1.1 00E0.B093.2B77 arpa 绑定arp缓存表(模拟器不支持,建议用真机完成)
4.2.3.1 路由器的基本操作
缺省情况:路由器所有接口都down。
()# f0/0 #进入界面f0/0
(-if)#no #激活并打开界面
(-if)#ip 192.168.1.254 255.255.255.0 # 配置路由器接口地址
#ping 192.168.1.1 #测试与主机PC0的连通性
键入要中止。
5、100字节ICMP Echos到192.168.1.1,是2:
!!!
速率为 100 (5/5),往返最小/平均/最大 = 0/0/1 毫秒
评论:!代表畅通无阻。表示丢包
4.3 ARP攻击和ARP欺骗的原理
1.ARP攻击的原理
一般情况下,ARP攻击的主要目的是使网络无法正常通信,它主要包括以下两种行为。
攻击主机制造假的ARP应答,并发送给局域网中除被攻击主机之外的所有主机。ARP应答中包含被攻击主机的IP地址和虚假的MAC地址。
攻击主机制造假的ARP应答,并发送给被攻击主机。ARP应答中包含除被攻击主机之外的所有主机的IP地址和虚假的MAC地址。
2.ARP欺骗的原理
一般情况下,ARP欺骗并不会使网络无法正常通信,而是通过冒充网关或其他主机使到达网关或主机的流量通过攻击主机进行转发。攻击主机通过转发流量可以对流量进行控制和查看,从而控制流量或得到机密信息。
4.3.1 ARP故障处理
Benet公司突然无法正常上网
发现主机ARP缓存表中网关的MAC地址不正确
ARP 故障排除
主机绑定ARP
netsh interface ipv4 show neighbors
netsh interface ipv4 set neighbors 11 10.0.0.178 00-1a-e2-df-07-41
网关路由器绑定ARP
Router(config)#arp 10.0.0.95 0013.240a.b219 arpa f0/0
交换机绑定ARP
Switch(config)#arp 10.0.0.12 90fb.a695.4445 arpa f0/2
Switch(config)#arp 10.0.0.178 001a.e2df.0741 arpa f0/1
Switch(config)#arp 10.0.0.95 0013.240a.b219 arpa f0/3
ARP 故障排除 3-3
使用ARP防火墙,自动抵御ARP欺骗个攻击
在主机B上开启ARP防火墙
在主机A上开启长角牛网络监控机,模拟ARP病毒发作
查看ARP防火墙统计数据的变化
在主机B上测试与网关的连通性
查找 ARP 攻击计算机
MAC地址是真实的计算机地址
查看网络信息记录表,快速定位电脑
MAC地址是假地址
#查看交换机的MAC地址表,确定这个MAC所属的端口
#show mac -table 001f.caff.1003
苹果桌
Vlan Mac 类型端口
1 001f.caff.1003 Fa0/1
Mac 总数:1
本章实验(见附图)
实验一:解析ARP解析过程
实验二:ping 命令的作用
实验三:ARP协议应用案例
5.IP包格式
TCP/IP 协议定义了在 上传输的数据包,称为 IP 数据报。IP 数据报包含地址、路由信息和将数据包从源发送到目的地所需的其他包头信息。这是一个独立于硬件的虚拟包,由两部分组成,头部和数据。
IP 数据报(IP)报头的第一部分是固定长度,共 20 个字节,这是所有 IP 数据报所必需的。头部的固定部分之后是可变长度的可选字段。报头中的源地址和目的地址都是IP协议地址。
5.1 结构介绍
() 指定 IP 协议的版本,允许从一个协议版本更改为另一个。
() 描述了包头的长度。
服务类型(Type of: TOS)用于表示数据报所要求的服务类型或“质量”。处理数据报的路由器读取该字段系统查找软件mac地址,并在必要时提供优先服务。以前,该字段表示军事派遣或重大事件所需的优先级。根据工作组 (IETF) 最近的讨论,TOS 的定义现在已更改为需要减少延迟、减少货币支出、增加吞吐量或增加可靠性。
总长度(Total) 表示数据报的总长度,最大长度为65536字节。
() 提供用于连接单独的分段数据报的信息,以便目标站点可以将它们组装成一个完整的数据包。标志 有两个标志位。第一个标志指定不允许将数据包分段,因此必须在能够处理数据包当前大小的子网上传输。第二个标志指定数据报是分段数据包的结尾。
( ) 对于分片的数据报,该字段表示数据在数据包中的原始位置,重组时会用到该信息。
生存时间(Time-to-live) 这个时间是以秒为单位的,它是数据报可以存活的时间。如果在传输过程中超过了这个时间,则认为数据报丢失,或者陷入循环,并被丢弃。()标识数据报的协议类型,它允许非TCP/IP协议工作。
check() 提供错误检查值以确保分布式数据包的完整性。源/目标地址 这是数据报的源地址和该数据报的目标地址。() 该字段是可选的,它为记录提供了一个通过网络的路径或指定了一个路径(源路由)。
5.2 格式介绍
(1)版本占4位,指IP协议的版本。通信双方使用的IP协议版本必须相同。目前广泛使用的IP协议版本号是4(即IPv4)。关于IPv6,目前还处于草案阶段。
(2) 的长度占4位,可以表示的最大十进制值为15。请注意,该字段表示的数的单位是32位字(32位字为4 bytes long),因此,当IP头的长度为1111(即十进制的15)时,头的长度达到60个字节。当IP包头长度不是4字节的整数倍时,必须用最后一个填充字段填充。所以数据部分总是从4字节的整数倍开始,这样在实现IP协议时比较方便。将标头长度限制为 60 字节的缺点是有时可能不够用。但这样做是希望用户将开销降到最低。最常用的标头长度是 20 个字节(即
(3)区分服务占用8比特,用于获得更好的服务。该字段在旧标准中称为服务类型,但在实践中并未使用。1998 年,IETF 将该字段的名称更改为 DS( )。此字段仅在使用 时可用。
(4) 总长度总长度是指包头和数据之和的长度,单位是字节。总长度字段为16位,因此数据报的最大长度为216-1=65535字节。
IP层以下的各数据链路层都有自己的帧格式,包括帧格式中数据字段的最大长度,称为最大传输单元MTU(Unit)。当一个数据报被封装成链路层的帧时,数据报的总长度(即报头加上数据部分)不得超过下面数据链路层的MTU值。
(5)标识()占16位。IP软件在内存中维护一个计数器,每产生一个数据报,计数器就加1,并将这个值赋给标识字段。但是这个“标识”并不是序列号,因为IP是无连接服务,不存在按顺序接收数据报的问题。当一个数据报由于其长度超过网络 MTU 而必须分片时,这个标识符字段的值被复制到所有数据报的标识符字段中。同一标识字段的值使得每个分片的数据报最终能够正确地重新组装成原始数据报。
(6)标志(flag)占用3位,但目前只有2位有意义。
1.标志字段中的最低位标记为MF(More)。MF=1表示后面还有“还有碎片”的数据报。MF=0 表示这是几个数据报片段中的最后一个。
2、标志域中间的一位记录为DF(Don't)系统查找软件mac地址,意思是“不能分片”。仅当 DF=0 时才允许分片。
(7) 片偏移量占用13位。slice 表示:较长的数据包被分片后,某个slice在原数据包中的相对位置。也就是说,切片从哪里开始相对于用户数据字段的开始。slice 以8个字节为偏移单位。也就是说,每个分片的长度必须是8字节(64位)的整数倍。
(8)生存时间占8位。Time to Live字段常用的英文缩写是TTL(Time To Live),表示数据报在网络中的生存期。该字段由数据报的原始源设置。其目的是防止无法投递的数据报在互联网上无限循环,白白消耗网络资源。最初的设计是使用秒作为TTL的单位。每次通过路由器时,都会从数据报在路由器中消耗的时间中减去 TTL。如果数据报在路由器上花费的时间小于1秒,则TTL值减1。当TTL值为0时,数据报被丢弃。
(9) 协议占用8位,协议字段表示数据报携带的数据采用哪种协议,以便目的主机的IP层知道数据部分应该交给哪个处理进程。
(10) 第一个校验和占16位。该字段只检查数据报的报头,不检查数据部分。这是因为数据报每次通过路由器时,路由器都必须重新计算报头校验和(一些字段,如生存时间、标志、切片偏移量等可能会发生变化)。不检查部分数据可以减少计算量。
(11) 源地址占32位。
(12) 目的地址占32位。
# 5.3 变量部分
IP 报头的可变部分是一个可选字段。选项字段用于支持调试、测量和安全等措施系统查找软件mac地址,内容非常丰富。该字段的长度可变,从 1 个字节到 40 个字节,具体取决于所选项目。有些选项只需要1个字节,其中只包含1个字节的选项代码。但是仍然有一些选项需要多个字节。这些选项一个一个拼接,中间没有分隔符,最后填充全0的填充域,成为4字节的整数倍。
增加报头可变部分的目的是为了增加IP数据报的功能,但同时也使得IP数据报的报头长度可变。这增加了每个路由器处理数据报的开销。实际上,很少使用这些选项。新的IP版本IPv6使得IP数据报的报头长度固定。
目前,这些任选项定义如下:
(1)安全和处理限制(用于军事领域)
(2)记录路径(让每个路由器都记下它的IP地址)
(3)时间戳(让每个路由器都记下它的IP地址和时间)
(4)宽松的源站路由(为数据报指定一系列必须经过的IP地址)
(5)严格的源站路由(与宽松的源站路由类似,但是要求只能经过指定的
这些地址,不能经过其他的地址)
这些选项很少被使用,并非所有主机和路由器都支持这些选项。