Nokia SR Linux and Arista cEOS
Description | A Nokia SR Linux connected back-to-back with Arista cEOS |
Components | Nokia SR Linux, Arista cEOS |
Resource requirements1 | 2 2 GB |
Topology file | srlceos01.clab.yml |
Name | srlceos01 |
Version information2 | containerlab:0.9.0 , srlinux:20.6.3-145 , ceos:4.25.0F , docker-ce:19.03.13 |
Description#
A lab consists of an SR Linux node connected with Arista cEOS via a point-to-point ethernet link. Both nodes are also connected with their management interfaces to the containerlab
docker network.
Use cases#
This lab allows users to launch basic interoperability scenarios between Nokia SR Linux and Arista cEOS operating systems.
BGP#
This lab demonstrates a simple iBGP peering scenario between Nokia SR Linux and Arista cEOS. Both nodes exchange NLRI with their loopback prefix making it reachable.
Configuration#
Once the lab is deployed with containerlab, use the following configuration instructions to make interfaces configuration and enable BGP on both nodes.
Get into SR Linux CLI with docker exec -it clab-srlceos01-srl sr_cli
and start configuration
# enter candidate datastore
enter candidate
# configure loopback and data interfaces
set / interface ethernet-1/1 admin-state enable
set / interface ethernet-1/1 subinterface 0 admin-state enable
set / interface ethernet-1/1 subinterface 0 ipv4 address 192.168.1.1/24
set / interface lo0 subinterface 0 admin-state enable
set / interface lo0 subinterface 0 ipv4 address 10.10.10.1/32
set / network-instance default interface ethernet-1/1.0
set / network-instance default interface lo0.0
# configure BGP
set / network-instance default protocols bgp admin-state enable
set / network-instance default protocols bgp router-id 10.10.10.1
set / network-instance default protocols bgp autonomous-system 65001
set / network-instance default protocols bgp group ibgp ipv4-unicast admin-state enable
set / network-instance default protocols bgp group ibgp export-policy export-lo
set / network-instance default protocols bgp neighbor 192.168.1.2 admin-state enable
set / network-instance default protocols bgp neighbor 192.168.1.2 peer-group ibgp
set / network-instance default protocols bgp neighbor 192.168.1.2 peer-as 65001
# create export policy
set / routing-policy policy export-lo statement 10 match protocol local
set / routing-policy policy export-lo statement 10 action accept
# commit config
commit now
Get into cEOS CLI with docker exec -it clab-srlceos01-ceos Cli
and start configuration
# enter configuration mode
configure
ip routing
# configure loopback and data interfaces
interface Ethernet1
no switchport
ip address 192.168.1.2/24
exit
interface Loopback0
ip address 10.10.10.2/32
exit
# configure BGP
router bgp 65001
router-id 10.10.10.2
neighbor 192.168.1.1 remote-as 65001
network 10.10.10.2/32
exit
Verification#
Once BGP peering is established, the routes can be seen in GRT of both nodes:
ceos>show ip route
VRF: default
Codes: C - connected, S - static, K - kernel,
O - OSPF, IA - OSPF inter area, E1 - OSPF external type 1,
E2 - OSPF external type 2, N1 - OSPF NSSA external type 1,
N2 - OSPF NSSA external type2, B - BGP, B I - iBGP, B E - eBGP,
R - RIP, I L1 - IS-IS level 1, I L2 - IS-IS level 2,
O3 - OSPFv3, A B - BGP Aggregate, A O - OSPF Summary,
NG - Nexthop Group Static Route, V - VXLAN Control Service,
DH - DHCP client installed default route, M - Martian,
DP - Dynamic Policy Route, L - VRF Leaked,
RC - Route Cache Route
Gateway of last resort:
K 0.0.0.0/0 [40/0] via 172.20.20.1, Management0
B I 10.10.10.1/32 [200/0] via 192.168.1.1, Ethernet1
C 10.10.10.2/32 is directly connected, Loopback0
C 172.20.20.0/24 is directly connected, Management0
C 192.168.1.0/24 is directly connected, Ethernet1
Data plane confirms that routes have been programmed to FIB:
A:srl# ping 10.10.10.2 network-instance default
Using network instance default
PING 10.10.10.2 (10.10.10.2) 56(84) bytes of data.
64 bytes from 10.10.10.2: icmp_seq=1 ttl=64 time=3.47 ms
[ceos]: