实验需求
1、R1-R5都有两个环回,一个环回用32位用于建邻,另一个代表用户网段
2、要求所有用户网段能够相互访问
实验拓扑
实验分析
首先,我们要知道BGP本身不产生路由,可以说是路由的搬运工,这里我们就不详细说明这个协议的具体内容了,这个实验很简单,只是要求用BGP协议让AS之间的用户网段能够实现相互访问。
特别注意:BGP协议不要求全网可达,只能说让某些网段能够相互访问。
BGP:边界网关路由协议,无类别的,距离矢量,EGP协议,BGP承载与IGP之上。
IBGP:AS之内的BGP设备构建的邻居关系
EBGP:AS之间的BGP设备构建的邻居关系
R2-R4属于IBGP,R1-R2、R4-R5都是属于EBGP。
BGP的水平分割和防环机制在这里我就不说了,留到下一个大实验在给大家仔细说明
配置内容
ip地址规划
【R1】
[r1]int g0/0/0
[r1-GigabitEthernet0/0/0]ip address 12.1.1.1 24
[r1-GigabitEthernet0/0/0]int l0
[r1-LoopBack0]ip address 1.1.1.1 32
[r1-LoopBack0]int l1
[r1-LoopBack1]ip address 192.168.1.1 24
【R2】
[r2]int g0/0/1
[r2-GigabitEthernet0/0/1]ip address 12.1.1.2 24
[r2-GigabitEthernet0/0/1]int g0/0/0
[r2-GigabitEthernet0/0/0]ip address 23.1.1.1 24
[r2-GigabitEthernet0/0/0]int l0
[r2-LoopBack0]ip address 1.1.1.2 32
[r2-LoopBack0]int l1
[r2-LoopBack1]ip address 192.168.2.1 24
【R3】
[r3]int g0/0/1
[r3-GigabitEthernet0/0/1]ip address 23.1.1.2 24
[r3-GigabitEthernet0/0/1]int g0/0/0
[r3-GigabitEthernet0/0/0]ip address 34.1.1.1 24
[r3-GigabitEthernet0/0/0]int l0
[r3-LoopBack0]ip address 1.1.1.3 32
[r3-LoopBack0]int l1
[r3-LoopBack1]ip address 192.168.3.1 24
【R4】
[r4]int g0/0/1
[r4-GigabitEthernet0/0/1]ip address 34.1.1.2 24
[r4-GigabitEthernet0/0/1]int g0/0/0
[r4-GigabitEthernet0/0/0]ip address 45.1.1.1 24
[r4-GigabitEthernet0/0/0]int l0
[r4-LoopBack0]ip address 1.1.1.4 32
[r4-LoopBack0]int l1
[r4-LoopBack1]ip address 192.168.4.1 24
【R5】
[r5]int g0/0/1
[r5-GigabitEthernet0/0/1]ip address 45.1.1.2 24
[r5-GigabitEthernet0/0/1]int l0
[r5-LoopBack0]ip address 1.1.1.5 32
[r5-LoopBack0]int l1
[r5-LoopBack1]ip address 192.168.5.1 24
R1-R2配置EBGP邻居关系
【R1】
# 配置BGP之前需要底层全网可达
[r1]ip route-static 1.1.1.2 32 12.1.1.2
# 配置EBGP邻居关系
[r1]bgp 1 # 本地as号
[r1-bgp]router-id 1.1.1.1 # 方便人们识别设备
[r1-bgp]peer 1.1.1.2 as-number 2 # 邻居as号
[r1-bgp]peer 1.1.1.2 ebgp-max-hop 2 # 最大跳数
[r1-bgp]peer 1.1.1.2 connect-interface LoopBack 0 # 绑定
【R2】
[r2]ip route-static 1.1.1.1 32 12.1.1.1
[r2]bgp 2
[r2-bgp]router-id 2.2.2.2
[r2-bgp]peer 1.1.1.1 as-number 1
[r2-bgp]peer 1.1.1.1 ebgp-max-hop 2
[r2-bgp]peer 1.1.1.1 connect-interface LoopBack 0
R2-R4建立RIP协议
【R2】
[r2]rip
[r2-rip-1]ver 2
[r2-rip-1]network 1.0.0.0
[r2-rip-1]network 192.168.2.0
[r2-rip-1]network 23.0.0.0
【R3】
[r3]rip
[r3-rip-1]ver 2
[r3-rip-1]network 1.0.0.0
[r3-rip-1]network 192.168.3.0
[r3-rip-1]network 23.0.0.0
[r3-rip-1]network 34.0.0.0
【R4】
[r4]rip
[r4-rip-1]ver 2
[r4-rip-1]network 192.168.4.0
[r4-rip-1]network 34.0.0.0
[r4-rip-1]network 1.0.0.0
R2-R4建立IBGP邻居关系
【R2】
[r2]bgp 2
[r2-bgp]peer 1.1.1.3 as-number 2
[r2-bgp]peer 1.1.1.3 next-hop-local
[r2-bgp]peer 1.1.1.3 connect-interface LoopBack 0
【R3】
[r3]bgp 2
[r3-bgp]router-id 3.3.3.3
[r3-bgp]peer 1.1.1.2 as-number 2
[r3-bgp]peer 1.1.1.2 next-hop-local
[r3-bgp]peer 1.1.1.2 connect-interface LoopBack 0
【R4】
[r4]bgp 2
[r4-bgp]router-id 4.4.4.4
[r4-bgp]peer 1.1.1.3 as-number 2
[r4-bgp]peer 1.1.1.3 next-hop-local
[r4-bgp]peer 1.1.1.3 connect-interface LoopBack 0
R4-R5建立EBGP邻居关系
【R4】
[r4]bgp 2
[r4-bgp]peer 1.1.1.5 as-number 3
[r4-bgp]peer 1.1.1.5 ebgp-max-hop 2
[r4-bgp]peer 1.1.1.5 connect-interface LoopBack 0
[r4]ip route-static 1.1.1.5 32 45.1.1.2
【R5】
[r5]bgp 3
[r5-bgp]router-id 5.5.5.5
[r5-bgp]peer 1.1.1.4 as-number 2
[r5-bgp]peer 1.1.1.4 ebgp-max-hop 2
[r5-bgp]peer 1.1.1.4 connect-interface LoopBack 0
[r5]ip route-static 1.1.1.4 32 45.1.1.1
BGP宣告,这里先宣告R1的192.168.1.0/24和R5的192.168.5.0/24,让他们能相互访问
【R1】
[r1]bgp 1
[r1-bgp]network 192.168.1.0
【R5】
[r5]bg
[r5]bgp 3
[r5-bgp]network 192.168.5.0
这里要让R2和R4建立邻居关系,
因为R2从外界雪来的路由只会分享给一个邻居,不会共享给另外一个邻居
【R2】
[r2]bgp 2
[r2-bgp]peer 1.1.1.4 as-number 2
[r2-bgp]peer 1.1.1.4 next-hop-local
[r2-bgp]peer 1.1.1.4 connect-interface LoopBack 0
【R4】
[r4]bgp 2
[r4-bgp]peer 1.1.1.2 as-number 2
[r4-bgp]peer 1.1.1.2 next-hop-local
[r4-bgp]peer 1.1.1.2 connect-interface LoopBack 0
disp bgp routing-table:查看BGP路由表
R1的环回访问R5的环回
最终想让所有用户网段能够相互访问,只需要在各自的BGP协议中宣告用户的网段即可。
每个路由的BGP路由表都应该是以下路由条目
测试
[r1]ping -a 192.168.1.1 192.168.2.1
[r1]ping -a 192.168.1.1 192.168.4.1
其他也如此,都能相互访问