Howdy All, Refreshing our edge AS path filters, but starting from scratch to tidy them up. I'm just talking about generic AS path filtering, like bogons, that one would apply more or less everywhere, not about matching specific downstreams or upstreams etc.
What do others have, what have I missed? Also can anyone with better regex knowledge that me condense these? ! rfc7607 AS 0 disallowed _0_ ! rfc5398 ASNs for documentation/examples ! 64496 - 64511 ! 65536 - 65551 _(6449[6-9])_|_(6450[0-9])_|_(6451[0-1])_ _(6553[6-9])_|_(6554[0-9])_|_(6555[0-1])_ ! rfc6996 ASNs for Private Use ! 64512 - 65534 _(6451[2-9])_|_(645[2-9][0-9])_|_(64[6-9][0-9][0-9])_|_(65[0-4][0-9][0-9])_|_(655[0-2][0-9][0-9])_|_(6553[0-4])_ This one can be condensed into: _6(4(5(1[2-9]|[2-9][0-9])|[6-9][0-9][0-9])|5([0-4][0-9][0-9]|5([0-2][0-9]|3[0-5])))_ ! 4200000000 - 4294967294 _(42[0-8][0-9][0-9][0-9][0-9][0-9][0-9][0-9])_|_(429[0-3][0-9][0-9][0-9][0-9][0-9][0-9])_|_(4294[0-8][0-9][0-9][0-9][0-9][0-9])_|_(42949[0-5][0-9][0-9][0-9][0-9])_|_(429496[0-6][0-9][0-9][0-9])_|_(4294967[0-1][0-9][0-9])_|_(42949672[0-8][0-9])_|_(429496729[0-4])_ This one can be condensed into _42([0-8][0-9][0-9][0-9][0-9][0-9][0-9][0-9]|9([0-3][0-9][0-9][0-9][0-9][0-9][0-9]|4([0-8][0-9][0-9][0-9][0-9][0-9]|9([0-5][0-9][0-9][0-9][0-9]|6([0-6][0-9][0-9][0-9]|7([0-1][0-9][0-9]|2([0-8][0-9]|9[0-4]))))))_ ! rfc7300 - Last 32 & 64 bit ASNs are reserved ! 65535 ! 4294967295 _65535_ _4294967295_ Also the ASN range 65552-131071 is reserved on the IANA page but no RFC or indication as to why or if it will be allocated later? Is anyone filtering this range? _6555[2-9]_|_655[6-9][0-9]_|_65[6-9][0-9][0-9]_|_6[6-9][0-9][0-9][0-9]_|_[7-9][0-9][0-9][0-9][0-9]_|_1[0-2][0-9][0-9][0-9][0-9]_|_130[0-9][0-9][0-9]_|_1310[0-6][0-9]_|_13107[0-1]_ Cheers, James.