3. 交换机互联
3.1 本节目标
- 了解Spine Leaf网络基本拓扑结构;
- 网络设备互联接口配置;
- 网络设备bgp配置;
3.2 拓扑结构:
如下图所示, 本节使用的Spine Leaf网络拓扑,由2台Spine和4台Leaf组成,Spine和Leaf之间两两互联。为方便管理,加入一台linux主机用于管理各交换机设备,则拓扑如下:
3.3 测试环境
- 6台交换机(即Spine和Leaf交换机),本文配置为Arista交换机的命令格式,如果你对Arista的命令行不熟悉,不用害怕,基本上跟Cisco是差不多的,有一些特殊配置也会给出对照说明;
- 为了便于管理,使用一台linux主机(management server),用于统一管理各设备;
- c0-c8为网络号, 其中c0作为管理网络,c1-c8作为spine和leaf之间的互联链路;
- 按图1所示,将各交换机加入到对应的自管网络中去;
3.4 管理网络配置:
带外管理网络c0为一个二层广播网络,将所有交换设备的management口加入到该网络中,便于进行统一的带外管理。为每个交换机的management口分配管理网络地址, 同时也为每个交换机的loopback0接口分配一个带内管理地址,用于后续章节的学习,分配如下:
设备 | 带外管理地址 | 带内管理地址 |
---|---|---|
spine01 | 198.18.20.10 | 10.10.10.10 |
spine02 |
198.18.20.11 |
10.10.10.11 |
leaf01 | 198.18.20.12 | 10.10.10.12 |
leaf02 | 198.18.20.13 | 10.10.10.13 |
leaf03 | 198.18.20.14 | 10.10.10.14 |
leaf04 | 198.18.20.15 | 10.10.10.15 |
配置管理网络地址,以leaf01为例,其他设备按例配置:
interface Management1 ip address 198.18.20.12/24 interface Loopback0 ip address 10.10.10.12/32 |
3.5 互联接口配置:
为了方便管理,给每台leaf交换机分配一个 c 段的私网地址。在使用48口交换机的情况,虽然会浪费一部分地址,但是换来了管理上的便捷。这个例子里面,使用的是 169.254.0.0/24 ~ 169.254.3.0/24。
以spine01和leaf01互联为例,每条互联链路分配一个30位掩码的网段,例如c1分配网段为169.254.0.248/30, 则链路两端网口ip分配为169.254.0.249/30和169.254.0.250/30,如下表:
互联链路 | spine | spine接口 | spine接口ip | leaf | leaf接口 | leaf接口ip |
---|---|---|---|---|---|---|
c1 | spine01 | e1 | 169.254.0.250/30 | leaf01 | e1 | 169.254.0.249/30 |
其余互联链路的规划同理,总规划如下表:
互联链路 | spine | spine接口 | spine接口ip | leaf | leaf接口 | leaf接口ip |
---|---|---|---|---|---|---|
c1 | spine01 | e1 | 169.254.0.250/30 | leaf01 | e1 | 169.254.0.249/30 |
c2 | spine02 | e1 | 169.254.0.254/30 | leaf01 | e2 | 169.254.0.253/30 |
c3 | spine01 | e2 | 169.254.1.250/30 | leaf02 | e1 | 169.254.1.249/30 |
c4 | spine02 | e2 | 169.254.1.254/30 | leaf02 | e2 | 169.254.1.253/30 |
c5 | spine01 | e3 | 169.254.2.250/30 | leaf03 | e1 | 169.254.2.249/30 |
c6 | spine02 | e3 | 169.254.2.254/30 | leaf03 | e2 | 169.254.2.253/30 |
c7 | spine01 | e4 | 169.254.3.250/30 | leaf04 | e1 | 169.254.3.249/30 |
c8 | spine02 | e4 | 169.254.3.254/30 | leaf04 | e2 | 169.254.3.253/30 |
按照上表规划配置各设备的互联接口,以leaf01的e1接口为例,其余接口按例配置:
interface Ethernet1 description dt:spine01 mtu 9214 no switchport ip address 169.254.0.249/30 no shutdown |
3.6 BGP配置
spine和leaf之间需要建立bgp链接,互相同步路由,以形成例如'source→ leaf01→ spine01→ leaf02→ destination'的可用路径。首先为spine和leaf交换机规划BGP AS NUMBER:
设备 | BGP AS NUMBER |
---|---|
spine01 | 100000 |
spine02 | 100000 |
leaf01 | 200001 |
leaf02 | 200002 |
leaf03 | 200003 |
leaf04 | 200004 |
以spine01和leaf01之间建立BGP链接为例,对交换机进行BGP相关配置:
# spine01 router bgp 100000 # BGP AS NUMBER router-id 10.10.10.10 # loopback ip maximum-paths 8 # 设置等价路由最大条数 redistribute connected # 向邻居通告直连路由(如互联接口的169.254.x.x和环回口的10.10.10.x) # 对每个leaf邻居进行如下配置 neighbor 169.254.0.249 remote-as 200001 # bgp邻居的ip地址和AS NUMBER neighbor 169.254.0.249 ebgp-multihop 255 # 设置bgp邻居ip的最大跳数(邻居ip为非直连接口时需配置) |
# leaf01 router bgp 200001 # BGP AS NUMBER router-id 10.10.10.12 # loopback ip maximum-paths 8 # 设置等价路由最大条数 redistribute connected # 向邻居通告直连路由(如互联接口的169.254.x.x和环回口的10.10.10.x) redistribute static # 向邻居通告静态路由 # 对每个spine邻居进行如下配置 neighbor 169.254.0.250 default-originate # 向邻居通告本设备的默认路由(仅在border leaf上配置这一条) neighbor 169.254.0.250 remote-as 100000 # bgp邻居的ip地址和AS NUMBER #如果邻居ip不是直连接口的ip,还需要加上下面的配置(本例中都是使用的直连接口ip,故不必须下面这一条配置) #neighbor 169.254.0.250 ebgp-multihop 255 # 设置bgp邻居ip的最大跳数(邻居ip为非直连接口时需配置) |
上面的配置建立了spine01和leaf01之间的bgp链接,下面验证bgp链接是否成功建立:
-
在spine上查看bgp状态:
spine01#sh ip bgp sum BGP summary information for VRF default Router identifier 10.10.10.10, local AS number 100000 Neighbor Status Codes: m - Under maintenance Neighbor V AS MsgRcvd MsgSent InQ OutQ Up/Down State PfxRcd PfxAcc 169.254.0.249 4 200001 2412 2700 0 0 19:49:12 Estab 6 6
-
在leaf01上查看bgp状态:
leaf01#sh ip bgp sum BGP summary information for VRF default Router identifier 10.10.10.12, local AS number 200001 Neighbor Status Codes: m - Under maintenance Neighbor V AS MsgRcvd MsgSent InQ OutQ Up/Down State PfxRcd PfxAcc 169.254.0.250 4 100000 1208 973 0 0 16:00:08 Estab 21 21
-
在spine01上查看bgp路由条目,可见已接收到从leaf01上同步过来的bgp路由条目:
spine01#sh ip route bgp VRF: default Codes: C - connected, S - static, K - kernel, O - OSPF, IA - OSPF inter area, E1 - OSPF external type 1, E2 - OSPF external type 2, N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type2, B I - iBGP, B E - eBGP, R - RIP, I L1 - IS-IS level 1, I L2 - IS-IS level 2, O3 - OSPFv3, A B - BGP Aggregate, A O - OSPF Summary, NG - Nexthop Group Static Route, V - VXLAN Control Service, DH - DHCP client installed default route, M - Martian, DP - Dynamic Policy Route, L - VRF Leaked Gateway of last resort: B E 0.0.0.0/0 [200/0] via 169.254.0.249, Ethernet1 B E 10.10.10.12/32 [200/0] via 169.254.0.249, Ethernet1 B E 169.254.0.252/30 [200/0] via 169.254.0.249, Ethernet1
-
在leaf01上查看bgp路由条目,可见已接收到从spine01同步过来的bgp路由条目:
leaf01#sh ip route bgp VRF: default Codes: C - connected, S - static, K - kernel, O - OSPF, IA - OSPF inter area, E1 - OSPF external type 1, E2 - OSPF external type 2, N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type2, B I - iBGP, B E - eBGP, R - RIP, I L1 - IS-IS level 1, I L2 - IS-IS level 2, O3 - OSPFv3, A B - BGP Aggregate, A O - OSPF Summary, NG - Nexthop Group Static Route, V - VXLAN Control Service, DH - DHCP client installed default route, M - Martian, DP - Dynamic Policy Route, L - VRF Leaked B E 10.10.10.10/32 [200/0] via 169.254.0.250, Ethernet1 B E 169.254.1.248/30 [200/0] via 169.254.0.250, Ethernet1 B E 169.254.2.248/30 [200/0] via 169.254.0.250, Ethernet1 B E 169.254.3.248/30 [200/0] via 169.254.0.250, Ethernet1
3.7 小结
本节内容主要介绍了spine leaf网络的拓扑结构,网络地址规划,接口地址配置和BGP配置。 完成这些步骤后,spine和leaf交换机之间的互联就算完成了,接下来的章节,我们将在此基础上加入物理主机,看一下如何将物理服务器加入spine leaf网络,并进行互联配置。