首先在AS2的内部配置OSPF。然后在每个路由器上启动MPLS协议,并且AS2内部的每个接口上面启用mpls ldp协议,注意的mpls的ID 号是环回的地址,而且环回的地址是掩码为32位的那个。比如路由器R2的mpls-id 为172.16.1.2, R3的的mpls-id 为172.16.1.3
[Huawei]in lo0
[Huawei-LoopBack0]ip ad 172.16.1.2 32
[Huawei-LoopBack0]q
[Huawei]mpls ls
[Huawei]mpls lsr-id 172.16.1.2
[Huawei]mpls
Info: Mpls starting, please wait... OK!
[Huawei-mpls]mpls ldp
[Huawei-mpls-ldp]q
[Huawei]int g0/0/0
[Huawei-GigabitEthernet0/0/0]mpls
[Huawei-GigabitEthernet0/0/0]mpls ldp
之后在R1,R2与R5、R7,R8之间起BGP。R1与R2,R5是直连接口起BGP,所以不用修改更新源为环回地址。而AS2内部要修改更新源为环回接口,因为AS之间建立邻居的是环回接口,内部需要同步路由表等表,要更换更新源。
设置网段
然后查看bgp邻居表:display bgp peer 等待邻居全部建立成功才继续下一步。然后设置R1和R8的环回,分别为10.1.1.1/24 和80.1.1.1/24,然后分别进入各自的BGP进行宣告自己内网段。
现在学习不到R8的路由,原因是在华为ensp中,EBGP路由传递给IBGP时,下一跳不会不发生改变,会导致IBGP邻居学习路由由于下一跳不可达导致路由不优,所以在IBGP之间要修改next-hop属性为本身
在R2\5\7上面设置 peer 172.16.1.X(对应的IBGP邻居ID) next_hop_local。
然后在R1上面查看bgp路由表的时候发现R8的环回网段有且优了,
此时R1还是Ping不通R8的
这是因为华为设备中不为BGP协议执行下一跳标签机制,需要开启递归查找功能。这样路由就会基于隧道进行递归查找
需要在R2\5\7上面分别配置
接下来需要把AS2的路由宣告到AS1和AS3里面,需要在BGP路由器R2,R5,R7上宣告。宣告汇总路由时不要忘记设置空接口防环路由。
此时pingR2的网段
显示里面只能ping通R2\R5\R7,因为相互是BGP间的关系,且刚才宣告了BGP2的所有网段,很容易ping通。但是由于R3\R4\R6没有起BGP,所以得加上静态路由让他们能连接R1、R8。
然后就能通了
现在实验已经实现全网可达,但是需要做备份。
现在在R2上面宣告R2\R3\R4
在R5上面宣告R5\R6\R7。
这样宣告的目的是,在宣告本BGP其他网段的时候,会在别的BGP表里面生成一个明细路由,当然不管他前面是否有汇总路由,宣告完之后依旧存在,不会删除之前存在的表。
然后在R5上宣告R5\R6\R7
至此,实验全部完成。