Hi all,
I have a doubt about the bellow scenario, where the ISP1 use eBGP
sessions to its peers and is a BGP Transit AS.
NSP 1 ------------------ ISP 1 Router2 ----------- NSP 2
> >
> >
> >
> annunce /21 |
> >
Customer1 --------------- ISP 1 Router1
announce /20
The "Customer1" is client on both ISPs (ISP1 and NSP1) and have an /20
IP prefix. To NSP1, it announce two /21 prefixes. To ISP1, it announce
a /20 prefix. If traffic comes from NSP 2 (connected only to ISP 1) to
Customer1, the ISP 1 Routers try to send data over NSP 1, ignoring the
Custormer1->ISP1 link.
To solve this question, an solution that I found is filter Customer1
prefixes in BGP session between NSP1 and ISP1 Router2. But this don't
appear scalable...
Is this solution right ? What is the better solution for this
scenario? How large ISPs solve this kind of problem?
Thanks,
Rafael
The more specific /21's are winning over the /20, so they will always be preferred by default. If you want to change that, you could announce the /20 to NSP1, or announce the /21's to ISP1.
Mike
Hi all,
I have a doubt about the bellow scenario, where the ISP1 use eBGP
sessions to its peers and is a BGP Transit AS.
NSP 1 ------------------ ISP 1 Router2 ----------- NSP 2
> >
> annunce /21 |
> >
Customer1 --------------- ISP 1 Router1
announce /20
The "Customer1" is client on both ISPs (ISP1 and NSP1) and have an /20
IP prefix. To NSP1, it announce two /21 prefixes. To ISP1, it announce
a /20 prefix. If traffic comes from NSP 2 (connected only to ISP 1) to
Customer1, the ISP 1 Routers try to send data over NSP 1, ignoring the
Custormer1->ISP1 link.
To solve this question, an solution that I found is filter Customer1
prefixes in BGP session between NSP1 and ISP1 Router2. But this don't
appear scalable...
longest match wins...
if you're customer 1
deaggregate the avertisement to isp 1 or re-aggregate the advertisement to nsp 1. either will achieve the same end.
if you're isp1 consider what customer 1 was trying to achieve by doing this. e.g. they're traffic engineering (or they are clueless) and theirfore have a vested interest in the current path.
Dear Rafael,
Is this solution right ? What is the better solution for this
scenario? How large ISPs solve this kind of problem?
communitie(filters) help to scale.
for example lambdanet communities:
remarks: Prepend communities to modify announcements to peers
remarks:
remarks: 13237:3811n announcements to AS12322 (Free)
remarks: 13237:3812n announcements to AS3356 (Level3)
remarks: 13237:3813n announcements to AS8220 (COLT)
remarks: 13237:3814n announcements to AS286 (KPN Eurorings)
remarks: 13237:3815n announcements to AS3303 (Swisscom)
remarks: 13237:3818n announcements to AS9121 (TurkTelekom)
remarks: 13237:3824n announcements to AS2914 (Verio)
remarks: 13237:3825n announcements to AS4766 (Korea Telecom)
remarks: 13237:3826n announcements to AS3491 (BtN)
remarks: 13237:3828n announcements to AS8928 (Interoute)
remarks: 13237:3830n announcements to AS1257 (Swipnet)
remarks: 13237:3831n announcements to AS3292 (TeleDanmark)
remarks: 13237:3832n announcements to AS3209 (Arcor)
remarks: 13237:3833n announcements to AS3320 (DTAG)
remarks: 13237:3835n announcements to AS6805 (Telefonica DE)
remarks: 13237:3836n announcements to AS8447 (Telekom AT)
remarks: 13237:3837n announcements to AS8881 (Versatel DE)
remarks: 13237:3838n announcements to AS13184 (Hansenet)
remarks: 13237:3855n announcements to AS6830 (Chello)
remarks: 13237:3860n announcements to AS3257 (Tiscali Int.)
remarks: 13237:3865n announcements to AS702 (MCI EU)
remarks: 13237:3866n announcements to AS3549 (Global Crossing)
remarks: 13237:3869n announcements to AS6453 (Tata/Teleglobe)
remarks: 13237:3870n announcements to AS20676 (QSC)
remarks: 13237:3876n announcements to AS2856 (BT UK)
remarks: 13237:3877n announcements to AS2119 (Telenor)
remarks: 13237:3891n announcements to AS1299 (TeliaSonera)
remarks: 13237:3892n announcements to AS6461 (Abovenet)
remarks:
remarks: with n = 0,1,2,3 meaning
remarks: n = 0 do not announce to peer
remarks: n = 1 prepend "AS13237"
remarks: n = 2 prepend "AS13237 AS13237"
remarks: n = 3 prepend "AS13237 AS13237 AS13237"
Kind regards,
Ingo Flaschberger