Transiting
Michael McConnell
michael at winkstreaming.com
Sun Mar 26 18:32:47 CEST 2017
Thank you very much for that example and output. I’ve been leading towards bgp_path.prepend as I am getting BGP.as_path as blank.
show route all 10.10.10.10/24
10.10.10.10/24 via 192.168.1.1 on bond0 [border7 20:40:33] * (100) [AS65999i]
Type: BGP unicast univ
BGP.origin: IGP
BGP.as_path: 714 2914 20473 2828
BGP.next_hop: 10.10.10.10
BGP.local_pref: 100
BGP.community: (65000,475) (65050,214)
unreachable [edge140 20:45:45 from 192.168.1.120] (100/-) [i]
Type: BGP unicast univ
BGP.origin: IGP
BGP.as_path:
BGP.next_hop: 192.168.1.120
BGP.local_pref: 100
To me it seemed like I needed to add a prepend to the path to have the parameter set. Your example now has me thinking i’ve got some more basic routing issue.
Thanks again for your comment
--
Michael McConnell
WINK Streaming;
email: michael at winkstreaming.com <mailto:michael at winkstreaming.com>
phone: +1 312 281-5433 x 7400
cell: +506 8706-2389
skype: wink-michael
web: http://winkstreaming.com <http://winkstreaming.com/>
> On Mar 26, 2017, at 10:16 AM, Alarig Le Lay <alarig at swordarmor.fr> wrote:
>
> On dim. 26 mars 09:08:25 2017, Michael McConnell wrote:
>> Hello all,
>>
>> We are running into an issue transiting a down stream ASN. E.g. Uplink
>> <-> Our ASN <-> Downlink ASN
>>
>> To me it seems we should only need to bgp_path.prepend our outbound
>> filter, however our uplink is dropping the as path when we run it that
>> way.
>>
>> Any suggestions as to what I am missing to carrier a downstream ASN
>> and prefixes to our uplinks?
>>
>> Thanks so much,
>> Mike
>
> Hi, why do you want to bgp_path.prepend? Your ASN will be automatically
> added in the path if you act as transit between upstream and downstream
> AS.
>
> Exemple:
>
> template bgp DOWNSTREAM {
> import keep filtered;
> export all;
> }
>
> function bgp_filter_customer_in (prefix customer_prefix) {
> if ! (net ~ customer_prefix) then return false;
> else return true;
> }
>
> filter bgp_filter_customer_petrus_in {
> if (bgp_filter_customer_in(2001:678:3cc::/48)) then accept;
> else reject "Prefix filtered for petrus";
> }
>
>
> protocol bgp bgp_petrus from DOWNSTREAM {
> local as 204092;
> description "BGP for petrus";
> neighbor 2a00:5884::25 as 206155;
> import keep filtered;
> import filter bgp_filter_customer_petrus_in;
> }
>
>
> And from another router, we see that:
> bird> show route all protocol bgp_grifon_nominoe
> 2a00:5884::/32 via 2001:7f8:b1::a on eth2 [bgp_grifon_nominoe 12:41:15] (100) [AS204092i]
> Type: BGP unicast univ
> BGP.origin: IGP
> BGP.as_path: 204092
> BGP.next_hop: 2001:7f8:b1::a fe80::215:17ff:fe39:f01a
> BGP.local_pref: 100
> 2001:678:3cc::/48 via 2001:7f8:b1::a on eth2 [bgp_grifon_nominoe 12:41:15] (100) [AS206155i]
> Type: BGP unicast univ
> BGP.origin: IGP
> BGP.as_path: 204092 206155
> BGP.next_hop: 2001:7f8:b1::a fe80::215:17ff:fe39:f01a
> BGP.local_pref: 100
>
> So, we have our prefix with just our ASN, and 2001:678:3cc::/48 with our
> and the customer ASN.
>
> --
> alarig
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://trubka.network.cz/pipermail/bird-users/attachments/20170326/7c416b91/attachment.html>
More information about the Bird-users
mailing list