И последнее, что мы рассмотрим в теме community это link bandwidth.
BGP Link Bandwidth это фича, которая нужна для того что бы сделать балансировку трафика на выходе из вашей AS, причем балансировка будет делаться пропорционально исходя из bandwidth линка.
Для того что бы включить эту фичу необходимо в адресном семействе включить bgp dmzlink-bw и на каждом соседе прописать send-community both.
Давайте нарисуем топологию:
приводить настройки стандартные я больше не буду, все их и так уже выучили.
теперь посмотрим таблицу BGP на AS1:
Если мы посмотрим sh ip route то там мы увидим один маршрут. Если мы пропишем maximum-paths ibgp 2, то если AS-PATH одинаковой длинны, MED одинаковый, то будет работать два линка, но это не то, что мы хотим добиться, мы хотим добиться load-balance, то есть чтоб трафик ходил пропорционально своим BW.
Настриваем:
AS1:
router bgp 1
bgp log-neighbor-changes
neighbor 1.1.4.2 remote-as 1
neighbor 1.1.5.1 remote-as 1
maximum-paths ibgp 2
!
address-family ipv4
neighbor 1.1.4.2 activate
neighbor 1.1.4.2 send-community both
neighbor 1.1.5.1 activate
neighbor 1.1.5.1 send-community both
maximum-paths ibgp 2
no auto-summary
no synchronization
bgp dmzlink-bw
network 1.1.4.0 mask 255.255.255.0
network 1.1.5.0 mask 255.255.255.0
exit-address-family
Злесь мы а адресном семействе должны указать что импользовать dmzlink-bw и на соседей своих сделать send-community both.
на AS1.1 и AS1.2 тоже самое, но плюс на EBGP соседа скажем bgp dmzlink-bw:
router bgp 1
bgp log-neighbor-changes
neighbor 1.1.2.2 remote-as 10
neighbor 1.1.3.1 remote-as 1
neighbor 1.1.4.1 remote-as 1
maximum-paths 2
maximum-paths ibgp 2
!
address-family ipv4
neighbor 1.1.2.2 activate
neighbor 1.1.2.2 dmzlink-bw
neighbor 1.1.3.1 activate
neighbor 1.1.3.1 send-community
neighbor 1.1.3.1 next-hop-self
neighbor 1.1.4.1 activate
neighbor 1.1.4.1 send-community
neighbor 1.1.4.1 next-hop-self
maximum-paths 2
maximum-paths ibgp 2
no auto-summary
no synchronization
bgp dmzlink-bw
network 1.1.2.0 mask 255.255.255.0
network 1.1.3.0 mask 255.255.255.0
network 1.1.4.0 mask 255.255.255.0
exit-address-family
А так же укажим максимальное количество путей не только для ibgp, но и для ebgp.
В остальном настройки ничем не отличаются.
И после всего этого, у нас должен начать работать load-balancing, проверим на AS1:
AS1#sh ip route 10.10.10.10
Routing entry for 10.10.10.10/32
Known via «bgp 1», distance 200, metric 0
Tag 10, type internal
Last update from 1.1.4.2 17:42:36 ago
Routing Descriptor Blocks:
* 1.1.5.1, from 1.1.5.1, 17:42:36 ago
Route metric is 0, traffic share count is 1
AS Hops 1
Route tag 10
1.1.4.2, from 1.1.4.2, 17:42:36 ago
Route metric is 0, traffic share count is 10
AS Hops 1
Route tag 10AS1#
и
AS1#sh ip bgp 10.10.10.10
BGP routing table entry for 10.10.10.10/32, version 15
Paths: (2 available, best #1, table Default-IP-Routing-Table)
Multipath: iBGP
Not advertised to any peer
10
1.1.5.1 from 1.1.5.1 (1.1.3.1)
Origin IGP, metric 0, localpref 100, valid, internal, multipath, best
DMZ-Link Bw 12500 kbytes
10
1.1.4.2 from 1.1.4.2 (1.1.4.2)
Origin IGP, metric 0, localpref 100, valid, internal, multipath
AS1#
Фича DMZ-Link работает, что нам и требовалось.