HCIP—MGRE环境下的ospf实验
我们首先搭建出如图所示的拓扑图
第一步依然还是配置IP,由于题目没有额外要求,因此为了方便起见这里采用一种简便的分法
例如R1和R6之间是16.0.0.0/24网段,R2和R6之间是26.0.0.0/24网段这样,其他的以此类推
R1到R5的环回分别是192.168.1.0/24,192.168.2.0/24……
然后第二个要求中的MGRE结构和星型拓扑结构各需要一个私网网段
所以就给MGRE结构分配192.168.6.0/24,星型拓扑结构分配192.168.7.0/24
然后我们按照划分好的网段给各个路由器先分配IP地址,下面是分配IP地址的命令:
[r1-GigabitEthernet0/0/0]ip address 16.0.0.1 24
所有IP地址分配完成
然后做MGRE环境的前提条件是公网部分能通,因此我们需要在R1-R5路由器上写一条缺省指向ISP设备(R6)
下面是写缺省路由的命令:
[r1]ip route-static 0.0.0.0 0 16.0.0.2
这时候整个公网部分就可以通了,我们就可以开始完成第二个要求
首先我们搭建R1/R2/R3的星型拓扑结构,以R1为中心站点
我们在R1上创建一个tunnel接口,然后按照192.168.7.0/24网段分配IP地址
然后我们指定为MGRE,源IP写出接口IP地址,然后创建一个nhrp域,并且因为R1是中心站点所以直接开启伪广播
具体配置如下:
[r1]int Tunnel 0/0/0
[r1-Tunnel0/0/0]ip address 192.168.7.1 24
[r1-Tunnel0/0/0]tunnel-protocol gre p2mp
[r1-Tunnel0/0/0]source 16.0.0.1
[r1-Tunnel0/0/0]nhrp network-id 100
[r1-Tunnel0/0/0]nhrp entry multicast dynamic
这样我们在中心站点的配置就算完成了,然后是分支站点的配置
在分支站点中,源IP是可以变的因此直接写出接口,然后加入中心站点(R1)创建的nhrp域,并且找R1注册即可
R2配置如下:
[r2]int Tunnel 0/0/0
[r2-Tunnel0/0/0]ip add 192.168.7.2 24
[r2-Tunnel0/0/0]tunnel-protocol gre p2mp
[r2-Tunnel0/0/0]source GigabitEthernet 0/0/0
[r2-Tunnel0/0/0]nhrp network-id 100
[r2-Tunnel0/0/0]nhrp entry 192.168.7.1 16.0.0.1 register
R3的配置与R2类似
然后我们去R1上检查nhrp域,可以看到R2和R3已经上报了:
这样,R1/R2/R3的星型拓扑结构就搭建完成了,然后我们开始搭建上面的全连MGRE环境
我们在R1上再创建一个tunnel接口,一样的根据192.168.6.0/24分配IP地址,由于全连MGRE环境中,所有设备都既可以作为中心也可以作为分支,所以源IP不能变,一定要写,R1具体配置如下:
[r1]int Tunnel 0/0/1
[r1-Tunnel0/0/1]ip add 192.168.6.1 24
[r1-Tunnel0/0/1]tunnel-protocol gre p2mp
[r1-Tunnel0/0/1]source 16.0.1.1
[r1-Tunnel0/0/1]nhrp network-id 101
[r1-Tunnel0/0/1]nhrp entry multicast dynamic
然后R4和R5上也都先按照中心站点的要求配置完成,与R1类似
之后R1/R4/R5任意一台设备都要找另外两台设备注册,例如在R1上:
[r1-Tunnel0/0/1]nhrp entry 192.168.6.2 46.0.0.1 register
[r1-Tunnel0/0/1]nhrp entry 192.168.6.3 56.0.0.1 register
R4和R5上与R1类似,都找其他两台设备汇报
汇报完成之后R1/R4/R5之间的全连MGRE环境也就搭建完成了
搭建完所有MGRE环境之后我们就可以尝试开启ospf协议了,例如在R1上:
[r1]ospf 1 router-id 1.1.1.1
[r1-ospf-1]area 0
[r1-ospf-1-area-0.0.0.0]network 192.168.1.0 0.0.0.255
[r1-ospf-1-area-0.0.0.0]network 192.168.6.0 0.0.0.255
[r1-ospf-1-area-0.0.0.0]network 192.168.7.0 0.0.0.255
R2-R5路由器上配置类似,启动ospf进程之后将所有直连的私有网段宣告
但是这里就会出现一些问题,由于ospf默认的接口网络类型是p2p类型,而在这种工作方式下只能选择一个设备作为自己的邻居,但是R1上下两个MGRE网络,只选择一个邻居显然是做不通的,所以我们需要修改接口网络类型
在下面的星型拓扑结构中,如果修改接口网络类型为broadcast会出现DR和BDR不匹配的问题,因此建议修改为p2mp
补充:虽然p2mp和broadcast网络类型都可以建立多个邻居关系但是broadcast需要进行DR和BDR的选举,p2mp不需要
在R1上进行如下配置:
[r1-Tunnel0/0/0]ospf network-type p2mp
同理,在R2和R3设备上也需要修改接口网络类型为p2mp才能正常建邻
这样一来下面的星型拓扑结构就解决了,然后我们来解决上面的全连MGRE环境
在全连MGRE环境中,彼此之间都可以进行沟通交流所以我们直接修改接口网络类型为broadcast并不会出现DR和BDR认知不一致的情况,因此我们可以直接三台设备的接口网络类型修改为broadcast
等待邻居关系建立为full状态后,我们查看R1的路由表,可以看到所有私有网段的路由信息都获取到了
其他设备上也同样都获取到了私有网段的路由信息,该实验完成