一、实验要求
二、实验步骤
1.IP地址规划
本实验没有要求IP规划,则自由规划IP地址。
2、配置IGP协议
通过配置IGP协议实现内网全网可达,在AS2区域中使用ospf协议
在AR2上
[r2]ospf 1 router-id 2.2.2.2
[r2]area 0
[r2-ospf-1-area-0.0.0.0] network 2.2.2.0 0.0.0.255
[r2-ospf-1-area-0.0.0.0] network 23.1.1.0 0.0.0.255
[r2-ospf-1-area-0.0.0.0] network 192.168.3.0 0.0.0.255
在AR3上
[r3]ospf 1 router-id 3.3.3.3
[r3]area 0
[r3-ospf-1-area-0.0.0.0] network 3.3.3.0 0.0.0.255
[r3-ospf-1-area-0.0.0.0] network 23.1.1.0 0.0.0.255
[r3-ospf-1-area-0.0.0.0] network 34.1.1.0 0.0.0.255
[r3-ospf-1-area-0.0.0.0] network 192.168.2.0 0.0.0.255
在AR4上
[r4]ospf 1 router-id 4.4.4.4
[r4]area 0
[r4-ospf-1-area-0.0.0.0] network 4.4.4.0 0.0.0.255
[r4-ospf-1-area-0.0.0.0] network 34.1.1.0 0.0.0.255
[r4-ospf-1-area-0.0.0.0] network 192.168.4.0 0.0.0.255
AR2 ping AR4,是否通
3、配置EGP协议
AR1与AR2所在的两个区域是直连的两个AS区域,则建立直连的EBGP邻居。
以AR1为例
[r1]bgp 1 启动时需要定义其所在的AS号 没有多进程的概念
[r1-bgp]router-id 1.1.1.1 建议配置router-id,与OSPF的RID配置规则一致
[r1-bgp]peer 12.1.1.2 as-number 2 建立邻居关系,定义对端设备的ip地址,及所在AS编号
AR2-4都是在AS2一个区域内,所以需要配置IBGP邻居
以AR2为例
[r2]bgp 2
[r2-bgp]peer 3.3.3.3 as-number 2
[r2-bgp]peer 3.3.3.3 connect-interface LoopBack 0
切记:一旦使用环回地址做为建邻地址,就需要修改源ip地址为本地的环回地址。
因为AR4与AR5邻居间有多条链路相连,所以建立EBGP邻居时,需要选择环回建立邻居。选择环回建立EBGP邻居时,要注意两边环回是否能正常通信,若不能通信将无法建立邻居。
这里使用手写静态路由的方法实现互相通信。
[r4]ip route-static 5.5.5.0 255.255.255.0 45.1.1.2
[r4]ip route-static 5.5.5.0 255.255.255.0 54.1.1.2
[r5]ip route-static 5.5.5.0 255.255.255.0 45.1.1.1
[r5]ip route-static 5.5.5.0 255.255.255.0 54.1.1.1
[r5]bgp 3
[r5-bgp]peer 4.4.4.4 as-number 2
[r5-bgp]peer 4.4.4.4 connect-interface LoopBack 0
EBGP邻居间,默认TTL值为1,IBGP为255;理论上EBGP邻居间没有第三台路由器,故TTL值设定为1,将只能和直连的物理接口建立邻居;若使用环回建邻居,必须修改TTL值。
[r4-bgp]peer 5.5.5.5 ebgp-max-hop 2 修改EBGP邻居间的TTL值
[r5-bgp]peer 4.4.4.4 ebgp-max-hop 2 修改EBGP邻居间的TTL值
查看路由器bgp的邻居关系
display bgp peer
4、BGP路由宣告
BGP路由宣告用于让AS区域间路由互相学习
在AS1中
[r1]bgp 1
[r1-bgp]network 12.1.1.0 24
[r1-bgp]network 192.168.1.0 24
在AS2中以AR2为例
[r2]bgp 2
[r2-bgp]network 12.1.1.0 24
[r2-bgp]network 23.1.1.0 24
[r2-bgp]network 192.168.2.0 24
在AS3中
[r5]bgp 3
[r5-bgp]network 45.1.1.0 24
[r5-bgp]network 54.1.1.0 24
[r5-bgp]network 192.168.5.0 24
注:宣告时,宣告的条目内容必须和本地路由表中完全一致。
在BGP中环回一般用于建立邻居,所以一般路由宣告时不宣告环回地址。
5、解决选路问题
宣告完路由,查看路由表时,发现AR4学习不到AR2的路由,这是因为IBGP水平分割。
故需要AR2给AR4单独建立一条IBGP邻居。
[r2]bgp 2
[r2-bgp]peer 4.4.4.4 as-number 2
[r2-bgp]peer 4.4.4.4 connect-interface LoopBack 0
建立邻居后,发现AR3上学习AR5的路由不优,这是由AS-BY-AS 导致。
一条路由信息在IBGP邻居传递时,其属性默认不编号,最终时常导致下一跳不可达。
故当路由条目传递给下一个邻居时,需要修改下一跳为本地地址。
[r2]bgp 2
[r2-bgp]peer 3.3.3.3 next-hop-local
[r2-bgp]peer 4.4.4.4 next-hop-local
[r4]bgp 2
[r4-bgp]peer 2.2.2.2 next-hop-local
[r4-bgp]peer 3.3.3.3 next-hop-local
修改后,查看路由表发现AR5的路由已达优。
6、用户测试
使用DHCP使所有的电脑自动获取ip
以AR1为例
[r1]dhcp enable
[r1]ip pool a
[r1-ip-pool-a]network 192.168.1.0 mask 24
[r1-ip-pool-a]gateway-list 192.168.1.1
[r1-ip-pool-a]dns-list 114.114.114.114 8.8.8.8
[r1-ip-pool-a]q
[r1]int g0/0/1
[r1-GigabitEthernet0/0/1]dhcp select global
查看PC1是否能上网