Logo

Arista EOS: eBGP with VeryCloud (AS198825) over GRE tunnel

Arista EOS: eBGP with VeryCloud (AS198825) over GRE tunnel

Complete Arista EOS configuration: GRE tunnel to VeryCloud, dual-stack eBGP IPv4 + IPv6 with peer-groups, prefix-lists, route-maps, MD5. For 7050X, 7280R, vEOS, and cEOS.

Introduction

Arista EOS shares 90% of Cisco syntax but with a few notable peculiarities: peer-groups encouraged for clean setups, slightly different AS-path syntax, and a CLI mode oriented toward DC. Most commands you know from Cisco IOS work as-is, but a few details differ.

This tutorial guides you for a Remote Transit IP VeryCloud on any recent Arista EOS (4.20+).

Prerequisites

  • An Arista switch/router (7050X, 7280R, vEOS, cEOS, etc.) with fixed public IP
  • VeryCloud's technical email with PUB_VC, 169.254.X.1, 2a0e:XXXX:XXXX::0, MD5
  • Your ASN
  • Your prefixes
  • Privileged CLI access
  • The interface facing Internet (e.g. Et1)

Step 1: Backup

enable
copy running-config startup-config
copy running-config flash:backup-pre-transit.cfg

Step 2: Enable IPv6 routing

configure
!
ipv6 unicast-routing
!
end

Step 3: Create the GRE tunnel

Arista EOS supports GRE tunnels since EOS 4.22 (check with show version). For older versions or pure-L3 MLP switches without hardware GRE support, use an upstream firewall/router for the tunnel and do BGP in pure L3 next.

configure
!
interface Tunnel0
   description "VeryCloud Remote Transit IP - GRE"
   ip address 169.254.X.2/30
   ipv6 address 2a0e:XXXX:XXXX::1/127
   mtu 1476
   ip tcp mss ceiling ipv4 1436
   tunnel mode gre
   tunnel source Ethernet1
   tunnel destination PUB_VC
   no shutdown
!
end

💡 If your Arista doesn't support hardware GRE (common on pure-L3 DC ToRs), put the tunnel on an upstream Linux box and just do BGP on the Arista pointing at the Linux-side peer-IPs.

Test:

end
show interfaces Tunnel0
ping 169.254.X.1
ping ipv6 2a0e:XXXX:XXXX::0

Step 4: Static routes for announcement

configure
!
ip route 192.0.2.0/24 Null0
ip route 198.51.100.0/24 Null0
ipv6 route 2001:DB8::/32 Null0
!
end

Step 5: Prefix-lists

configure
!
ip prefix-list TO-VC-V4 seq 10 permit 192.0.2.0/24
ip prefix-list TO-VC-V4 seq 20 permit 198.51.100.0/24

ipv6 prefix-list TO-VC-V6
   seq 10 permit 2001:DB8::/32

ip prefix-list NO-BOGONS seq 10 deny 0.0.0.0/8 le 32
ip prefix-list NO-BOGONS seq 20 deny 10.0.0.0/8 le 32
ip prefix-list NO-BOGONS seq 30 deny 127.0.0.0/8 le 32
ip prefix-list NO-BOGONS seq 40 deny 169.254.0.0/16 le 32
ip prefix-list NO-BOGONS seq 50 deny 172.16.0.0/12 le 32
ip prefix-list NO-BOGONS seq 60 deny 192.0.2.0/24 le 32
ip prefix-list NO-BOGONS seq 70 deny 192.168.0.0/16 le 32
ip prefix-list NO-BOGONS seq 80 deny 198.18.0.0/15 le 32
ip prefix-list NO-BOGONS seq 100 permit 0.0.0.0/0 le 24
!
end

Step 6: Route-maps

configure
!
route-map TO-VC permit 10
   match ip address prefix-list TO-VC-V4
!
route-map TO-VC6 permit 10
   match ipv6 address prefix-list TO-VC-V6
!
route-map FROM-VC permit 10
   match ip address prefix-list NO-BOGONS
!
route-map FROM-VC6 permit 10
!
end

Step 7: Peer-groups

Arista strongly encourages peer-groups:

configure
!
router bgp 65000
   router-id 192.0.2.1
   no bgp default ipv4-unicast
   bgp log-neighbor-changes
   timers bgp 30 90
   !
   neighbor VC-V4 peer-group
   neighbor VC-V4 remote-as 198825
   neighbor VC-V4 password MD5_SECRET
   neighbor VC-V4 ebgp-multihop 2
   neighbor VC-V4 maximum-routes 5000
   !
   neighbor VC-V6 peer-group
   neighbor VC-V6 remote-as 198825
   neighbor VC-V6 password MD5_SECRET
   neighbor VC-V6 ebgp-multihop 2
   neighbor VC-V6 maximum-routes 1000
   !
   neighbor 169.254.X.1 peer-group VC-V4
   neighbor 169.254.X.1 description "VeryCloud Transit v4"
   !
   neighbor 2a0e:XXXX:XXXX::0 peer-group VC-V6
   neighbor 2a0e:XXXX:XXXX::0 description "VeryCloud Transit v6"
!
end

💡 maximum-routes on Arista = equivalent of maximum-prefix on Cisco.

Step 8: Address-families

configure
!
router bgp 65000
   !
   address-family ipv4
      neighbor VC-V4 activate
      neighbor VC-V4 route-map FROM-VC in
      neighbor VC-V4 route-map TO-VC out
      network 192.0.2.0/24
      network 198.51.100.0/24
   !
   address-family ipv6
      neighbor VC-V6 activate
      neighbor VC-V6 route-map FROM-VC6 in
      neighbor VC-V6 route-map TO-VC6 out
      network 2001:DB8::/32
!
end

Step 9: Save

write

Step 10: Verify

show ip bgp summary

show ip bgp neighbors 169.254.X.1 received-routes
show ipv6 bgp neighbors 2a0e:XXXX:XXXX::0 received-routes

show ip bgp neighbors 169.254.X.1 advertised-routes

show ip bgp
show ip route bgp

Troubleshooting

Session in Idle — tunnel down, show interfaces Tunnel0, ACL blocking Estab but PfxRcd: 0 — clear ip bgp 169.254.X.1 soft in to refresh Prefixes not announced — route in RIB? show ip route 192.0.2.0, route-map too restrictive MD5 auth failed — show log grep AUTH, identical password both sides Hardware tunnel not supported — show capabilities, use upstream Linux for tunnel

Useful commands

show ip bgp summary
show ipv6 bgp summary
show ip bgp neighbors 169.254.X.1
show ip bgp neighbors 169.254.X.1 advertised-routes
show ip bgp neighbors 169.254.X.1 received-routes
show ip bgp
show ip route bgp
show interfaces Tunnel0
show running-config section router bgp

clear ip bgp 169.254.X.1 soft in
clear ip bgp 169.254.X.1

show log | grep BGP

Conclusion

Arista EOS = nearly Cisco but with encouraged peer-groups and maximum-routes syntax instead of maximum-prefix. BGP itself is identical. The main Arista trap: not all models support hardware GRE — check with show capabilities or use an upstream Linux if pure-L3.

Going further: BFD on Arista (router bfd), VRF to isolate transit, ECMP with maximum-paths, RPKI EOS 4.30+.

Resources

Join our Discord community server

For any questions, suggestions, or just to chat with the community, join us on Discord!

900+Members