Начинаем работать с атрибутами, и сперва рассмотрим как управлять весом (weight атрибут).
Напомню, что weight это Cisco атрибут, который используется тогда, когда роутер, который используется как роутер для выхода из своей AS имеет два и более выходов из нее, и с помощью веса можно указать какой линк для выхода будет использоваться.
Соответственно, чем больше вес, тем выше приоритет этого интерфейса.
Давайте нарисуем простую топологию:
мы ее уже с Вами использовали, только теперь между AS2 и AS3 будет тоже BGP, а не OSPF и BGP Backdoor.
Будем настраивать веса на роутере AS1, именно он у нас имеет два линка к AS1 и к AS3.
Давайте укажем что вес у f1/0 больше чем у f1/1, напомню что по умолчанию вес равен нулю (посмотреть можно через sh ip bgp, поле weight).
Итак, мы настроим чтоб все у нас бегало через AS2, в том числе и к сетке 1.1.3.0/24, которая принадлежит AS3. Делается это просто:
AS1(config)#do sh run | s bgp
router bgp 1
no synchronization
bgp router-id 100.100.100.100
bgp log-neighbor-changes
bgp dampening route-map DAMP
network 1.1.2.0 mask 255.255.255.0
network 1.1.3.0 mask 255.255.255.0
network 1.1.100.0 mask 255.255.255.0
network 111.111.111.111 mask 255.255.255.255
neighbor 1.1.2.2 remote-as 2
neighbor 1.1.2.2 capability orf prefix-list receive
neighbor 1.1.2.2 weight 100
neighbor 1.1.3.3 remote-as 3
neighbor 1.1.3.3 description AS3
neighbor 1.1.100.100 remote-as 100
neighbor 1.1.100.100 description AS100
neighbor 200.200.200.200 remote-as 2
neighbor 200.200.200.200 description toR2
neighbor 200.200.200.200 ebgp-multihop 2
neighbor 200.200.200.200 update-source Loopback1
no auto-summary
AS1(config)#
Здесь мы просто на нейборе прописали вес: neighbor 1.1.2.2 weight 100
Чтобы вес применился к маршрутам нам нужно переполучить апдейты, выбираем любой путь для этого, а их было аж 4, которые мы с Вами рассмотрели.
Нас интересует поле weight, видим, что оно изменилось и стало 100, соответственно так же видим, что лучший маршрут до 10.0.3.0/24 у нас так же идет через 1.1.2.2, то есть через AS2. Итак, мы на основе атрибута weight сделали приоритет.
Мы прописали просто на нейборе вес, но это можно делать так же и через route-map, где можно прописать дополнительные параметры, например для маршрутов из какой-то определенной AS ставим такой вес, а для других, другой, и так далее.
Общий вид простой:
neighbor 1.1.1.1 route-map WEIGHT
exit
route-map WEIGHT permit 10
match as-path 1
set weight 200
Таким образом можно делать очень гибкое управление атрибутами.