利用BGP路由的Community属性实现流量分担

2025-09-30 12:26:41

1、首先来介绍下网络拓扑图:路由器r1、r2、r3属于 AS 100并且内部运行ospf协议。r4属于AS 200。r5、6、7属于AS 300并且内部运行ospf协议。

本例中a路径:1.1.1.1 访问172.16.10.1 走 r1-r2-r4-r5-r7。b路径:1.1.1.1 访问172.16.20.1 走路径r1-r3-r4-r6-r7。介绍完拓扑图后接下来将为大家依次介绍每个路由器的配置!

利用BGP路由的Community属性实现流量分担

2、路由器r1的核心配置:

#

interface GigabitEthernet0/0/0

 ip address 10.0.12.1 255.255.255.0 

#

interface GigabitEthernet0/0/1

 ip address 10.0.13.1 255.255.255.0 

#

interface GigabitEthernet0/0/2

#

interface NULL0

#

interface LoopBack0

 ip address 1.1.1.1 255.255.255.255 

#

interface LoopBack10

 ip address 192.168.10.1 255.255.255.0 

#

interface LoopBack20

 ip address 192.168.20.1 255.255.255.0 

#

bgp 100

 router-id 1.1.1.1

 peer 10.0.12.2 as-number 100 

 peer 10.0.13.3 as-number 100 

 #

 ipv4-family unicast

  undo synchronization

  network 1.1.1.1 255.255.255.255 

  network 192.168.10.0 

  network 192.168.20.0 

  peer 10.0.12.2 enable

  peer 10.0.13.3 enable

#

ospf 1 router-id 1.1.1.1 

 area 0.0.0.0 

  network 1.1.1.1 0.0.0.0 

  network 10.0.12.0 0.0.0.255 

  network 10.0.13.0 0.0.0.255 

#

利用BGP路由的Community属性实现流量分担

3、路由器r2的核心配置:

#

interface GigabitEthernet0/0/0

 ip address 10.0.12.2 255.255.255.0 

#

interface GigabitEthernet0/0/1

 ip address 10.0.24.2 255.255.255.0 

#

interface GigabitEthernet0/0/2

#

interface NULL0

#

interface LoopBack0

 ip address 2.2.2.2 255.255.255.255 

#

bgp 100

 router-id 2.2.2.2

 peer 10.0.12.1 as-number 100 

 peer 10.0.24.4 as-number 200 

 #

 ipv4-family unicast

  undo synchronization

  network 2.2.2.2 255.255.255.255 

  peer 10.0.12.1 enable

  peer 10.0.24.4 enable

#

ospf 1 router-id 2.2.2.2 

 area 0.0.0.0 

  network 2.2.2.2 0.0.0.0 

  network 10.0.12.0 0.0.0.255 

  network 10.0.24.0 0.0.0.255 

#

路由器r3的核心配置:

#

interface GigabitEthernet0/0/0

 ip address 10.0.34.3 255.255.255.0 

#

interface GigabitEthernet0/0/1

 ip address 10.0.13.3 255.255.255.0 

#

interface GigabitEthernet0/0/2

#

interface NULL0

#

interface LoopBack0

 ip address 3.3.3.3 255.255.255.255 

#

bgp 100

 router-id 3.3.3.3

 peer 10.0.13.1 as-number 100 

 peer 10.0.34.4 as-number 200 

 #

 ipv4-family unicast

  undo synchronization

  network 3.3.3.3 255.255.255.255 

  peer 10.0.13.1 enable

  peer 10.0.34.4 enable

#

ospf 1 router-id 3.3.3.3 

 area 0.0.0.0 

  network 3.3.3.3 0.0.0.0 

  network 10.0.13.0 0.0.0.255 

  network 10.0.34.0 0.0.0.255 

#

利用BGP路由的Community属性实现流量分担

利用BGP路由的Community属性实现流量分担

4、路由器r4的核心配置:

#

interface GigabitEthernet0/0/0

 ip address 10.0.34.4 255.255.255.0 

#

interface GigabitEthernet0/0/1

 ip address 10.0.24.4 255.255.255.0 

#

interface GigabitEthernet4/0/0

 ip address 10.0.46.4 255.255.255.0 

#

interface GigabitEthernet4/0/1

 ip address 10.0.45.4 255.255.255.0 

#

interface LoopBack0

 ip address 4.4.4.4 255.255.255.255 

#

bgp 200

 router-id 4.4.4.4

 peer 10.0.24.2 as-number 100 

 peer 10.0.34.3 as-number 100 

 peer 10.0.45.5 as-number 300 

 peer 10.0.46.6 as-number 300 

 #

 ipv4-family unicast

  undo synchronization

  network 4.4.4.4 255.255.255.255 

  peer 10.0.24.2 enable

  peer 10.0.24.2 route-policy med10 export

  peer 10.0.24.2 advertise-community

  peer 10.0.34.3 enable

  peer 10.0.34.3 route-policy med20 export

  peer 10.0.34.3 advertise-community

  peer 10.0.45.5 enable

  peer 10.0.45.5 route-policy 10 import

  peer 10.0.46.6 enable

  peer 10.0.46.6 route-policy 10 import

#

route-policy 10 permit node 10 

 if-match community-filter 10 

 apply ip-address next-hop 10.0.45.5 

#

route-policy 10 permit node 20 

 if-match community-filter 20 

 apply ip-address next-hop 10.0.46.6 

#

route-policy med10 permit node 10 

 if-match community-filter 10 

 apply cost 100 

#

route-policy med10 permit node 20 

 if-match community-filter 20 

 apply cost 200 

#

route-policy med20 permit node 10 

 if-match community-filter 20 

 apply cost 100 

#

route-policy med20 permit node 20 

 if-match community-filter 10 

 apply cost 200 

#

ip community-filter 10 permit 300:100

ip community-filter 20 permit 300:200

#

利用BGP路由的Community属性实现流量分担

5、路由器r5核心配置:

#

interface GigabitEthernet0/0/1

 ip address 10.0.45.5 255.255.255.0 

#

interface GigabitEthernet0/0/2

 ip address 10.0.57.5 255.255.255.0 

#

interface NULL0

#

interface LoopBack0

 ip address 5.5.5.5 255.255.255.255 

#

bgp 300

 router-id 5.5.5.5

 peer 10.0.45.4 as-number 200 

 peer 10.0.57.7 as-number 300 

 #

 ipv4-family unicast

  undo synchronization

  network 5.5.5.5 255.255.255.255 

  peer 10.0.45.4 enable

  peer 10.0.45.4 advertise-community

  peer 10.0.57.7 enable

#

ospf 1 router-id 5.5.5.5 

 area 0.0.0.0 

  network 5.5.5.5 0.0.0.0 

  network 10.0.45.0 0.0.0.255 

  network 10.0.57.0 0.0.0.255 

#

路由器r6核心配置:

#

interface GigabitEthernet0/0/0

 ip address 10.0.46.6 255.255.255.0 

#

interface GigabitEthernet0/0/1

 ip address 10.0.67.6 255.255.255.0 

#

interface LoopBack0

 ip address 6.6.6.6 255.255.255.255 

#

bgp 300

 router-id 6.6.6.6

 peer 10.0.46.4 as-number 200 

 peer 10.0.67.7 as-number 300 

 #

 ipv4-family unicast

  undo synchronization

  network 6.6.6.6 255.255.255.255 

  peer 10.0.46.4 enable

  peer 10.0.46.4 advertise-community

  peer 10.0.67.7 enable

#

ospf 1 router-id 6.6.6.6 

 area 0.0.0.0 

  network 6.6.6.6 0.0.0.0 

  network 10.0.46.0 0.0.0.255 

  network 10.0.67.0 0.0.0.255 

#

利用BGP路由的Community属性实现流量分担

利用BGP路由的Community属性实现流量分担

6、路由器r7核心配置:

#

interface GigabitEthernet0/0/1

 ip address 10.0.67.7 255.255.255.0 

#

interface GigabitEthernet0/0/2

 ip address 10.0.57.7 255.255.255.0 

#

interface NULL0

#

interface LoopBack0

 ip address 7.7.7.7 255.255.255.255 

#

interface LoopBack10

 ip address 172.16.10.1 255.255.255.0 

#

interface LoopBack20

 ip address 172.16.20.1 255.255.255.0 

#

bgp 300

 router-id 7.7.7.7

 peer 10.0.57.5 as-number 300 

 peer 10.0.67.6 as-number 300 

 #

 ipv4-family unicast

  undo synchronization

  network 7.7.7.7 255.255.255.255 

  network 172.16.10.0 255.255.255.0 route-policy com10 

  network 172.16.20.0 255.255.255.0 route-policy com20 

  peer 10.0.57.5 enable

  peer 10.0.57.5 advertise-community

  peer 10.0.67.6 enable

  peer 10.0.67.6 advertise-community

#

ospf 1 router-id 7.7.7.7 

 area 0.0.0.0 

  network 7.7.7.7 0.0.0.0 

  network 10.0.57.0 0.0.0.255 

  network 10.0.67.0 0.0.0.255 

#

route-policy com10 permit node 10 

 apply community 300:100 

#

route-policy com20 permit node 10 

 apply community 300:200 

#

利用BGP路由的Community属性实现流量分担

7、配置好所有设备后我们在r4上查看172.16.10.0和172.16.20.0网段的community值:

<ar4>dis bgp routing-table 172.16.10.1

 BGP local router ID : 4.4.4.4

 Local AS number : 200

 Paths:   2 available, 1 best, 1 select

 BGP routing table entry information of 172.16.10.0/24:

 From: 10.0.45.5 (5.5.5.5)

 Route Duration: 01h13m49s  

 Direct Out-interface: GigabitEthernet4/0/1

 Original nexthop: 10.0.45.5

 Qos information : 0x0

 Community:<300:100>

 AS-path 300, origin igp, pref-val 0, valid, external, best, select, active, pre

 255

 Advertised to such 4 peers:

    10.0.45.5

    10.0.46.6

    10.0.24.2

    10.0.34.3

 BGP routing table entry information of 172.16.10.0/24:

 From: 10.0.46.6 (6.6.6.6)

 Route Duration: 01h13m39s  

 Relay IP Nexthop: 0.0.0.0

 Relay IP Out-Interface: GigabitEthernet4/0/1

 Original nexthop: 10.0.45.5

 Qos information : 0x0

 Community:<300:100>

通过上面输出的信息可以看到172.16.10.1的Community属性值是<300:100>!

利用BGP路由的Community属性实现流量分担

8、最后我们在r1上使用tracert命令查看路径是否如我们所设置的那样:

<ar1>tracert -a 1.1.1.1 172.16.10.1

 traceroute to  172.16.10.1(172.16.10.1), max hops: 30 ,packet length: 40,press 

CTRL_C to break 

 1 10.0.12.2 20 ms  20 ms  20 ms 

 2 10.0.24.4 20 ms  30 ms  30 ms 

 3 10.0.45.5 30 ms  30 ms  30 ms 

 4 10.0.57.7 30 ms  40 ms  40 ms 

<ar1>tr

<ar1>tracert -a 1.1.1.1 172.16.20.1

 traceroute to  172.16.20.1(172.16.20.1), max hops: 30 ,packet length: 40,press 

CTRL_C to break 

 1 10.0.13.3 20 ms  20 ms  20 ms 

 2 10.0.34.4 20 ms  30 ms  20 ms 

 3 10.0.46.6 30 ms  30 ms  40 ms 

 4 10.0.67.7 30 ms  20 ms  30 ms 

输出结果与路由器的输出结果路线均正确,配置成功!

利用BGP路由的Community属性实现流量分担

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢