1.IP地址的规划以及拓扑的搭建
2.底层(IP地址的配置)
R1:
R2:
R3:
R4:
R5:
R6:
R7:
R8:
3.路由(在AS2内部跑OSPF动态路由协议)
以R2为例:
[r2-ospf-1-area-0.0.0.0]network 172.16.0.0 0.0.255.255
在R3/4/5/6/7上做同样的命令
查看是否建立邻居:
4.修改用户网段的工作方式(在实验中,我们用环回接口代替)
在实际的工程中,路由器会连接用户,路由器会携带原有的掩码来进行传递,但在实验过程中,用户网段会用环回代替,导致在路由器之间传递的路由会以32位主机路由传递,所以我们为了接近实际工程,我们的解决办法是:将用户网段的环回接口工作方式改为broadcast。以R2为例:
[r2]int l1
[r2-LoopBack1]ospf network-type broadcast
在R3/4/5/6/7上做同样的命令
5.BGP的邻居建立
[r1]bgp 1
[r1-bgp]router-id 1.1.1.1
[r1-bgp]peer 12.1.1.2 as-number 2
[r2]bgp 64512
[r2-bgp]router-id 2.2.2.2
[r2-bgp]confederation id 2
[r2-bgp]confederation peer-as 64513
[r2-bgp]peer 12.1.1.1 as-number 1
[r2-bgp]peer 172.16.1.3 as-number 64512
[r2-bgp]peer 172.16.1.3 connect-interface l0
[r2-bgp]peer 172.16.1.7 as-number 64513
[r2-bgp]peer 172.16.1.7 connect-interface l0
[r2-bgp]peer 172.16.1.7 ebgp-max-hop 2
[r3]bgp 64512
[r3-bgp]router-id 3.3.3.3
[r3-bgp]confederation id 2
[r3-bgp]peer 172.16.1.2 as-number 64512
[r3-bgp]peer 172.16.1.2 connect-interface l0
[r3-bgp]peer 172.16.1.4 as-number 64512
[r3-bgp]peer 172.16.1.4 connect-interface l0
[r4]bgp 64512
[r4-bgp]router-id 4.4.4.4
[r4-bgp]confederation id 2
[r4-bgp]confederation peer-as 64513
[r4-bgp]peer 172.16.1.3 as-number 64512
[r4-bgp]peer 172.16.1.3 connect-interface l0
[r4-bgp]peer 172.16.1.5 as-number 64513
[r4-bgp]peer 172.16.1.5 connect-interface l0
[r4-bgp]peer 172.16.1.5 ebgp-max-hop 2
[r5]bgp 64513
[r5-bgp]router-id 5.5.5.5
[r5-bgp]confederation id 2
[r5-bgp]confederation peer-as 64512
[r5-bgp]peer 172.16.1.4 as-number 64512
[r5-bgp]peer 172.16.1.4 connect-interface l0
[r5-bgp]peer 172.16.1.4 ebgp-max-hop 2
[r5-bgp]peer 172.16.1.6 as-number 64513
[r5-bgp]peer 172.16.1.6 connect-interface l0
[r5-bgp]peer 58.1.1.2 as-number 3
[r6]bgp 64513
[r6-bgp]router-id 6.6.6.6
[r6-bgp]confederation id 2
[r6-bgp]peer 172.16.1.5 as-number 64513
[r6-bgp]peer 172.16.1.5 connect-interface l0
[r6-bgp]peer 172.16.1.7 as-number 64513
[r6-bgp]peer 172.16.1.7 connect-interface l0
[r7]bgp 64513
[r7-bgp]router-id 7.7.7.7
[r7-bgp]confederation id 2
[r7-bgp]confederation peer-as 64512
[r7-bgp]peer 172.16.1.6 as-number 64513
[r7-bgp]peer 172.16.1.6 connect-interface l0
[r7-bgp]peer 172.16.1.2 as-number 64512
[r7-bgp]peer 172.16.1.2 connect-interface l0
[r7-bgp]peer 172.16.1.2 ebgp-max-hop 2
[r8]bgp 3
[r8-bgp]router-id 8.8.8.8
[r8-bgp]peer 58.1.1.1 as-number 2
查看邻居是否建立:
6.BGP的宣告
【1】在R1上宣告R1环回
[r1-bgp]network 1.1.1.0 24
然后发现在R3和R7的BGP表上不优,原因是基于AS-BY-AS规则,条目在一个AS内部传递时将不修改条目属性;导致通过IBGP邻居学习到的BGP路由可能出现下一跳不可达。解决方法是修改下一跳。
[r2-bgp]peer 172.16.1.3 next-hop-local
[r2-bgp]peer 172.16.1.7 next-hop-local
通过刚才的操作,在R3和R7的BGP表上R1环回路由优秀,然后R7由于是联邦内的EBGP邻居关系,所以R7能够传给R6,然后R3和R6都传不出去,原因是IBGP水平分割。这时我们为了有条件的打破IBGP水平分割,解决办法是设置路由反射器,让R3和R6当RR反射器,让R4和R5当客户端,无论客户端还是非客户端都必须是RR的IBGP邻居
[r6-bgp]peer 172.16.1.5 reflect-client
[r3-bgp]peer 172.16.1.4 reflect-client
这时R1环回在所有路由器的BGP表中全部优秀
【2】在R8上宣告R8的环回
[r8-bgp]network 8.8.8.0 24
然后发现在R4和R6的BGP表上不优,原因是基于AS-BY-AS规则,条目在一个AS内部传递时将不修改条目属性;导致通过IBGP邻居学习到的BGP路由可能出现下一跳不可达。解决方法是修改下一跳。
[r5-bgp]peer 172.16.1.4 next-hop-local
[r5-bgp]peer 172.16.1.6 next-hop-local
因为刚才已经设置过路由反射器了,所以R8环回在所有路由器的BGP表中全部优秀
【3】现在宣告AS2内部的路由条目,我们可以在R2和R5上做一条空接口防环路由,然后再宣告这条路由,目的是减少路由条目数量。
[r2]ip route-static 172.16.0.0 21 NULL 0
[r2-bgp]network 172.16.0.0 21
[r5]ip route-static 172.16.0.0 21 NULL 0
[r5-bgp]network 172.16.0.0 21
7.测试
7.测试
至此,所有实验要求均满足,实验结束