网络层协议介绍以及ARP在Windows中相关命令
1、网络层
1.1 含义
路由器工作的地方
1.2 功能
(1)定义了基于IP协议的逻辑地址
(2)连接不同的媒介类型
(3)选择数据通过网络的最佳路径
2、IP数据包
2.1 IP数据包格式

2.2 IP字段
版本(Version):该字段包含的是IP 的版本号,4bit。目前IP 的版本为4(即IPv4)。
首部长度(Header Length):该字段用于表示IP数据包头长度,4bit。IP数据包头最短为20字节,但是其长度是可变的,具体长度取决于可选项字段的长度。
优先级与服务类型(Priority & Type of Service):该字段用于表示数据包的优先级和服务类型,8bit。通过在数据包中划分一定的优先级,用于实现Qos(服务质量)的要求。
总长度(Total Length):该字段用以指示整个IP数据包的长度,16bit。最长为65535字节,包括包头和数据。
标识符(Identification):该字段用于表示IP数据包的标识符,16bit。当IP对上层数据进行分片时,它将给所有的分片分配同一组编号,然后将这些编号放入标识符字段中,保证分片不会被错误地重组。
标志(Flags):标志字段,3bit。对当前的包不能进行分片(当该包从一个以太网发送到另一个以太网时),或当一个包被分片后用以指示在一系列的分片中,最后一个分片是否已发出。
段偏移量(Fragment Offset):该字段用于表示段偏移量,13bit。段偏移量中包含的信息是指在一个分片序列中如何将各分片重新连接起来。
TTL(Time to Live):该字段用于表示IP数据包的生命周期,8bit。一个数据包每经过一个路由器,TTL将减去1。当TTL的值为0时,该数据包将被丢弃。可以防止一个数据包在网络中无限循环地转发下去。
协议号(Protocol):协议字段,8bit。该字段用以指示在IP数据包中封装的是哪一个协议,是TCP还是UDP。
TCP的协议号为6
UDP的协议号为17
首部校验和(Header Checksum):该字段用于表示校验和,16bit。接收方和网关用来校验数据有没有被改动过。
源IP地址(Source IP Address):该字段用于表示数据包的源地址,32bit。
目标IP地址(Destination IP Address):该字段用于表示数据包的目的地址,32bit。
可选项(Options):可选项字段根据实际情况可变长,可以和IP一起使用的选项有多个。例如,可以输入创建该数据包的时间等。在可选须之后,就是上层数据。
3、ICMP协议(协议号为1)
3.1 含义及功能
3.1.1 含义
Internet控制报文协议
3.1.2 功能
(1)ICMP是一个"错误侦测与回馈机制"
(2)通过IP数据包封装的
(3)用来发送错误和控制信息
3.1.3 图解

3.2 ICMP协议的封装
ICMP协议属于网络层协议
ICMP的数据的封装过程

注:帧尾部是用来校验数据的
4、Ping命令
4.1 ping命令的基本格式为: 
4.2 Windows系统中ping命令常用参数:
| 参数 | 作用 |
|---|---|
| -t | 参数会一直不停的执行ping |
| -a | 参数可以显示主机名称 |
| -l | 参数可以设定ping包的大小 |
| -n | 指定发送包的个数 |
| -S | 指定源IP去ping |
*补充:
在Linux系统下的Ping命令参数(ping用来检测网络)
| 参数 | 作用 |
|---|---|
| -s | 参数可以设定ping包的大小 |
| -c | 指定发送包的个数 |
| -I | 指定源IP去ping |
4.3 跟踪路由路径命令:
WIN: tracert IP/域名
Linux: Traceroute IP/域名(跟踪路由)
5、ARP协议
5.1 广播和广播域
广播:将广播地址作为目的地址的数据帧
广播域:网络中能接收到同一个广播的所有结点的集合
广播地址为FF-FF-FF-FF-FF-FF

注:如图一A,B,C在同一个广播域内;
图二A,B在同一个广播域内,C在另一个广播域内
5.2 ARP协议概述
ARP(Address Resolution Protocol,地址解析协议)的基本功能是负责将一个已知的IP地址解析成MAC地址
5.3 ARP工作原理
1、PC1想发送数据给PC2,会先检查自己的ARP缓存表是否有PC2的MAC地址。
2、PC1如果发现要查找的MAC地址不在表中,就会发送一个ARP请求广播,用于发现目的(PC2) MAC地址。
ARP请求消息中包括PC1的IP地址和MAC地址以及PC2的IP地址和MAC地址(此时为广播MAC地址FF-FF-FF-FF-FF-FF).
3、交换机收到PC1的广播后做泛洪处理,除主机1外所有主机收到ARP请求消息,PC2以单播方式发送ARP应答,并在自己的ARP表中缓存PC1的IP地址和MAC地址的对应关系,而其他主机则丢弃这个ARP请求消息。
4、PC1在自己的ARP表中添加PC2的IP地址和MAC地址的对应关系,以单播方式与PC2通信。
PC1的地址是原MAC地址
传到PC2时原MAC地址和目的MAC地址发生转变
原MAC地址现在是PC2的MAC地址
交换机只干广播和转发的作用

5.4 Windows系统中的ARP命令
| 命令 | 功能 |
|---|---|
| arp -a | 查看ARP缓存表 |
| arp -d [IP] | 清理ARP缓存 |
| arp -s IP MAC | ARP 静态绑定 |
| netsh interface ipv4 show neighbors或者netsh i i show in | 查看网卡接口序号/Idx |
| netsh interface ipv4 set neighbors<接口序号> | 静态绑定 |
| netsh -c i i delete neighbors ’ Idx" | 解除静态绑定 |
补充:动态学习到的ARP的老化时间是120秒;静态绑定的ARP条目需要计算机关机或重启后才会消失。
5.5 ARP攻击
5.5.1 目的
使网络无法正常访问。
5.5.2 分类:
(1)直接攻击主机
这里PC4要让PC1网络无法正常通信,那么PC4就会制造假的ARP应答,发送给PC1。在这个ARP应答中包含了PC2、PC3、PC4和网关的IP地址以及虚假的MAC地址。
(2)攻击网关
这次ARP攻击不直接攻击PC1,这次攻击PC2、PC3、PC4和网关,将制造的虚假ARP应答发给除PC1以外的主机。这个ARP应答中包括被攻击主机的IP地址和虚假的MAC地址。
5.5.3 图示

5.6 ARP欺骗
5.6.1 含义
ARP欺骗不像ARP攻击,使主机无法与网络正常通信,而是冒充网关或主机,骗取流量,侵犯他人隐私或机密。
5.6.2 分类
(1)ARP欺骗网关
这里PC2想获取PC1的数据:首先PC2发送ARP应答(包括网关的IP地址和PC2的MAC地址)给PC1,并且发送ARP应答(包含PC1的IP地址和PC2的MAC地址)给网关,等PC1和网关收到ARP应答更新ARP表或,这样就同时欺骗了PC1和网关,PC1想访问Internet,就要先发给PC2,由PC2发给网关,访问Internet,返回数据也要从网关到PC2之后才能到PC1。
(2)ARP欺骗主机
PC3发送ARP应答(包括PC2的IP 地址和PC3的MAC地址)给PC1,并发送ARP应答(包括PC1的IP地址和PC3的MAC地址)给PC2。当局域网中的PC2和PC1收到ARP应答后,更新ARP表,PC1和PC2的流量都需要经过PC3了。
5.6.3 图示

本文介绍了网络层的功能与IP数据包的格式,详细解释了ICMP、ARP协议的工作原理及其在Windows系统中的应用命令,包括ping、tracert及ARP相关命令。

2980

被折叠的 条评论
为什么被折叠?



