目录
一、网络层的功能
二、IP数据包的格式:
三、ICMP协议
(一)ICMP的主要功能
(二)CIMP的基本使用
1.ping命令的返回信息
2.Windows系统中ping命令常用选项:
四、ARP协议
(一)、ARP协议概述
(二)、ARP的工作原理:
五、ARP相关命令
(一)、Windows系统中的ARP命令
(二)、华为系统中的ARP命令:
六、ARP攻击原理与欺骗原理
(一)、ARP攻击原理:
?(二)、ARP欺骗原理:
总结?
一、网络层的功能
1、定义了基于IP 协议的逻辑地址
2、连接不同的媒介类型
3、选择数据通过网络的最佳路径(这也是路由器的工作内容)
?
二、IP数据包的格式:
协议字段
IP数据包格式(分为20字节的固定部分,表示每个IP数据包必须包含的部分,和40字节的可变长部分
版本号(4bit)指IP协议版本。并且通信双方使用的版本比必须一致,目前我们使用的是IPv4
表示位为0100
首部长度(4)IP数据包的包头长度
优先级与服务类型:(8)该字段用于表示数据包的优先级和服务类型。通过在数据包中划分一定的优先级,用于实现QoS(服务质量)的要求
总长度(16)IP数据包的总长度,最长为65535字节,包括包头和数据
标识符(16)该字段用于表示IP数据包的标识符。当IP对上层数据进行分片时,它将给所有的分片一组编号,然后将这些标号放入标识字段中,保证分片不会被错误地重组。标识符字段用于标识一个数据包,以便接收节点可以重组被分片的数据包
标志(3)和标志符一起传递,指示不可以被分片或者最后一个分片是否发出
段偏移量(13)在一个分片序列中如何将各分片连接起来,按什么顺序连接起来
TTL生命周期(8)可以防止一个数据包在网络中无限循环的转发下去,每经过一个路由器-1,当TTL的值为0时,该数据包将被丢弃
协议号(8)封装的上层那个协议,ICMP:1 ?TCP:6UDP ??17
首部校验和 (16)这个字段只检验数据的首部,不包括数据部分。这是因为数据包没经过一次路由器,都要重新计算一下啊首部校验和(因为,一些字段如生存时间标志,片遍移等可能发生变化
源地址(32)源 IP地址,表示发送端的IP地址
目标地址(32)目标地址,表示接受端的ip地址
可选项:选项字段根据实际情况可变长可以和IP一起使用有多个
例如可以输入创建该数据包的时间等。在可选项之后 就是上层根据实际情况可变长,例如创建时间等
三、ICMP协议
(一)ICMP的主要功能
1、ICMP是一个“错误侦测与回馈机制”
2、通过IP数据包封装的(要封 装网络层 的IP报头再交给数据层)
3、用来发送错误和控制信息
(二)CIMP的基本使用
在网络中,ICMP的使用是靠各种可命令来实现的下面以ping命令为例介绍命令的使用以及返回的信息。
Ping的命令的基本格式为
C:\>ping[-t][-l ?字节数][-a][-i]IP_Address|target_name
其中[? ?]中的参数为可选参数
1.ping命令的返回信息
?连通的应答
源主机发送4个32字节没有丢失。
可以根据时间来判断联机速度,数据值越低速度越快
不能建立的应答
上面显示:无法访问目标主机、
没有正确配置网关参数
应答为未知主机名
说明DNS无法进行解析
连接超时的应答
说明在规定的时间内没有收到放回的信息
ping不通的几种情况 1、当主机有一个默认网关时,如果他ping其他网段的地址,到不了的话,显示的是request timecut(此时他把ICMP包发给关,至于后面的事他就不管,如果没有包回应,就显示request timeout) 2、当一个主机没有默认关时,或者院置了网关但是和网关不通时,如果他ping其他网段的地址,显示的是Destnation host unreachable(此时他发送arp请求包请求网关的mac地址) 3、当一个路由器ping他路由表中没有的地址时,显示的是request timeout(此时不发任何包) 4、当路由器ping一个路由表中存在地址时,如果没有回应,则显示的也是 reuqest timeout(此时发送arp请求包,请求目标ip的mac地址〉
2.Windows系统中ping命令常用选项:
-t 参数会一直不停的执行ping -a 参数可以显示主机名称 -l (小写的L) 参数可以设定ping包的大小 ###在Linux系统下为:-s -n 指定发送包的个数 -c -S (大写的S) 指定源IP去ping -I(大写的i) 不加 -t 的话,在windoes系统中默认ping 4个包。
ARP协议是地址解析协议(Address Resolution Protocol)是通过解析IP地址得到MAC地址的,是—一个在网络协议包中极其重要的网络传输协议, 它与网卡有着极其密切的关系,在mCP/TP分层结构中,把ARp划分为网络层,为什么呢,因为在网络层看来,源主机与目标主机是通过IP地址进行识别的,而所有的数据传输又依赖网卡底层硬件,即链路层, 那么就需要将这些IP地址转换为链路层可以识别的东西, 在所有的链路中都有着自己的一套寻址机制,如在以太网中使用MAC地址进行寻址,以标识不同的主机,那么就需要有
四、ARP协议
(一)、ARP协议概述
?1、局域网中主机的通信
?? IP地址与MAC地址
2、什么是ARP协议
ARP协议是地址解析协议(Address Resolution Protocol)是通过解析IP地址得到MAC地址的,是—一个在网络协议包中极其重要的网络传输协议, 它与网卡有着极其密切的关系,在mCP/TP分层结构中,把ARp划分为网络层,为什么呢,因为在网络层看来,源主机与目标主机是通过IP地址进行识别的,而所有的数据传输又依赖网卡底层硬件,即链路层, 那么就需要将这些IP地址转换为链路层可以识别的东西, 在所有的链路中都有着自己的一套寻址机制,如在以太网中使用MAC地址进行寻址,以标识不同的主机,那么就需要有
(二)、ARP的工作原理:
1、PC1想发送数据给PC2,会先检查自己的ARP缓存表。
2、如果发现要查找的MAC地址不在表中,就会发送一个ARP请求广播,用于发现目的 MAC地址。
ARP请求消息中包括PC1的IP地址和MAC地址以及PC2的IP地址和MAC地址(此时为广播MAC地址FF-FF-FF-FF-FF-FF).
3、交换机收到广播后做泛洪处理,除主机1外所有主机收到ARP请求消息,PC2以单播方式发送ARP应答,并在自己的ARP表中缓存PC1的IP地址和MAC地址的对应关系,而其他主机则丢弃这个ARP请求消息。
4、PC1在自己的ARP表中添加PC2的IP地址和MAC地址的对应关系,以单播方式与PC2通信 ?
?解析过程涉及到的表有: ARP缓存表、MAC缓存表
解析过程涉及到的表有: ARP缓存表、MAC缓存表
五、ARP相关命令
(一)、Windows系统中的ARP命令
1、arp-a:查看ARP缓存表
2、arp-d [IP]:清除ARP缓存
3、arp-s IP MAC :ARP静态绑定
如提示ARP项添加失败,解决方案:
a、用管理员模式:电脑左下角“开始”按钮右键,点击“Windows PowerShell(管理员)(A)”或者进入C盘windows\system32文件夹找到cmd.exe,右键“以管理员身份运行”再执行arp-s命令
b、(1)netsh interface ipv4 show neighbors 或者netsh i i show in <查看网卡接口序号/Idx>
? (2) netsh interface ipv4 set neighbors <接口序号>
解除静态绑定
netsh -c i i delete neighborsIdx
动态学习到的ARP的老化时间是120S,并且静态绑定的ARP条目在计算机关机或重启后会消失。
(二)、华为系统中的ARP命令:
[Huawei] dis mac-address ###查看mac地址信息
[Huawei] arp static ###绑定ARP
[Huawei] undo arp static ###解除绑定
reset arp all ###清除mac地址表
六、ARP攻击原理与欺骗原理
(一)、ARP攻击原理:
ARP攻击主要目的是使网络无法正常通信
PC2希望PC1被攻击主机无法访问互联网,需要向网关发送? ? 或向? 被PC2发送虚假的arp应答。当网关接受到虚假的ARP应答更新ARP条目后网关再发送给PC1时,就会发送到虚假的MAC地址,从而导致通信故障的发生。
?(二)、ARP欺骗原理:
ARP通过??冒充??网关或其他主机使到达?网关或者主机 的流量通过攻击主机进行转发。通过转发流量可以对流量进行控制和查看,从而可以控制流量或得到机密信息。
总结?
IP数据包头最短为20字节,但其长度是可变的,具体长度取决于可选项字段的长度。
在网络中,ICMP协议的使用的是靠各种命令来实现的,ping命令。
ARP协议的基本功能是负责将一个已知的IP地址解析成MAC地址,以便在交换机上通过MAC地址进行通信
ARP攻击和欺骗都是通过伪造ARP应答来实现的
|