Данным способом составления 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 то все прошло нормально и дебаг нужно выключить.