Добрый день. Перечитал много статей по этому вопросу, но что-то так и не работает. Смысл вот в чем, сам я cisco особо не работал (больше с FreeBSD - там же настраивал BGP на нескольких провов вполне успешно), никак не получается настроить мне BGP на 7206 с 2 провайдерами. Описываю проблему:
Была циска с одним провайдером А, сейчас подключили еще провайдера Б к этой же циске. Вроде примерно как на фре всё настроил, но не работает. Весь трафик идет через провайдера А. Если отключишь линк А, то инет в сети падает полностью, НО на самой циске трафик идет через провайдера Б. При включении линка А, некоторое время (пока не перестроится маршрут) весь инет со всей сети идет через провайдера Б, минуты через 3 весь трафик снова уходит в линк А. Наша сеть XX.XXX.228.0/22Есть подозрение, что не срабатывает Next-hop, т.к. show ip bgp neighbors по обоим операторам выдает
bg-is#show ip bgp neighbors ББ.ББ.69.254 advertised-routes
BGP table version is 1705457, local router ID is XX.XXX.228.1
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
r RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incompleteNetwork Next Hop Metric LocPrf Weight Path
*> XX.XXX.228.0/22 0.0.0.0 0 32768 iTotal number of prefixes 1
Конфиг циски (фейсы и BGP) GE0/0.1 - уход с циски в локалку, GE0/1 - приход провайдера Б, GE0/3 - приход провайдера А:
interface Null0
no ip unreachables
!
interface FastEthernet0/0
ip address 10.253.0.90 255.255.255.0
duplex full
speed auto
!
interface GigabitEthernet0/0
no ip address
no ip redirects
no ip proxy-arp
duplex full
speed 1000
media-type rj45
negotiation auto
no snmp trap link-status
no cdp enable
no mop enabled
hold-queue 150 in
hold-queue 150 out
!
interface GigabitEthernet0/0.1
description Main connection to NAT server (over 3560G port 16)
encapsulation dot1Q 11
ip address XX.XXX.228.49 255.255.255.248
no cdp enable
!
interface GigabitEthernet0/1
ip address ББ.ББ.69.9 255.255.255.0
no ip proxy-arp
duplex full
speed 1000
media-type rj45
negotiation auto
no mop enabled
hold-queue 150 in
hold-queue 150 out
!
interface GigabitEthernet0/3
ip address ААА.ААА.48.57 255.255.255.252
duplex full
speed 1000
negotiation auto
hold-queue 150 in
hold-queue 150 out
!
router bgp ZZZZ
bgp router-id XX.XXX.228.1
bgp log-neighbor-changes
neighbor ББ.ББ.69.254 remote-as БББББББ
neighbor ББ.ББ.69.254 description Б
neighbor АА.АА.48.58 remote-as АААААА
neighbor АА.АА.48.58 description А
!
address-family ipv4
neighbor ББ.ББ.69.254 activate
neighbor ББ.ББ.69.254 next-hop-self
neighbor ББ.ББ.69.254 prefix-list Б-IN in
neighbor ББ.ББ.69.254 prefix-list Б-OUT out
neighbor ББ.ББ.69.254 route-map BGP-SETPATH-Б out
neighbor АА.АА.48.58 activate
neighbor АА.АА.48.58 next-hop-self
neighbor АА.АА.48.58 prefix-list А-IN in
neighbor АА.АА.48.58 prefix-list А-OUT out
neighbor АА.АА.48.58 route-map BGP-SETPATH-А out
no auto-summary
no synchronization
network XX.XXX.228.0 mask 255.255.252.0
exit-address-family
!
ip forward-protocol nd
ip route 91.193.228.0 255.255.252.0 Null0
!
ip bgp-community new-format
!
ip prefix-list Б-OUT seq 5 permit XX.XXX.228.0/22
!
ip prefix-list Б-IN seq 5 permit 0.0.0.0/0 le 32
!
ip prefix-list А-IN seq 5 permit 0.0.0.0/0 le 32
!
ip prefix-list А-OUT seq 5 permit XX.XXX.228.0/22
!
route-map BGP-SETPATH-Б permit 10
!
route-map BGP-SETPATH-А permit 10
!
Некоторые Sh run:bg-is#sh ip bgp
BGP table version is 1705706, local router ID is ХХ.ХХХ.228.1
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
r RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incompleteNetwork Next Hop Metric LocPrf Weight Path
*> 1.0.0.0/24 АА.АА.48.58 0 20485 15169 i
* ББ.ББ.69.2 0 3.1689 42861 15169 i
*> 1.0.4.0/24 АА.АА.48.58 0 20485 174 7545 56203 i
* ББ.ББ.69.2 0 3.1689 42861 6939 7545 56203 i
*> 1.0.4.0/22 АА.АА.48.58 0 20485 174 7545 56203 i
* ББ.ББ.69.2 0 3.1689 42861 6939 7545 56203 i
*> 1.0.5.0/24 АА.АА.48.58 0 20485 174 7545 56203 i
* ББ.ББ.69.2 0 3.1689 42861 6939 7545 56203 i
*> 1.0.6.0/24 АА.АА.48.58 0 20485 174 7545 56203 ibg-is#sh ip bgp rib-failure
Network Next Hop RIB-failure RIB-NH Matches
ББ.ББ.69.0/24 ББ.ББ.69.254 Higher admin distance n/abg-is#sh ip bgp sum
BGP router identifier ХХ.ХХХ.228.1, local AS number ZZZZZ
BGP table version is 1706349, main routing table version 1706349
456499 network entries using 60257868 bytes of memory
908278 path entries using 47230456 bytes of memory
144830/72456 BGP path/bestpath attribute entries using 24331440 bytes of memory
129839 BGP AS-PATH entries using 5415028 bytes of memory
40 BGP community entries using 1160 bytes of memory
0 BGP route-map cache entries using 0 bytes of memory
0 BGP filter-list cache entries using 0 bytes of memory
Bitfield cache entries: current 1 (at peak 2) using 32 bytes of memory
BGP using 137235984 total bytes of memory
BGP activity 460391/3700 prefixes, 1365531/457252 paths, scan interval 60 secsNeighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd
ББ.ББ.69.254 4 3.1689 75741 37 1706346 0 0 00:34:24 454207
ААА.ААА.48.58 4 20485 152330 39 1706346 0 0 00:14:51 454070
bg-is#sh ip bgp 87.250.251.0
BGP routing table entry for 87.250.224.0/19, version 1483494
Paths: (2 available, best #1, table Default-IP-Routing-Table)
Not advertised to any peer
20485 13238, (aggregated by 13238 87.250.234.7)
ААА.ААА.48.58 from ААА.ААА.48.58 (10.77.0.17)
Origin IGP, localpref 100, valid, external, atomic-aggregate, best
3.1689 42861 13238, (aggregated by 13238 87.250.234.7)
ББ.ББ.69.2 from ББ.ББ.69.254 (ББ.ББ.69.254)
Origin IGP, localpref 100, valid, external, atomic-aggregate
Community: 42861:2300 42861:4210 42861:8000
bg-is#
bg-is#sh ip bgp ХХ.ХХХ.228.0
BGP routing table entry for ХХ.ХХХ.228.0/22, version 131583
Paths: (1 available, best #1, table Default-IP-Routing-Table)
Advertised to update-groups:
1 2
Local
0.0.0.0 from 0.0.0.0 (ХХ.ХХХ.228.1)
Origin IGP, metric 0, localpref 100, weight 32768, valid, sourced, local, best
> Если отключишь линк
> А, то инет в сети падает полностью, НО на самой циске
> трафик идет через провайдера Б. При включении линка А, некоторое время
> (пока не перестроится маршрут) весь инет со всей сети идет через
> провайдера Б, минуты через 3 весь трафик снова уходит в линк
> А.1. Отключаете А - весь апстрим уходит в Б
1.а) у провайдера А ваш префикс еще не удалился из апдейтов к его аплинкам, и они весело хохоча, присылают весь даунстрим по более короткому пути через А, где и дропается о ваш разорванный линк.
1.б) На самой циске траффик идет (вернее ответы на него), потому что циска посылает траффик от PA адреса WAN линка Б, который однозначно маршрутизируется из мира только через Б и доходит к ней
2. (При включении А..) что вполне логично, даунстрим переключается на него. (апстрим кстати может и остаться на Б, настройки у вас вроде симметричные)
3. а каково назначение -IN prefix-list -ов?
3.а
route-map BGP-SETPATH-Б permit 10
!
route-map BGP-SETPATH-А permit 10т.е. они никакой работы не выполняют?
> neighbor ББ.ББ.69.254 next-hop-self
> neighbor АА.АА.48.58 next-hop-selfзачем вам это? у вас же не iBGP peering
> bg-is#sh ip bgp rib-failure
> Network
> Next Hop
>
> RIB-failure RIB-NH Matches
> ББ.ББ.69.0/24 ББ.ББ.69.254
> Higher admin distance
> n/aпопробуйте установить weight или local preference на этот префикс, он то у вас должен точно идти с AS 3.1689, а раз он значится в sh ... rib-failure - видимо вы его получаете с AS 20485.
>Есть подозрение, что не срабатывает Next-hop, т.к. show ip bgp neighbors по обоим операторам выдает
>*> XX.XXX.228.0/22 0.0.0.0 0 32768 iнормально всё, так и должно быть
>[оверквотинг удален]
>> ББ.ББ.69.0/24 ББ.ББ.69.254
>> Higher admin distance
>> n/a
> попробуйте установить weight или local preference на этот префикс, он то у
> вас должен точно идти с AS 3.1689, а раз он значится
> в sh ... rib-failure - видимо вы его получаете с AS
> 20485.
>>Есть подозрение, что не срабатывает Next-hop, т.к. show ip bgp neighbors по обоим операторам выдает
>>*> XX.XXX.228.0/22 0.0.0.0 0 32768 i
> нормально всё, так и должно бытьвот я уже тоже попробовал собрать автоконфиг на subnets.ru - разница с моим конфигом (если не учитывать префикс листов) в weight и send-community
по next-hop - сначала у меня его не было, пробовал как настроено на quagga в другом городе.
>[оверквотинг удален]
>> вас должен точно идти с AS 3.1689, а раз он значится
>> в sh ... rib-failure - видимо вы его получаете с AS
>> 20485.
>>>Есть подозрение, что не срабатывает Next-hop, т.к. show ip bgp neighbors по обоим операторам выдает
>>>*> XX.XXX.228.0/22 0.0.0.0 0 32768 i
>> нормально всё, так и должно быть
> вот я уже тоже попробовал собрать автоконфиг на subnets.ru - разница с
> моим конфигом (если не учитывать префикс листов) в weight и send-community
> по next-hop - сначала у меня его не было, пробовал как настроено
> на quagga в другом городе.Кстати - а в RIPE вы обьекты свои обновили? указали, что у вас еще одна точка выхода появилась?
>[оверквотинг удален]
> bg-is#sh ip bgp ХХ.ХХХ.228.0
> BGP routing table entry for ХХ.ХХХ.228.0/22, version 131583
> Paths: (1 available, best #1, table Default-IP-Routing-Table)
> Advertised to update-groups:
> 1
> 2
> Local
> 0.0.0.0 from 0.0.0.0 (ХХ.ХХХ.228.1)
> Origin IGP, metric 0, localpref 100,
> weight 32768, valid, sourced, local, best1. Например
lg.telia.net
смотрите как вас telia видит с разных мест.
в теории должны быть узлы, с которы до вас хотя бы 2 маршрута один из которых best.2. смотрим что-кому мы анонсим
sh ip bgp nei АА.АА.48.58 ad
sh ip bgp nei ББ.ББ.69.254 ad3. смотрим что от кого получаем
sh ip bgp nei АА.АА.48.58 ro
sh ip bgp nei ББ.ББ.69.254 ro4. например на том же lg.telia.net смотрим как ваши провы друг с другом видны, например если B включен в A и это включение для него основное - то "и чо вы хотели??"
И есть довольно интересный инструмент:
https://stat.ripe.net/<prefix>/<len>#tabId=routing
например
https://stat.ripe.net/5.101.128.0/20#tabId=routing
Спасибо всем за участие. Как выяснилось действительно админы забыли добавить в RIPE новую AS-ку. Добавили, через 3 дня созвонились с вышестоящим - обновили фильтры и все заработало.