1
0
mirror of https://github.com/bgp/bgpq4.git synced 2024-05-11 05:55:05 +00:00

Arista EOS Support (#35)

Add Arista EOS support

Thanks Brooks!

This adds support for Arista EOS using a new flag: -e. EOS shares a lot of similarities with IOS,
but there is a difference in the syntax of prefix-lists that I wanted to fix.

The difference can be seen with bgpq4 -S ARIN -4 -s AS36459, which returns:

no ip prefix-list NN
ip prefix-list NN seq 1 permit 192.30.252.0/22
ip prefix-list NN seq 2 permit 192.30.252.0/23
ip prefix-list NN seq 3 permit 192.30.252.0/24
ip prefix-list NN seq 4 permit 192.30.253.0/24
ip prefix-list NN seq 5 permit 192.30.254.0/24
ip prefix-list NN seq 6 permit 192.30.255.0/24

Interestingly, this syntax works fine in EOS, but EOS isn't able to handle the same syntax for ipv6
prefix-lists. Instead, the seq and permit/deny that compose the rule needs to be inside the prefix-list
block.

Now bgpq4 -S ARIN -4 -e AS36459 generates:

no ip prefix-list NN
ip prefix-list NN
    seq 1 permit 192.30.252.0/22
    seq 2 permit 192.30.252.0/23
    seq 3 permit 192.30.252.0/24
    seq 4 permit 192.30.253.0/24
    seq 5 permit 192.30.254.0/24
    seq 6 permit 192.30.255.0/24
This commit is contained in:
Brooks Swinnerton
2020-12-23 10:07:23 -05:00
committed by GitHub
parent 884a982718
commit d000627465
5 changed files with 93 additions and 6 deletions

View File

@ -7,7 +7,7 @@ SYNOPSIS
--------
```
bgpq4 [-h host[:port]] [-S sources] [-Ez] [-f asn | -F fmt | -G asn | -t] [-46ABbDdJjNnpsUX] [-a asn] [-r len] [-R len] [-m max] [-W len] OBJECTS [...] EXCEPT OBJECTS
bgpq4 [-h host[:port]] [-S sources] [-Ez] [-f asn | -F fmt | -G asn | -t] [-46ABbDdeJjNnpsUX] [-a asn] [-r len] [-R len] [-m max] [-W len] OBJECTS [...] EXCEPT OBJECTS
```
DESCRIPTION
@ -54,6 +54,10 @@ Generate extended access-list (Cisco) or policy-statement term using
route-filters (Juniper), [ip|ipv6]-prefix-list (Nokia) or prefix-filter
(OpenBGPD)
#### -e
Generate output in Arista EOS format.
#### -f `AS number`
Generate input as-path access-list for adjacent as `AS number`.