目录
1.对AS2进行IP地址划分
所用网段:172.16.0.0/24 ---> 172.16.7.0/24
(P2P网段)172.16.0.0/24 ---> 172.16.0.0/30
(环回网段)172.16.1.0/24 ---> 172.16.6.0/24
(MA网段)172.16.7.0/24 ---> 172.16.7.0/29
2.对全网段进行IP地址和环回地址配置
(1)配置
[r1]int g0/0/0
[r1-GigabitEthernet0/0/0]ip add 12.1.1.1 24
[r1]int lo0
[r1-LoopBack0]ip add 192.16.1.1 24
[r1]int lo1
[r1-LoopBack1]ip add 10.0.0.1 24
[r2]int g0/0/0
[r2-GigabitEthernet0/0/0]ip add 12.1.1.2 24
[r2]int g0/0/1
[r2-GigabitEthernet0/0/1]ip add 172.16.0.1 30
[r2]int g0/0/2
[r2-GigabitEthernet0/0/2]ip add 172.16.0.9 30
[r2]int lo0
[r2-LoopBack0]ip add 172.16.1.1 24
[r3]int g0/0/0
[r3-GigabitEthernet0/0/0]ip ad 172.16.0.2 30
[r3]int g0/0/1
[r3-GigabitEthernet0/0/1]ip add 172.16.0.5 30
[r3]int lo0
[r3-LoopBack0]ip ad 172.16.2.1 24
[r4]int g0/0/0
[r4-GigabitEthernet0/0/0]ip add 172.16.0.6 30
[r4]int g0/0/1
[r4-GigabitEthernet0/0/1]ip add 172.16.0.13 30
[r4]int lo0
[r4-LoopBack0]ip add 172.16.3.1 24
[r5]int g0/0/0
[r5-GigabitEthernet0/0/0]ip add 172.16.0.10 30
[r5]int g0/0/1
[r5-GigabitEthernet0/0/1]ip add 172.16.0.17 30
[r5]int lo0
[r5-LoopBack0]ip add 172.16.4.1 24
[r6]int g0/0/0
[r6-GigabitEthernet0/0/0]ip add 172.16.0.18 30
[r6]int g0/0/1
[r6-GigabitEthernet0/0/1]ip add 172.16.0.21 30
[r6]int lo0
[r6-LoopBack0]ip add 172.16.5.1 24
[r7]int g0/0/0
[r7-GigabitEthernet0/0/0]ip add 172.16.0.22 30
[r7]int g0/0/1
[r7-GigabitEthernet0/0/1]ip add 78.1.1.1 24
[r7]int g0/0/2
[r7-GigabitEthernet0/0/2]ip add 172.16.0.14 30
[r7]int lo0
[r7-LoopBack0]ip add 172.16.6.1 24
[r8]int g0/0/0
[r8-GigabitEthernet0/0/0]ip add 78.1.1.2 24
[r8]int lo0
[r8-LoopBack0]ip add 192.16.2.1 24
[r8]in lo1
[r8-LoopBack1]ip ad 11.0.0.1 24
(2)测试
3.在AS2网段内配置OSPF协议
(1)配置
[r2]ospf 1 router-id 2.2.2.2
[r2-ospf-1]area 0
[r2-ospf-1-area-0.0.0.0]network 172.16.0.0 0.0.255.255
[r3]ospf 1 router-id 3.3.3.3
[r3-ospf-1]area 0
[r3-ospf-1-area-0.0.0.0]network 172.16.0.0 0.0.255.255
[r4]ospf 1 router-id 4.4.4.4
[r4-ospf-1]area 0
[r4-ospf-1-area-0.0.0.0]network 172.16.0.0 0.0.255.255
[r5]ospf 1 router-id 5.5.5.5
[r5-ospf-1]area 0
[r5-ospf-1-area-0.0.0.0]network 172.16.0.0 0.0.255.255
[r6]ospf 1 router-id 6.6.6.6
[r6-ospf-1]area 0
[r6-ospf-1-area-0.0.0.0]network 172.16.0.0 0.0.255.255
[r7]ospf 1 router-id 7.7.7.7
[r7-ospf-1]area 0
[r7-ospf-1-area-0.0.0.0]network 172.16.0.0 0.0.255.255
(需要让AS2内部网段形成通路,所以需要进行OSPF配置)
(PS:不宣告连接AR1和AR8的网段,只需要确保AS2内部通路。内部形成通路就是运行IGP协议,也可进行RIP配置)
(2)测试
4.进行BGP邻居关系的建立
(1)配置
(AR1和AR2进行EBGP对等体关系建邻)
[r1]bgp 1
[r1-bgp]router-id 1.1.1.1
[r1-bgp]peer 12.1.1.2 as-number 2
[r2]bgp 64512 --- 联邦成员设备启动BGP进程时,用小号来启动
[r2-bgp]confederation id 2 --- 告知其设备所处的大的AS为AS2
[r2-bgp]router-id 2.2.2.2
[r2-bgp]peer 12.1.1.1 as-number 1
(AR2和AR3之间进行IBGP对等体建邻)
[r2-bgp]peer 172.16.2.1 as-number 64512 --- 联邦内部建立IBGP对等体使用小号建邻
[r2-bgp]peer 172.16.2.1 connect-interface LoopBack 0
(PS:IBGP对等体之间处于同一个AS之中,正常一个AS内部将存在大量的备份路径,使用物理接口建立邻居关系将浪费备份资源。为防止链路浪费备份资源,在IGP内部建议使用环回来建立邻居关系。)
(AR2和AR5之间进行联邦的EBGP对等体建邻)
[r2-bgp]confederation peer-as 64513 --- 告知需要建立联邦的EBGP对等体设备所在的AS号,只需要在联邦的EBGP对等体关系上执行。
[r2-bgp]peer 172.16.4.1 as-number 64512
[r2-bgp]peer 172.16.4.1 connect-interface LoopBack 0
[r2-bgp]peer 172.16.4.1 ebgp-max-hop --- 联邦的EBGP对等体之间因为需要遵循EBGP的传递特性,所以他们之间的数据包的TTL值将设置为1,环回建邻需要修改该值。
[r3]bgp 64512
[r3-bgp]router-id 3.3.3.3
[r3-bgp]confederation id 2
[r3-bgp]peer 172.16.1.1 as-number 64512
[r3-bgp]peer 172.16.1.1 connect-interface LoopBack 0
[r3-bgp]peer 172.16.3.1 as-number 64512
[r3-bgp]peer 172.16.3.1 connect-interface LoopBack 0
(AR3上与AR2和AR4建立IBGP对等体关系)
[r4]bgp 64512
[r4-bgp]router-id 4.4.4.4
[r4-bgp]confederation id 2
[r4-bgp]peer 172.16.2.1 as-number 64512
[r4-bgp]peer 172.16.2.1 connect-interface LoopBack 0
[r4-bgp]confederation peer-as 64513
[r4-bgp]peer 172.16.6.1 as-number 64513
[r4-bgp]peer 172.16.6.1 connect-interface LoopBack 0
[r4-bgp]peer 172.16.6.1 ebgp-max-hop
(AR4上与AR3建立IBGP对等体关系,AR4和AR7建立联邦的EBGP对等体关系)
[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.1 as-number 64512
[r5-bgp]peer 172.16.1.1 connect-interface LoopBack 0
[r5-bgp]peer 172.16.1.1 ebgp-max-hop
[r5-bgp]peer 172.16.5.1 as-number 64513
[r5-bgp]peer 172.16.5.1 connect-interface LoopBack 0
(AR5和AR2之间进行联邦的EBGP对等体建邻,AR5和AR6之间进行IBGP对等体建邻)
[r6]bgp 64513
[r6-bgp]router-id 6.6.6.6
[r6-bgp]confederation id 2
[r6-bgp]peer 172.16.4.1 as-number 64513
[r6-bgp]peer 172.16.4.1 connect-interface LoopBack 0
[r6-bgp]peer 172.16.6.1 as-number 64513
[r6-bgp]peer 172.16.6.1 connect-interface LoopBack 0
(AR6上与AR5和AR7建立IBGP对等体关系)
[r7]bgp 64513
[r7-bgp]router-id 7.7.7.7
[r7-bgp]confederation id 2
[r7-bgp]peer 172.16.5.1 as-number 64513
[r7-bgp]peer 172.16.5.1 connect-interface LoopBack 0
[r7-bgp]confederation peer-as 64512
[r7-bgp]peer 172.16.3.1 as-number 64512
[r7-bgp]peer 172.16.3.1 connect-interface LoopBack 0
[r7-bgp]peer 172.16.3.1 ebgp-max-hop
(AR7和AR3之间进行联邦的EBGP对等体建邻,AR7和AR6之间进行IBGP对等体建邻)
[r7-bgp]peer 78.1.1.2 as-number 3
[r8]bgp 3
[r8-bgp]router-id 8.8.8.8
[r8-bgp]peer 78.1.1.1 as-number 2
(2)查看建邻结果
5.发布路由
(1)从AR1开始发布环回接口的路由
[r1-bgp]network 10.0.0.0 24
(AR3和AR5上的路由可用但是不优,是因为AS-BY-AS规则导致的)
为保证路由可达,需要在AR2上修改下一跳
[r2-bgp]peer 172.16.2.1 next-hop-local
[r2-bgp]peer 172.16.4.1 next-hop-local
由于AR2和AR5是联邦的EBGP对等体关系,所以AR5可以将学到的信息可以发给AR6。因为IBGP水平分割的存在,所以AR3不会将学到的信息发布给AR4,AR6不会将学到的信息发布给AR7。
所以,需要在AR3和AR5上配置RR。
Router Reflector---RR(路由反射器)---我们可以将BGP路由器配置成为路由反射器,被配置成为路由反射器的设备在一定条件下,将可以反射学到的IBGP路由信息,以此来打破IBGP水平分割带来的通信障碍。
[r3-bgp]peer 172.16.1.1 reflect-client -- 将AR2设置为反射客户
[r6-bgp]peer 172.16.4.1 reflect-client -- 将AR5设置为反射客户
测试
(2)从AR8开始发布环回接口的路由
[r8-bgp]network 11.0.0.0 24
[r7-bgp]peer 172.16.5.1 next-hop-local
[r7-bgp]peer 172.16.3.1 next-hop-local
配置完成,查看路由接收情况
![](https://i-blog.csdnimg.cn/blog_migrate/344aadb42a50d0a0e1c6611b50fc1098.png)
6.减少路由,进行路由汇总,保证环回通路
两种方法 :
(1)在边界设备AR2上进行发布,将AR2到AR7上的明细路由首先通告出来,然后将其聚合之后发布,然后将明细路由进行抑制,这样可以减少路由条目数量。
(2)直接在AR2上写出来一条指向汇总的空接口路由,然后将空接口路由发布出去
我这里使用的是第二种方法:
[r2]ip routing-static 172.16.0.0 21 NULL 0
[r2-bgp]network 172.16.0.0 21
(如果多组边界设备需要将路由发送给EBGP对等体关系时,需要将所有的路由信息都发布。所以,在AR7上也发布一次这个空接口)
[r7]ip routing-static 172.16.0.0 21 NULL 0
[r7-bgp]network 172.16.0.0 21
(3)测试路由可达
(4)测试环回通路
7.保障AR1和AR8的一个环回形成通路,进行隧道接口配置
(1)配置
[r1]int t0/0/0
[r1-Tunnel0/0/0]tunnel-protocol gre
[r1-Tunnel0/0/0]source 10.0.0.1
[r1-Tunnel0/0/0]destination 11.0.0.1
[r8]int t0/0/0
[r8-Tunnel0/0/0]tunnel-protocol gre
[r8-Tunnel0/0/0]source 11.0.0.1
[r8-Tunnel0/0/0]destination 10.0.0.1
(2)测试