BGP 双平面

BGP双平面架构实现目标:

西安和东莞两地之间的业务流量和办公流量走不同的运营商。业务流量走中国移动,办公流量走中国电信。两大运营商就是两个平面,当A(B)平面出现故障时,数据就可以走B(A)平面,实现双平面之间互为备份。平面内当一条链路出现故障时,还有备份链路可以使用。这样保证了西安和东莞两地之间数据传输可靠。

BGP双平面架构区域规划:

西安为AS1,北京A、成都A、深圳A、上海A的中国移动为A平面属于AS100,北京B、成都B、深圳B、上海B的中国电信为B平面属于AS200,东莞为AS2。

实现技术:IGP协议、BGP协议、MPLS协议。

IGP协议用于AS内路由传递,MPLS协议用于传递BGP数据。

BGP协议传递不同AS之间的路由信息。并使用BGP协议的团体属性为业务流量和办公流量打上不同的标签,抓取路由做策略。

A平面上基础配置:BJ-A为例

router bgp 100

 bgp router-id 2.2.2.2

 bgp log-neighbor-changes

 neighbor 100 peer-group

 neighbor 100 remote-as 100

 neighbor 100 update-source Loopback0

 neighbor 100 next-hop-self

 neighbor 100 send-community both

 neighbor 3.3.3.3 peer-group 100

 neighbor 4.4.4.4 peer-group 100

 neighbor 5.5.5.5 peer-group 100

 neighbor 10.12.1.1 remote-as 1

 neighbor 10.12.1.1 send-community both

 neighbor 10.26.1.2 remote-as 200

 neighbor 10.26.1.2 send-community both

利用前缀列表抓取路由           

XA#show ip prefix-list

ip prefix-list bg: 1 entries

   seq 5 permit 10.100.2.0/24

ip prefix-list yw: 1 entries

   seq 5 permit 10.100.1.0/24

   使用 route-map 给匹配路由打上团体标记

route-map COMM permit 10

 match ip address prefix-list yw

 set community 1:1

route-map COMM permit 20

 match ip address prefix-list bg

 set community 2:1

BGP的团体属性是可选传递属性,但默认是不传递的需要手动开启:send-community both

将匹配路由的标记发送出去。

XA#show run | s bgp

router bgp 1

 bgp router-id 1.1.1.1

 bgp log-neighbor-changes

 network 10.100.1.0 mask 255.255.255.0

 network 10.100.2.0 mask 255.255.255.0

 neighbor 10.12.1.2 remote-as 100

 neighbor 10.12.1.2 send-community both

 neighbor 10.12.1.2 route-map COMM out

 neighbor 20.18.1.2 remote-as 200

 neighbor 20.18.1.2 send-community both

 neighbor 20.18.1.2 route-map COMM out

查看结果:

路由10.100.1.1 的团体值为65537,和我配置的1:1不同,因为设备默认是十进制格式显示团体值,要显示为AA:NN(AA为1-65535的16比特的十进制AS号,NN为1-65400的16比特的十进制数。)需要手动修改显示格式:

 #ip bgp-community new-format

     就可以显示为Community : 1:1

源头策略:利用BGP的weight属性使10.100.1.0/24和10.200.1.0/24 走A平面,10.100.2.0/24和10.200.2.0/24 走B平面。

使用 community-list 扩展列表抓取团体标记为“1:”和“2:”的路由。

XA#show ip community-list

Named Community expanded list A

    permit ^1:*

Named Community expanded list B

    permit ^2:*

 

使用route-map 将匹配路由的weight值设为100,放过不匹配路由。

route-map A, permit, sequence 10

  Match clauses:

    community (community-list filter): A

  Set clauses:

    weight 100

  Policy routing matches: 0 packets, 0 bytes

route-map A, permit, sequence 20

  Match clauses:

  Set clauses:

  Policy routing matches: 0 packets, 0 bytes

route-map B, permit, sequence 10

  Match clauses:

    community (community-list filter): B

  Set clauses:

    weight 100

  Policy routing matches: 0 packets, 0 bytes

route-map B, permit, sequence 20

  Match clauses:

  Set clauses:

  Policy routing matches: 0 packets, 0 bytes

 

在BGP 中实行route-map (weight 只能在本路由器上作用,在in 方向才会生效)

 neighbor 10.12.1.2 route-map A in

 neighbor 20.18.1.2 route-map B in

这是我在西安做的,东莞上也做相同的配置。

传输策略:双平面之间实现互为备份,平面内实现线路冗余。

          这里主要是实现业务流量在不能到达A平面时,能通过B平面再回到A平面传输。办公流量在不能到达B平面时,能通过A平面再回到B平面上传输。

使B平面数据回到B平面传输:

抓取B平面的路由

BJ-A#show ip community-list

Named Community expanded list B

使用route-map做策略

BJ-A#show route-map

route-map B, permit, sequence 10

  Match clauses:

    community (community-list filter): B

  Set clauses:

    weight 100

  Policy routing matches: 0 packets, 0 bytes

route-map B, permit, sequence 20

  Match clauses:

  Set clauses:

  Policy routing matches: 0 packets, 0 bytes

BGP中实施策略:

neighbor 10.26.1.2 route-map B in

 

使A平面流量回到A平面:

抓取A平面路由

BJ-B#show ip community-list

Named Community expanded list A

    permit ^1:*

使用route-map做策略

BJ-B#show route-map

route-map A, permit, sequence 10

  Match clauses:

    community (community-list filter): A

  Set clauses:

    weight 100

  Policy routing matches: 0 packets, 0 bytes

route-map A, permit, sequence 20

  Match clauses:

  Set clauses:

  Policy routing matches: 0 packets, 0 bytes

在BGP 中实施策略

 neighbor 10.26.1.1 route-map A in

 

检测

1.北京A出现故障:

2.成都A出现故障

3.北京A和上海A都出现故障

总结:实验实现了设计要求.做这类配置较多的实验时,需要提前设计好,每完成一步都要检查。防止中间漏掉一些小的细节或者错误配置导致实验失败。。。

 

 

 

 

  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值