IP协议实验
一、转发IP分组的过程
实验模型:
从PC1到PC2的过程中,那些会发生改变?
1.IP数据不会发生改变。(TTL除外)
2.数据链路层的帧会发生变化。源、目的MAC地址会变,数据帧的格式也可能会改变。
1.产生数据
仿真模式下,PC1 ping PC2
PC1发出的原始数据:
PC1发出的数据与PC2收到的数据对比:
IP层的数据没有发生变化,除了TTL(经过两个路由器,所以减2)。
数据链路层的数据发生了变化,源MAC和目的MAC都变了。
2.PC1到R1
但在PC1到R1的过程中,源MAC始终为PC1,目的MAC始终为R1的f1/0接口(也就是PC1的网关)。
当数据帧经过路由器后,源和目的MAC地址将会发生改变,但IP层的数据仍然不会变。
3.R2到PC2
R2到PC2时,路由器对MAC帧重新封装,MAC帧中的目的MAC为PC2的MAC地址(PC2的地址可从ARP缓存中查到),源MAC为封装点的MAC(也就是R2的f1/0接口)。
同样的,数据帧在局域网中传输时也源和目的MAC也不会发生改变。(如果划分了VLAN,帧的格式可能会发生改变)
目的MAC始终为PC2,源MAC始终为R2的f1/0接口。
二、路由表的建立(RIP、OSPF)
实验模型:
1、查看路由器的路由表
在全局模式下,使用show ip route
命令查看路由表
路由表中各项的含义:以R1为例
从路由表中可以看出,R1连接有两个直连网络,192.168.1.0/24和192.168.3.0/24,分别对应接口f1/0和se2/0。
R1要到达192.168.2/24这个网络,则需要通过下一跳(192.168.3.2也就是R2的se2/0接口)才能到达。
2、阻塞R1的se2/0接口,查看路由表的变化
进入se2/0接口,使用shutdown
命令关闭该端口。
关闭端口后查看路由表:
使用no shutdown
命令打开接口:
重新打开端口后的路由表:
3、关闭接口后,在仿真模式下打开端口,查看路由表建立的过程
打开接口后,路由器产生了RIPv2的数据,如下图。
其中IP数据包中的目的IP为224.0.0.9,这是一个组播地址,由网络中开启RIP的路由器组成。
查看R1产生的数据:
se2/0接口打开后,该端口上发送应该RIP请求报文,要求其他路由器发送完整路由表。
R1上产生的应答:
R2产生的三个数据也与R1类似。
查看路由表的建立过程
观察RIP数据包发送过程中R1路由表的变化情况:
R2的路由表建立过程与R1类似:
观察RIP路由表的变化
步骤:
1、仿真模式下,关闭R2的f1/0接口。
2、端口关闭后,R2会产生一个RIP报文,告知f1/0接口连接的网络不可达。
3、R1收到RIP报文后,进行跟新自己的路由表,将那个网络标记为不可达。
4、观察R2路由表跟新前后路由表的变化。
OSPF协议
问题:
1、OSPF类型4(更新)为什么不传给主机方向?
答:洪泛法,只和相邻的路由器更新。
步骤:
1、查看R1的路由表。然后关闭R2的fa0/0接口,查看R1路由表变化。
2、重新打开fa/0接口,查看R1路由表的变化。
端口关闭或打开时,R2都会立即发送应该OSPF包(洪泛法),以告知全网路由状态发生了变化。