We're Sorry, Full Content Access is for Members Only...

If you like to keep on reading, Become a Member Now! Here is Why:

  • Learn any CCNA, CCNP and CCIE R&S Topic. Explained As Simple As Possible.
  • Try for Just $1. The Best Dollar You've Ever Spent on Your Cisco Career!
  • Full Access to our 529 Lessons. More Lessons Added Every Week!
  • Content created by Rene Molenaar (CCIE #41726)

 

265 New Members signed up the last 30 days!

 
satisfaction-guaranteed

100% Satisfaction Guaranteed!
You may cancel your monthly membership at any time.
No Questions Asked!


Tags:


Notable Replies

  1. system says:

    Using a route-map is perfectly correct, but to be more complete you can always show that:

    neighbor x.x.x.x filter-list 1 in

    would do the same work. (Of course, the filter could be applied outbound if required by some design)

    Router(config-router-af)#neighbor 1.1.1.1 filter-list ?
        AS path access list
  2. Rene,

    Very helpful in understanding these complex expressions. However, I do have question about the following which is configured on our internet hubs by our senior engineers.

    AS path access list 20
         deny ^10886_209_
         permit ^10886_

    ^10886_209_ It means deny prefixes from 10886 and any prefixes passes through 209
    is that correct?
    permit ^10886_ it means permit prefixes from 10886 and what does _ means at the end.
    Please clarify

    Thanks
    Hamood

  3. Hi Hamood,

    The _ matches the white space between the AS numbers. For example take a look at this output of a BGP table:

    Network Next Hop Metric LocPrf Weight Path
    * 1.0.0.0/24 203.202.143.34 0 7474 15169 i
    * 202.139.124.130 1 0 7474 15169 i
    * 203.13.132.29 0 7474 15169 i

    In the AS path there's a space between the AS numbers, we need to use the _ to match this.

    Let's look at your example:

    deny ^10886_209_

    The ^ indicates the beginning of the AS path, so AS 10886 is an AS that is directly connected to yours. Behind 10886 there is AS 209.

    This statement denies prefixes that you learn from AS 10886 and that AS 10886 has learned from AS 209. It doesn't matter where AS 209 learned it from...

    The permit ^10886_ statement means that you permit everything else that you learn from AS 10886.

    Does that help?

    Rene

  4. Hi Rene,

    Need your expertise on this one... I have a regex script to filter prep-pended AS's. The issue is when I test it with the "sh ip bgp regexp" cmd; no pre-pended routes are tagged (rightly fully so, because they aren't configured yet..). So my thought is the script is functional, but when I apply the access list w/ as-path filter all of my routes disappear...

    R1#sh ip bgp | B Net
    Network Next Hop Metric LocPrf Weight Path
    *> 1.0.0.0 0.0.0.0 0 32768 i
    *> 2.0.0.0 12.1.1.2 0 0 200 i
    *> 3.0.0.0 12.1.1.2 0 200 300 i
    *> 4.0.0.0 12.1.1.2 0 200 300 400 i

    TESTED BEFORE SCRIPT APPLIED:

    R1#sh ip bgp regexp ^([0-9]+)(_\1)+$
    R1#***NO ROUTES***

    Applied the as-path acl: "ip as-path access-list 1 permit ^([0-9]+)(_\1)+$"

    R1#sh run | s bgp
    router bgp 100
    bgp log-neighbor-changes
    network 1.0.0.0
    neighbor 12.1.1.2 remote-as 200
    neighbor 12.1.1.2 filter-list 1 in
    
    R1#sh ip bgp | B Net
    Network Next Hop Metric LocPrf Weight Path
    *> 1.0.0.0 0.0.0.0 0 32768 i

    Now all routes are gone, AS200 nor any other AS has been prepened.

     

     

     

  5. Also wanted to add that I've tried changing the ACL to deny and added a "permit all" statement at the end. Still no joy...

    This one has me stumped, any help would be greatly appreciated!!

    Thanks!!

    Jon

Continue the discussion forum.networklessons.com

11 more replies

Participants