OSPFv2综合实验(华为设备)

实验拓扑:

在这里插入图片描述
网络节点配置基本信息已经配置,图上没有标出的网段统一用10.1.X.X/24的网段,统一配置内网RID地址为10.0.0.Y,例:R6的RID为10.0.0.6。

实验要求:

  1. 根据拓扑提示,对各路由启用OSPF路由协议并划分相应区域,并验证邻居关系以及数据库信息,从而保证内网全网互通。
  2. 该公司需要访问Internet,请根据情况配置NAT,达到全网互通(仅配置R6)。
  3. 新加入公司网络的Area 2 区域存在一定的接入安全隐患,要求虚链路进行认证。
  4. 由于Area 2 区域业务繁多,尽量减少R8上存在的路由条目。
  5. 由于R6属于公司较早采购核心设备,性能有所不足,请减少R6上的路由条目。
  6. 由于R3是与公司分部接入的边界路由(此处并未标出),承载过多的路由条目信息,为了提高R3的性能,请减少R3的路由条目。
  7. 正是由于R3的负载过重,因此将R7主机去往外网的数据流量都通过R4去往外网。

步骤一:

根据拓扑提示,对各路由启用OSPF路由协议并划分相应区域,并验证邻居关系以及数据库信息,从而保证内网全网互通。
在内部路由器上进行OSPF的配置:
R2上:
ospf 1 //ospf进程1
area 0.0.0.0 //进入区域0
network 10.1.1.2 0.0.0.0 //精确通告相应的网段进去ospf中,因为是反掩码所以为0.0.0.0,最后注意不需要通告外网的进入其中
network 10.1.2.2 0.0.0.0
R3上:
ospf 1
area 0.0.0.0
network 10.1.1.3 0.0.0.0
network 10.1.3.3 0.0.0.0
R4上:
ospf 1
area 0.0.0.0 //进入区域0通告相应的网段
network 10.1.2.4 0.0.0.0
area 0.0.0.1 //进入区域1通告相应的网段
network 10.1.4.4 0.0.0.0
network 10.1.5.4 0.0.0.0
R5上:
ospf 1
area 0.0.0.0
network 10.1.3.5 0.0.0.0
area 0.0.0.1
network 10.1.4.5 0.0.0.0
network 10.1.6.5 0.0.0.0
R6上:
area 0.0.0.1
network 10.1.5.6 0.0.0.0
network 10.1.7.6 0.0.0.0
network 172.16.0.0 0.0.255.255
R7上:
ospf 1
area 0.0.0.1
network 10.1.5.7 0.0.0.0
network 10.1.7.7 0.0.0.0
area 0.0.0.2
network 10.1.8.7 0.0.0.0
R8上:
ospf 1
area 0.0.0.2
network 10.1.8.8 0.0.0.0
network 192.168.1.1 0.0.0.0
network 192.168.2.1 0.0.0.0
network 192.168.3.1 0.0.0.0
配置完成后通过dis ospf peer查看ospf的邻居关系建立是否完成:
这里以R4的PPP链路为例子:
在这里插入图片描述

里面的信息为ospf进程1中自己的RID,接口的邻居的RID和地址(对方的物理接口),接口优先级,与邻居间的状态,这里没有DR和BDR是因为为点到点链路,不会进行DR和BDR的选举。
再以R3的以太网链路为例子:
在这里插入图片描述

这里我们就会看到选举出来的DR和BDR
现在我们在区域1的路由表中进行查看,观察能否学习到所有内部网网络的路由条:
[R6]dis ip routing-table protocol ospf //在路由表中提前ospf的路由条目
在这里插入图片描述
这个时候我们发现学习到了区域0和区域1的ospf路由条目,这是因为R7连接的两个区域为区域1和区域2,并没有区域0,所以它就不属于ABR,只有ABR才能将1类2类LSA转换为3类LSA发送到区域0然后通过区域0泛洪到其他区域,所以为了让R7成为ABR,所以在其中必须有属于区域0的接口,也就是需要进行虚链路连接(虚链路连接的虚接口属于区域0),所以这里我们需要在要打通区域的两个路由器R7和R5的被打通区域进程下中进行虚链路配置,选择R5和R7的原因是R5在区域0和区域1,R7在区域1和区域2,他们既在同一个区域,又在了两个不直接相连的区域,所以可以选择他们两个,这里也可以选择R4和R7。特别注意vlink技术不能依次跨越两个区域,只能在相邻区域做vlink。

在R5上:
ospf 1
area 0.0.0.1 //进入要透传的区域
vlink-peer 10.0.0.7 //配置对方的RID
在R7上:
ospf 1
area 0.0.0.1
vlink-peer 10.0.0.5
现在查看R6上是否能够学习到区域2的路由条目:
在这里插入图片描述
成功学习到了区域2的路由条目,我们查看OSPF的数据库:
在这里插入图片描述

可以发现的是区域2和区域1可以相互之间交流LSA,并且区域0和区域1仍然可以通过3类LSA交互LSA。
最后我们检查内网是否互通,使用R2pingR8进行检测:
在这里插入图片描述
成功,我们通过虚链路实现了内网的互联。

步骤二:

既然现在我们已经内网互通了,需要与外网进行相应的通信,就会在出口网关R2上最NAT,将内部的地址进行转换,这里采用的就是最简单的easy ip技术:
首先定义一个acl,匹配内部的所有条目:
acl number 2000 //定义一个基本ACL匹配源地址即可
rule 5 permit //匹配所有
然后在出接口上进行使用:
interface Serial4/0/0 //进入相应的接口
nat outbound 2000 //调用ACL进行easy ip地址转换
配置默认静态路由:
ip route-static 0.0.0.0 0.0.0.0 200.1.1.1 //下一跳指向R1,对内部的流量进行转发到外网
配置完这些以后,其实内部和外网还是无法进行通信的,因为内网根本没有外网的路由条目,这个时候一种比较笨方法就是在内部所有路由器配置一条默认路由,下一跳指向上一个路由的接口地址,最后与R2直连的路由器下一跳为与R2直连的接口地址。但是这种方式太繁琐了,我们其实只需要在R2上的OSPF进程里配置一条命令default-route-advertise便可以,使用这条命令后,R2会向OSPF区域里的所有路由器发送一条最终指向自己的默认路由,为什么说是最终呢?是因为这条默认路由的下一跳在改变,但是最后都会发送给R2接收。

我们以R7上查看为例子:
在这里插入图片描述
存在一条OSPF引进的外部默认路由(5类,管理距离为150,cost为默认的类型2,不叠加,默认cost一直为1)
命令:default-route-advertise type 1修改下放的ospf路由条目的类型,这里我们最好修改为1类地址,表示需要累加内部的路由cost值。

另外如果在default-route-advertise命令后加上一个always的关键字,意思就是说,无论R2上是否有一条指向外部的默认路由,都会向OSPF内部的区域发送一条最终指向自己的默认路由,但是万一哪一天R2与R1的线路坏了,默认路由也就消失了,但是OSPF内部的路由器都还存在这条默认路由,就会带来故障(如果不加入always,ospf区域内部的内部路由也会消失)所以最好就不加上always这个关键字。

最后我们进行相应的测试:

在R8上查看学习到的路由条目:
在这里插入图片描述
Cost有叠加,说明下放的是5类中的类型1的路由条目,然后我们用R4ping外网的回环口进行测试:成功访问外网:
在这里插入图片描述

步骤三:

在R5上:进入区域1:
vlink-peer 10.0.0.7 simple cipher 123 //使用明文传输,关键字cipher表示在本地存储的时候为密文,如果关键字为plain着表示存储的格式为cipher,这个时候配置完成一边,因为一边有认证,一边没有认证,OSPF邻居关系会断开,现在我们在R7上配置认证:
在R7上:进入区域1:
vlink-peer 10.0.0.5 simple cipher 123 //配置完成后,OSPF的邻居关系将重新建立完成
我们现在来看看虚链路有哪些认证的方式:
在这里插入图片描述
Simple:简单认证模式
md5:采用md5认证类型,缺省情况下密码密码类型为cipher,可以修改
hmac-md5:采用hmac-md5认证类型,缺省情况下密码密码类型为cipher,可以修改
hmac-sha256:采用hmac-sha256认证类型,缺省情况下密码密码类型为cipher,可以修改
authentication-null:不采用认证
keychain:采用keychai认证模式
虚链路配置很多,但是大多都是可选的,比如这么多认证的方式我们只能选择其中一个方式进行认证。

步骤四:

减少R8上的路由条目,需要首先分析可以采用哪些方式减少条目,然后根据R8所处的区域等找出最适合最简单,效果最佳的方式。我们可以采用ospf路由过滤,ospf路由汇总,进行特殊区域划分等操作,这里引区域2为边界区域,只有一个ABR,没有ASBR引入外部的路由,满足stub区域的条件,这里我们将其划分为完全末节区域即可:
相应配置,首先进入属于区域2的路由器中(我们是将区域2改变为完全末节区域),进入ospf进程的区域2,配置:stub no-summary即可
在R7上:
area 0.0.0.2 //进入区域2
stub no-summary //配置为完全末节区域,如果没有no-summary表示普通的末节区域,nsaa区域同理
在R8上:同理进行相应的配置
area 0.0.0.2
stub no-summary
现在查看R8上的路由表:只存在一条OSPF的默认路由了(ABR下放的3类LSA)
在这里插入图片描述
查看OSPF的数据库:display ospf lsdb
在这里插入图片描述
Sum-Net表示是三类LSA。

这时候我们再去ping外网检测是否达到了相应的目的:成功,表明我们使用减少的路由条目达到了同样的通信效果。
在这里插入图片描述

步骤五:

由于R6属于公司较早采购核心设备,性能有所不足,请减少R6上的路由条目。

首先我们观察R6是属于区域1,这个区域是被虚链路穿过的区域,不能配置成特殊区域,就还有两种方式可以选择,区域条目汇总和条目的过滤,这里有相应的规定:骨干区域的汇总条目将不允许出现在virtraul-link的传递区域中(原因在拓展处),所以我们选择将区域0的条目过滤,将区域2的条目进行汇总,这样一来的话,区域1中的条目就自然减少了,也就是R6上的条目减少了。

区域0条目的过滤:
为什么能够进行区域0条目的过滤,或者说我们可以过滤掉哪些不必要的区域0的条目呢,首先我们查看R6上的路由条目:
[R6]dis ip routing-table protocol ospf
在这里插入图片描述
属于区域0的有这几条,如果我们将其过滤掉,还是可以通过默认路由到达区域0,以达到减少路由条目的目的,过滤ospf路由条目是过滤3类的LSA, 我们只需要在直接与区域相连的ABR,也就是R4,R5的区域0上进行3类LSA的过滤(不用在R7上进行过滤,因为R4,R5上不发出3类LSA,其他路由器都无法获得其LSA,这是其对应条目(3类LSA)唯一的来源),首先在两台设备上配置ACL,匹配需要过滤的路由条目:
acl number 2000
rule 5 deny source 10.1.0.0 0.0.255.255 //匹配区域0中的路由条目,动作需要设置为deny才会生效
然后在区域0中进行运用
area 0.0.0.0 //进入区域0
filter 2000 export //运用acl,在出区域的出方向进行运用过滤3类LSA
最后在R6上查看路由信息,观察过滤是否能够成功:
在这里插入图片描述
已经没有了区域0的路由条目,过滤成功,现在进行检查观察能否和区域0进行通信:使用R6pingR2,结果成功:
在这里插入图片描述
说明过滤成功并且能够在内网进行正常的通信。

进行区域2条目的汇总:
首先我们在R6查看汇总前区域2的路由条目:
在这里插入图片描述
只需要进入区域2的ABR(R7)上的区域2进程下配置汇总即可:经过分析,可以对192.168.x.x的条目进行汇总,这三条条目经过分析192.168.1.1,192.168.2.1,192.168.3.1可以精确汇总成192.168.0.0/22,汇总条目的子网掩码一定要比汇总前的位数小。
配置:
[R7-ospf-1-area-0.0.0.2]abr-summary 192.168.0.0 255.255.252.0
配置完成以后,我们检查R6上的条目:
在这里插入图片描述
发现条目汇总成功,现在进行相应的测试:(汇总成功,通信没有问题)
在这里插入图片描述

步骤六:

由于R3是与公司分部接入的边界路由(此处并未标出),承载过多的路由条目信息,为了提高R3的性能,请减少R3的路由条目。

R3属于的是区域0,我们可以对区域1和区域2的条目进行汇总,这里不能对区域0和区域2的条目进行过滤的原因是,如果过滤了此路由,区域0上的默认路由是走向外部网络的,所以一旦过滤掉内部的路由条目,就无法进行内部的通信了。汇总的含义是对本地产生的条目发送出去的时候进行汇总,本地并无其他改变。

因为在上一步进行了区域2汇总,现在检查R3上对于区域2的条目是否已经汇总了:
在这里插入图片描述
汇总成功,进行区域1条目的汇总,汇总之前首先查看R3上关于区域1的路由条目:
在这里插入图片描述
在这里插入图片描述
这里需要注意的是属于区域1的ABR有三个,除了与区域0直接相连两个路由器为ABR,因为虚链路的关系,与区域2相连的R7也是ABR(有区域0的虚接口,R7会产生区域0的3类LSA,其条目也必须进行汇总,否则传递到区域0上也是明细的),所以我们需要在这三个设备上的区域1上进行路由条目的汇总,汇总的条目分析:10.1.X.X/24的条目可以汇总成10.1.4.0/22,172.16.X.X/24的条目可以汇总成172.16.0.0/22。
相应配置:(三台设备上配置相同的)
在R4上:
ospf 1 //进入OSPF进程中
area 0.0.0.1 //进入要汇总的区域
abr-summary 172.16.0.0 255.255.252.0 //进行汇总的条目
abr-summary 10.1.4.0 255.255.252.0
当我们只在一个路由器上汇总的时候:发现产生了汇总的条目,但是其他ABR仍然会发送,没有汇总的条目导致R3上既有汇总的条目,也有没有汇总的条目
在这里插入图片描述
在R5上:
ospf 1 //进入OSPF进程中
area 0.0.0.1 //进入要汇总的区域
abr-summary 172.16.0.0 255.255.252.0 //进行汇总的条目
abr-summary 10.1.4.0 255.255.252.0
在R7上:
ospf 1 //进入OSPF进程中
area 0.0.0.1 //进入要汇总的区域
abr-summary 172.16.0.0 255.255.252.0 //进行汇总的条目
abr-summary 10.1.4.0 255.255.252.0

汇总完成后进行检查:
在这里插入图片描述在这里插入图片描述
对于区域1和2只存在汇总后的两条条目,现在进行检查用R3ping区域1和区域2的设备,观察汇总的条目能否起到相应的作用:
在这里插入图片描述
在这里插入图片描述
汇总和通信成功。

步骤七:

正是由于R3的负载过重,因此将R8主机去往外网的数据流量都通过R4去往外网。(这里的R8对应原图中的R7)

我们需要首先查看R8主机去往外网的路由是怎么走的,最简单方法是使用[R8]tracert -a 192.168.1.1 200.1.1.1命令检测现在的流量是怎么运行的:
在这里插入图片描述
根据信息,我们知道了R8通过了R7,R5,R3,R2到达了外网,按照题目的要求我们需要通过R7,R5,R4,R2到达外网,这里使用最简单方法来就是修改OSPF接口的cost值。

首先我们查看串口的cost,cost值为48。
在这里插入图片描述
再查看G口的cost,cost值为1。
在这里插入图片描述
注意:修改路由条目的cost值只有在本台设备接收对应LSA或者说本台设备根据这个路由条目发送流量的接口修改才有效,例如R7到达R2,修改对应条目的cost值只能在R7的g0/0/0,g0/0/1,R6的S4/0/0上等接口上,而不能从R6的g0/0/0接口修改,这样是无法起到相应的作用的。

现在根据拓扑分析,到达外网之前都要到达R2,所以只有到达R2之前的路径不同,如果通过R4到达R2出再到外网,R5到R4到R2有2个串口,cost1为48+48=96。
如果通过R3到达R2出再到外网,R5到R3到R2有2个G口,cost2为1+1=2。

为了让cost2大于cost1我们需要将R5接口g0/0/0的OSPF的cost修改大一些,大小需要满足到达外网需要通过R4,进入g0/0/0,输入命令[R5-GigabitEthernet0/0/0]ospf cost 100,现在查看接口的cost确认,cost值变为了100。
在这里插入图片描述
现在理论上cost2为100+1=101>96,R8主机到外网走的通过的是R4路由器。
最后在R8上进行测试:
在这里插入图片描述
发现通过的是R7,R5,R2,完成了修改的目的。
到现在我们修改成功了去的流量,同理,对于回程的流量来说我们也可以进行相应的修改,但是需要说明的是,这个修改并不会成功,原因是因为虚链路的问题,R8只会将相应的LSA传递给R5,R5传递给R3再传递给R2,所以无论怎么改变,也只有这条路由可以进行回包。(虚链路上为单播传输)

现在进行相应的测试:
选择接口的方式相同,必须选择回流量的出接口,现在先在R2上看查看去往R8的路由条的cost:cost值为4(不用R1做测试是因为R1无法主动访问R8,只能够通过R2来代替进行实验操作)
在这里插入图片描述
然后使用tracert命令跟着去往R8经过了哪几跳,分别是R2,R3,R5,R7,R8。
在这里插入图片描述
现在根据题目的要求,我们需要通过R2,R4,R6,R7,R8回到R8,这里我们修改R2的g0/0/0接口的ospf的cost值为150:
[R2-GigabitEthernet0/0/0]ospf cost 150
然后现在重新查看R2上的路由表:路由的cost增加到了153,说明还是走的g0/0/0
在这里插入图片描述
使用tracert命令:并没有变化,说明推断是成功的。
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/tushanpeipei/article/details/112853080