Использование bgpq для составления bgp фильтров

Данным способом составления BGP фильтров я пользовался когда работал в компании «Телекол».

Рассмотрим на примере.

AS21425

neighbor 193.232.244.218 remote-as 21425
neighbor 193.232.244.218 peer-group peer-generic
neighbor 193.232.244.218 description RUSINFOCOM (peer)
neighbor 193.232.244.218 filter-list 4 in
# bgpq -h whois.radb.net -f 21425 -l 4 AS-RUSINFO
!generated with bgpq. http://www.lexa.ru/snar/bgpq/
no ip as-path access-list 4
ip as-path access-list 4 permit ^21425(_21425)*$
ip as-path access-list 4 permit ^21425(_[0–9]+)*_(21446|24244|24680|28752)$
# bgpq -h whois.radb.net -AP -l AS21425-in AS-RUSINFO
!generated with bgpq. http://www.lexa.ru/snar/bgpq/
no ip prefix-list AS21425-in
ip prefix-list AS21425-in permit 80.243.0.0/20
ip prefix-list AS21425-in permit 80.250.192.0/20
! overlayed by 80.250.192.0/20 in the same AS21425
! – ip prefix-list AS21425-in permit 80.250.193.0/24
! overlayed by 80.250.192.0/20 in the same AS21425
! – ip prefix-list AS21425-in permit 80.250.194.0/24
ip prefix-list AS21425-in permit 80.251.128.0/20
ip prefix-list AS21425-in permit 195.245.249.0/24
ip prefix-list AS21425-in permit 202.86.16.0/21
! overlayed by 202.86.16.0/21 in the same AS24244
! – ip prefix-list AS21425-in permit 202.86.19.0/24
! overlayed by 202.86.16.0/21 in the same AS24244
! – ip prefix-list AS21425-in permit 202.86.17.0/24
! overlayed by 202.86.16.0/21 in the same AS24244
! – ip prefix-list AS21425-in permit 202.86.16.0/22
ip prefix-list AS21425-in permit 202.86.31.0/24

О ключах:

AS-RUSINFO – собственно объект для которого строиться prefix-list

Внимательно смотрим на строчки overlayed by – если их проигнорировать, то мы зафильтруем more specific route, а охватывающий префикс может и не анонсироваться.

С учетом этого модифицируем руками его так:

no ip prefix-list AS21425-in
ip prefix-list AS21425-in permit 80.243.0.0/20
ip prefix-list AS21425-in permit 80.250.192.0/20 le 24
ip prefix-list AS21425-in permit 80.251.128.0/20
ip prefix-list AS21425-in permit 195.245.249.0/24
ip prefix-list AS21425-in permit 202.86.16.0/21 le 24
ip prefix-list AS21425-in permit 202.86.31.0/24

его нужно указать в дескрипшине:

ip prefix-list AS21425-in description AS-RUSINFO

После изминения конфига делаем на циске

mn
debug ip bgp 193.232.244.218 updates
clear ip bgp 193.232.244.218 in
nm

и смотрим дебаг если есть строчки DENIED due to, то разбираемся почему был зарезан анонс. если таких строчек не было, но есть update run completed то все прошло нормально и дебаг нужно выключить.