Perilaku AS-PATH ACL yang tidak terduga

10

4 router, lingkungan lab. Mencoba memfilter rute yang berasal dari AS2 (bukan yang memanfaatkan AS2 sebagai transit). Proses yang saya ikuti adalah:

Bakers#sh ip bgp regex _2_
BGP table version is 41, local router ID is 33.33.33.33
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
              r RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path
*> 2.2.2.0/24       192.168.23.2             0             0 2 i
*  4.4.4.0/24       192.168.23.2                           0 2 1 i
*> 22.22.22.0/24    192.168.23.2             0             0 2 i
*  44.44.44.0/24    192.168.23.2                           0 2 1 i
*> 192.168.12.0     192.168.23.2             0             0 2 i
*  192.168.14.0     192.168.23.2                           0 2 1 i
*  192.168.23.0     192.168.23.2             0             0 2 i

Bakers#sh ip bgp regex _2$
BGP table version is 41, local router ID is 33.33.33.33
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
              r RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path
*> 2.2.2.0/24       192.168.23.2             0             0 2 i
*> 22.22.22.0/24    192.168.23.2             0             0 2 i
*> 192.168.12.0     192.168.23.2             0             0 2 i
*  192.168.23.0     192.168.23.2             0             0 2 i

Pada titik ini, saya berpikir, OK - miliki apa yang saya butuhkan untuk membuat ACL as-path untuk menyaring hal-hal yang berasal dari AS2 sejak pencarian regex memeriksa per di atas. Saya membuat dan menerapkan yang berikut:

Bakers#sh run | i as-path
ip as-path access-list 10 deny _2$
ip as-path access-list 10 permit .*
router bgp 3
 no synchronization
 bgp log-neighbor-changes
 <truncated>
 neighbor 192.168.23.2 remote-as 2
 neighbor 192.168.34.4 remote-as 4
 neighbor 192.168.34.4 filter-list 10 out
 no auto-summary

Saya kemudian akan mengharapkan rute yang diiklankan untuk meniru output 'sh ip bgp regex 2 ' dari sebelumnya (memberi saya hasil yang diinginkan), sans output rute dengan rute 'sh ip bgp regex _2 $' rute. Sayangnya, saya mendapatkan ini:

Bakers#sh ip bgp neigh 192.168.34.4 advertised-routes 
BGP table version is 41, local router ID is 33.33.33.33
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
              r RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path
*> 3.3.3.0/24       0.0.0.0                  0         32768 i
*> 33.33.33.0/24    0.0.0.0                  0         32768 i
*> 192.168.23.0     0.0.0.0                  0         32768 i
*> 192.168.34.0     0.0.0.0                  0         32768 i

Ini memfilter semua rute yang berasal dari AS1 (artinya downstream, router itu tidak bisa lagi menggunakan AS3 sebagai transit ke AS1 - melanggar case use saya). Apa yang kulewatkan di sini?

AL
sumber
Hanya tembakan dalam kegelapan, tetapi apakah Anda sudah mencoba rute-peta bukannya daftar filter?
Ron Trunk
@RonTrunk - Tidak Pak, belum, tapi saya akan mencobanya segera setelah waktu mengizinkan. Selain menjadi alternatif yang valid, apakah Anda pernah mencatat perilaku daftar-filter berbeda dari perilaku rute-peta? Saya pikir ini mungkin perilaku buggy.
AL
Apakah ada jawaban yang membantu Anda? jika demikian, Anda harus menerima jawabannya sehingga pertanyaan tidak terus muncul selamanya, mencari jawaban. Atau, Anda bisa memberikan dan menerima jawaban Anda sendiri.
Ron Maupin
1
@AL sesuai saran @ Ron, AS path regex di iOS diterapkan menggunakan rute-peta. Untuk penggunaan akses daftar-as-path Andaroute-map BLAH permit 10; match as-path 10;
jwbensley

Jawaban:

3

Rute apa yang diiklankan sebelum menambahkan filter? BGP saya sangat berkarat, tapi saya tidak ingat rute iklan BGP yang tidak ada di FIB (alias rute "terbaik".) Dengan demikian, satu-satunya rute yang diinstal dari AS2 adalah asal AS2 ( $ 2 $ ); rute transit ( _2_ ) tidak diinstal, jadi tidak diiklankan.

Ricky Beam
sumber
Butuh beberapa saat tapi kami sampai di sana - terima kasih!
AL