实验拓扑
实验目的以及要求
1、该拓扑为公司网络,其中包括公司总部、公司分部以及公司骨干网,不包含运营商公网部分。
2、设备名称均使用拓扑上名称改名,并且区分大小写。
3、整张拓扑均使用私网地址进行配置。
4、整张网络中,运行OSPF协议或者BGP协议的设备,其Router-id值为设备名数字号,例如R1的 Router-id为1.1.1.1、
5、OSPF路由宣告部分选择接口宣告方式,例如192.168.100.1 0.0.0.0;BGP仅宣告用户网段。
6、IBGP部分使用环回建立邻居,EBGP部分使用直连链路建立邻居,所有运行BGP的设备都需要建立邻 居。
7、R1、R2、R5、R6、R7、R8、R9、R10需要配置环回接口,环回接口IP为设备名数字号,掩码为 32,例如R2的环回接口为2.2.2.2/32 8、所有PC的IP地址均手工配置。
公司分部: 1、PC5和PC6属于不同VLAN 2、SW4是一个二层交换机 3、SW3是一个三层交换机 4、R9是分部出口路由器 5、分部使用OSPF进程200达到分部网络全网可达 6、公司分部出口设备运行BGP协议连接骨干网络,AS号为100 7、因AS-PATH属性原因,总部与分部路由会学习不到,使用命令如(peer 10.10.10.10 allow-asloop,仅在总部与分部设备上配置即可),将允许AS号重复。
公司总部: 1、交换机为二层交换机 2、PC1和PC2属于一个网段,PC3和PC4是一个网段 3、R3和R4分别是下方PC的网关路由器 4、为保障公司总部到骨干网络的连通性,公司总部使用双路由器双出口的方式接入骨干网 5、为保障公司总部网络内部具备负载,R1、R2、R3、R4设备均作为设备冗余,并使用全连接的方式进 行路由选路 6、总部内网使用OSPF进程100达到全网可达,OSPF需要宣告环回7、公司总部双出口设备运行BGP协议连接骨干网络,AS号为100 8、因为R1和R2重发布时会出现次优路径,需要修改BGP路由优先级,使用命令(preference 140 255 255,仅在总部设备上配置即可),配置位置在iPv4-family unicast中。
公司骨干网: 1、为保障公司网络连通性,骨干网络考虑设备冗余操作,连接总部使用双路由器,骨干网络部分路由器 之间使用双链路路方式 2、骨干网设备运行OSPF协议达到骨干网全网可达,进程号为10。 3、骨干网设备运行BGP协议,AS号为200。使用全连接方式建邻。 优化: 1、为达到分流互备效果,公司总部业务部访问分部流量走R1,R2做备份;公司总部工程部访问分部流 量走R2,R1做备份,并要求来回路径一致。 2、公司总部双出口流量均流向R5,R6做备份。来回路径一致。 3、OSPF重发布时,更改类型为Type-1 4、所有策略名称为policy-1 5、更改开销时,全部更改为10
实验步骤
配置IP地址
配置完成IP地址之后就可以搞IBGP的OSPF宣告了,让内网保持互通,这一步也没有什么要说的点保障OSPF的邻居建立好就行,根据要求写进程号,然后在区域0宣告自己的直连网段和环回。
这里我给大家展示我的OSPF邻居表即可,因为命令就是很单一
OSPF就一笔带过了,最值得说的是BGP的配置
BGP配置
根据要求可知我们需要把骨干网中的IBGP做全连,并且IBGP建邻用我们给的环回建,骨干网与总部的建邻,用直连接口建立。
R5:
[R5-bgp]display this
[V200R003C00]
#
bgp 200
peer 6.6.6.6 as-number 200
peer 7.7.7.7 as-number 200
peer 7.7.7.7 connect-interface LoopBack0
peer 8.8.8.8 as-number 200
peer 8.8.8.8 connect-interface LoopBack0
peer 10.10.10.1 as-number 100
peer 10.10.10.9 as-number 100
#
ipv4-family unicast
undo synchronization
peer 6.6.6.6 enable
peer 6.6.6.6 next-hop-local
peer 7.7.7.7 enable
peer 7.7.7.7 next-hop-local
peer 8.8.8.8 enable
peer 8.8.8.8 next-hop-local
peer 10.10.10.1 enable
peer 10.10.10.9 enable
#
return
R6:
[R6-bgp]display this
[V200R003C00]
#
bgp 200
peer 5.5.5.5 as-number 200
peer 5.5.5.5 connect-interface LoopBack0
peer 7.7.7.7 as-number 200
peer 7.7.7.7 connect-interface LoopBack0
peer 8.8.8.8 as-number 200
peer 8.8.8.8 connect-interface LoopBack0
peer 10.10.10.5 as-number 100
peer 10.10.10.13 as-number 100
#
ipv4-family unicast
undo synchronization
peer 5.5.5.5 enable
peer 7.7.7.7 enable
peer 7.7.7.7 next-hop-local
peer 8.8.8.8 enable
peer 8.8.8.8 next-hop-local
peer 10.10.10.5 enable
peer 10.10.10.5 allow-as-loop
peer 10.10.10.13 enable
peer 10.10.10.13 allow-as-loop
#
return
R1:
[R1-bgp]display this
[V200R003C00]
#
bgp 100
peer 2.2.2.2 as-number 100
peer 2.2.2.2 connect-interface LoopBack0
peer 10.10.10.2 as-number 200
peer 10.10.10.6 as-number 200
#
ipv4-family unicast
undo synchronization
network 192.168.1.0
network 192.168.2.0
peer 2.2.2.2 enable
peer 10.10.10.2 enable
peer 10.10.10.2 allow-as-loop
peer 10.10.10.6 enable
peer 10.10.10.6 allow-as-loop
#
return
R2:
[R2-bgp]display this
[V200R003C00]
#
bgp 100
peer 1.1.1.1 as-number 100
peer 1.1.1.1 connect-interface LoopBack0
peer 10.10.10.10 as-number 200
peer 10.10.10.14 as-number 200
#
ipv4-family unicast
undo synchronization
network 192.168.1.0
network 192.168.2.0
peer 1.1.1.1 enable
peer 10.10.10.10 enable
peer 10.10.10.10 allow-as-loop
peer 10.10.10.14 enable
peer 10.10.10.14 allow-as-loop
#
return
R7:
[R7-bgp]display this
[V200R003C00]
#
bgp 200
peer 5.5.5.5 as-number 200
peer 5.5.5.5 connect-interface LoopBack0
peer 6.6.6.6 as-number 200
peer 6.6.6.6 connect-interface LoopBack0
peer 8.8.8.8 as-number 200
peer 8.8.8.8 connect-interface LoopBack0
#
ipv4-family unicast
undo synchronization
peer 5.5.5.5 enable
peer 5.5.5.5 next-hop-local
peer 6.6.6.6 enable
peer 6.6.6.6 next-hop-local
peer 8.8.8.8 enable
peer 8.8.8.8 next-hop-local
#
return
R8:
[R8-bgp]display this
[V200R003C00]
#
bgp 200
peer 5.5.5.5 as-number 200
peer 5.5.5.5 connect-interface LoopBack0
peer 6.6.6.6 as-number 200
peer 6.6.6.6 connect-interface LoopBack0
peer 7.7.7.7 as-number 200
peer 7.7.7.7 connect-interface LoopBack0
peer 10.10.10.38 as-number 100
#
ipv4-family unicast
undo synchronization
peer 5.5.5.5 enable
peer 5.5.5.5 next-hop-local
peer 6.6.6.6 enable
peer 6.6.6.6 next-hop-local
peer 7.7.7.7 enable
peer 7.7.7.7 next-hop-local
peer 10.10.10.38 enable
#
return
R9:
[R9-bgp]display this
[V200R003C00]
#
bgp 100
peer 10.10.10.37 as-number 200
#
ipv4-family unicast
undo synchronization
network 192.168.3.0
network 192.168.4.0
peer 10.10.10.37 enable
peer 10.10.10.37 allow-as-loop
#
return
需要注意的地方就是在配置IBGP邻居的时候如果需要利用环回建立邻居就需要连接对应的环回接口,并且修改TTL时间,否则建邻会异常。
因AS-PATH属性原因,总部与分部路由会学习不到,使用命令如(peer 10.10.10.10 allow-asloop,仅在总部与分部设备上配置即可),将允许AS号重复。
在EBGP中宣告我们的业务网段之后
然后我们把BGP的路由重发步进OSPF即可。
查看路由表
可以发现已经有3.0和4.0网段的路由了
我们现在ping一下
可以ping通
优化:
因为R1和R2重发布时会出现次优路径,需要修改BGP路由优先级,使用命令(preference 140 255 255,仅在总部设备上配置即可),配置位置在iPv4-family unicast中。
之后就是让业务来回都走1或者二,这个也很好理解,我们需要在控制层操作,在R5和R6上把R1中2.0网段的开销值改大即可,这样既可以做冗余也可以完成优化目的。
R1:
route-policy policy-1 permit node 10
if-match ip-prefix policy-1
apply cost 10
#
route-policy policy-1 permit node 20
#
ip ip-prefix policy-1 index 10 permit 192.168.2.0 24
R2:
route-policy policy-1 permit node 10
if-match ip-prefix policy-1
apply cost 10
#
route-policy policy-1 permit node 20
#
ip ip-prefix policy-1 index 10 permit 192.168.1.0 24
查看路由表:
这样就可以了。
总结
这个实验接近真实的网络环境,配置命令不是特别繁琐,理清思路是最重要的,从第一步配置IP和VLAN,起OSPF,起BGP。我学到的是每做完一步就PING一下测试连通性,防止出现低级错误。