详解数据包封装解封装过程

时间:2024-03-18 20:38:30

基本概念

IP地址:指互联网协议地址,用于在整个互联网中标识设备的存在位置(私有地址除外)。

MAC地址:为局域网地址,用于在一个局域网内确定主机的位置,这也说明了MAC只能在局部传递。

一:当互访者在同一个局域网内,即IP地址在同网段

实验拓扑:

详解数据包封装解封装过程

1、当PC3访问PC4时,由于PC3PC4处于相同网段,所以PC3会发送ARP广播报文,当LSW1收到广播报文时,会进行泛洪操作,ARP广播报文会从G0/0/2接口发出,PC4收到ARP广播报文时,发现34.1.1.4地址是我自己,此时PC4会回复一个ARP单播报文给PC3,里面携带自己的MAC地址。

详解数据包封装解封装过程

2、此时PC3封装的数据报文为:

源MAC:5489-98C0-2E61      目的MAC:5489-984F-45CD

源IP地址:34.1.1.3                  目的IP地址:34.1.1.4

详解数据包封装解封装过程

3、这样当数据发送到LSW1时,会根据源/目地址将数据发送给PC4

4、当PC4PC3回包时会将PC3的MAC地址封装为目的MAC地址,当数据到达LSW1时,交换机根据目的MAC将数据发送给PC3,此时的数据封装为:

源MAC:5489-984F-45CD     目的MAC:5489-98C0-2E61

源IP地址:34.1.1.4                 目的IP地址:34.1.1.3

 

详解数据包封装解封装过程

 

 





二:当互访者在不同局域网内,即IP地址在不同网段

实验拓扑:

 

详解数据包封装解封装过程

 

1、当PC1发现一个数据包的目的IP地址和自己不在同一个网段时,此时PC1会将数据交给网关来处理,所以PC1要首先知道网关的MAC地址(IP地址PC1已经知道),将数据发往网关设备,此时PC1会发送ARP请求,用于获取网关的MAC地址。

详解数据包封装解封装过程

2、此时PC1已经有了源/目地址,可以进行封装数据

源MAC:5489-981D-0ADC       目的MAC:00e0-fc2b-4912

源IP地址:1.1.1.1                      目的IP地址:2.2.2.1

详解数据包封装解封装过程

3、当数据到AR1时,会对数据进行解封装,发现目的MAC是自己接口的地址,此时会转发该数据包(不是自己接口的MAC会将该数据丢弃),首先会查看目的IP地址,发现目的地址和自己的G0/0/1接口处于同网段,所以会在G0/0/0接口发送ARP广播报文,用于获取2.2.2.2对应的MAC地址。

详解数据包封装解封装过程

4、此时,AR1会重新将报文进行封装,源MAC为自己出接口的MAC地址,目的MAC地址为PC2,源/目IP地址不会改变。

源MAC:00e0-fc2b-4913       目的MAC:5489-9811-4145

源IP地址:1.1.1.1                   目的IP地址:2.2.2.1

详解数据包封装解封装过程

5、当PC2PC1回包时,封装过程和以上过程类似,此时PC2已经知道网关的MAC地址(AR1PC2发送数据的源MAC就是网关的MAC地址),当回数据时,由于PC1和自己不在同一网络内,此时会将数据交给网关处理,目的MAC封装网关的MAC地址(即接口G0/0/1MAC地址),目的IP地址为PC1地址。

此时数据封装:

源MAC:5489-9811-4145        目的MAC:00e0-fc2b-4913

源IP地址:2.2.2.1                     目的IP地址:1.1.1.1

详解数据包封装解封装过程

6、当数据到达AR1时,AR1对数据包进行解封装,发现目的MAC是自己接口的地址,此时会转发该数据包(不是自己接口的MAC会将该数据丢弃),首先会查看目的IP地址为1.1.1.1,目的地址和G0/0/0接口在同个网段,由刚才发送数据,此时AR1已经知道1.1.1.1MAC地址(发送给AR1的数据中源MAC就是1.1.1.1对应的MAC地址),这时候AR1会从新对数据进行封装,源MAC地址为能到达1.1.1.接口的MAC地址(即G0/0/0接口MAC地址)。

此时数据封装:

源MAC:00e0-fc2b-4912,目的MAC:5489-981D-0ADC

源IP地址:2.2.2.1,目的IP地址:1.1.1.1

 


 

总结:

  1. 当数据在单向传递时,源/目IP地址都不会发生改变,其实这也表明了IP地址(公网IP地址)的作用,用于在整个网络中标识设备的存在位置。
  2. 如果不同网段进行访问,每经过一个网络源/MAC地址会发生改变。

由此可推算出,当经过多个路由设备时,源/MAC地址在和源/目IP地址的变化。

详解数据包封装解封装过程

注释:用字母代替每个接口的NAC地址,讨论PC1PC2的单向访问。

1、在PC1上的数据封装为

MAC地址:x         目的MAC地址:a

IP地址:1.1.1.1     目的IP地址:2.2.2.1

2、在AR1上的数据封装:

MAC地址:b        目的MAC地址:c

IP地址:1.1.1.1    目的IP地址:2.2.2.1

3、在AR2上的数据封装:

MAC地址:d         目的MAC地址:e

IP地址:1.1.1.1     目的IP地址:2.2.2.1

4、在AR3上的数据封装:

MAC地址:f         目的MAC地址:g

IP地址:1.1.1.1     目的IP地址:2.2.2.1

5、在AR4上的数据封装:

MAC地址:h        目的MAC地址:y

IP地址:1.1.1.1    目的IP地址:2.2.2.1

此时,数据发到了PC2上,当PC2会数据时,封装过程为该