Arista Switch Notes
May 20, 2025•1,165 words
Arista Switch Notes
Port Mirroring
as used at North Bay in June 2025. This example sends all traffic transiting through port Ethernet25 to port Ethernet1.
cadence
is just a label that matches up the two lines
monitor session cadence source Ethernet24
monitor session cadence destination Ethernet1
Monitor port mirroring
>sh int e24 status
DHCP on Arista
https://www.networkingheart.com/2018/06/configuring-dhcp-server-on-arista-eos.html
Python on Arista
Python interpreter version can be verified using the following commands:
> enable
> bash
# python --version
Python 2.7.18
# python3 --version
Python 3.9.17
https://github.com/Sparky-python/Arista_scripts
Includes script to generate multicast traffic
Multicast On Arista
routing
The routing command allows the switch to forward multicast packets. Multicast routing is disabled by default.
These commands enable IPv4 multicast routing on the switch.
switch(config)# router multicast
switch(config-router-multicast)# ipv4
switch(config-router-multicast-ipv4)# routing
ip multicast static
The ip multicast static command enables static multicast routing on the switch.
switch(config)# interface ethernet 1/2
switch(config-if-Et1/2)# no switchport
switch(config-if-Et1/2)# ip address 1.1.1.1/24
switch(config-if-Et1/2)# ip multicast static
route
The route command configures a static multicast route for the specified source, destination group, and incoming interface on the router.
These commands create a static multicast route in the default VRF. The static route has a group address of 225.3.3.3 and source address of 1.1.1.1. It uses Vlan100 as its incoming interface, VLANs 200 and 300 as its outgoing interfaces, and interface Ethernet2 as its multicast-only fast reroute interface.
switch(config)# router multicast
switch(config-router-multicast)# ipv4
switch(config-router-multicast-ipv4)# route 225.3.3.3 1.1.1.1 iif Vlan100 oif
Vlan200 Vlan300 iifFrr Ethernet2
switch(config-router-multicast-ipv4)#
show ip mroute
The show ip mroute command displays information from the IP multicast routing table.
show ip mroute displays information for all routes in the table.
show ip mroute gp_addr displays information for the specified multicast group.
switch# show ip mroute 225.1.1.1
PIM Sparse Mode Multicast Routing Table
Flags: E - Entry forwarding on the RPT, J - Joining to the SPT
R - RPT bit is set, S - SPT bit is set
W - Wildcard entry, X - External component interest
I - SG Include Join alert rcvd, P - Ex-Prune alert rcvd
H - Joining SPT due to policy, D - Joining SPT due to protocol
Z - Entry marked for deletion
A - Learned via Anycast RP Router
225.1.1.1
172.28.1.100, 5d04h, flags: S
Incoming interface: Vlan281
Outgoing interface list:
Port-Channel999
switch#
show version
The following CLI example shows the interface counters for all interfaces that are non-zero:'
alias senz show interface counter error | nz
alias sct show interface counter | nz
alias shint9 sh run int E9
show interfaces counters | nz
show ip nat translation static
Unidirectional Links
Comms with ARISTA Support
Dmitry
Joshua
Bhargav
So ideally, when we configure the any port to "unidirectional receive-only", that port stop sending out the tx signal to the other end device. So other side device will not see any receiving signal on the optics and it will bring down the interface so you will notice that the moment you will configure "unidirectional receive-only" the interface status will go to "not-connected" state. To bring the interface up, you will need to configure on the other side as either "unidirectional send-only" or "unidirectional send-receive". This is already listed on our below TOI:
https://www.arista.com/en/support/toi/eos-4-15-2f/13903-100g-unidirectional-links
Troubleshooting
Check that a send-only port is connected to a receive-only port or a send-receive port.
Check that a receive-only port is connected to a send-only port or a send-receive port.
Brad: Implies we need ARISATA devices on both ends of the link
Update 1:
TAC was able to replicate the issue using another Arista/EOS device to connect to port e12. Once port e12 goes uni RX-only the 3rd party switch brings it’s own port down (thank you Bhargav!):
Update 2:
I contacted Dmitri to review the solution and while Dmitri wasn’t certain which product is connected to e12 he suspects it is being used as a media converter to connect a 100M DUT to a 1/10G 7020SRG interface. Resulting in:
7020SRG:e12<———3rd-party 100/1000/10000Mb switch<——— 100M DUT
Update 3:
100M-FX is natively supported on port e12 (technically on ports 9-24) — Dmitri has Arista SFP-100M-FX optics on hand and we can eliminate the 3rd-party switch being used as a 100/1000/10000 media converter altogether:
Update 4:
Folks, this feature can not be employed on 100M nor 1000M port speeds. I’m sorry we didn’t catch this earlier. We can discuss further tomorrow.
Review: Unidirectional link feature supported port speeds:
Limitations
- Only support interfaces with a speed of 10G/25G/50G/100G/200G/400G
- Not supported at 40G speeds (BUG467672)
- Not supported on 10GBASE-T ports
- Not supported with other protocols
- Not supported with flooding
- Not supported with enabled MAC address learning
- Supported with static MAC addresses
- Supported with TapAgg feature
- Supported with static LAGs (no LACP)
Actual commands tried:
prompt(config-if-Et12)#unidirectional receive-only
% Unavailable command (not supported on this hardware platform)
This feature can be configured by issuing the following CLI command in the interface configuration mode only.
[no|default] unidirectional [send-only|receive-only|send-receive]
To configure an interface Et50/1 on an Arista switch as a send-only interface,
Arista(config-if-Et50/1)#unidirectional send-only
To configure an interface Et50/1 on an Arista switch as a receive-only interface,
Arista(config-if-Et50/1)#unidirectional receive-only
To configure an interface Et50/1 on an Arista switch as a send-receive interface,
Arista(config-if-Et50/1)#unidirectional send-receive
The above commands are specifically supported only on homogenous platforms (not a mixed platform such as a modular with DCS-7500E and DCS-7500R line cards). Also note that this feature is not supported on 10gBaseT ports and at 40G speeds.
To revert the interface back to bi-directional, simply issue the following command,
Arista(config-if-Et50/1)#no unidirectional
Since the unidirectional link is supposed to be used with static MAC address, disabled MAC address learning, and disabled packet replication (if applicable), the following example is a typical configuration of a unidirectional interface.
Arista(config-if-Et50/1)#speed forced 100gfullz
Arista(config-if-Et50/1)#unidirectional send-only
Arista(config-if-Et50/1)#switchport access vlan 2082
! Access VLAN does not exist. Creating vlan 2082
Arista(config-if-Et50/1)#no switchport mac address learning
Arista(config-if-Et50/1)#exit
Arista(config)#no platform arad packet replication
Arista(config)#mac address-table static 0000.0000.1111 vlan 2082 interface Ethernet50/1
In this example, frames with the destination MAC address of 0000.0000.1111 are supposed to arrive on VLAN 2082. Such frames are then forwarded out on egress port Ethernet50/1. The typical use cases require that all traffic destination MAC addresses and its incoming VLANs must be known beforehand as flooding must be avoided. The command ‘no platform arad packet replication
’ is only applicable to DCS-7280E and DCS-7500E series of hardware.
Status
To check the unidirectional interface status, the following ‘show’ command is useful.
show interfaces <interface name> unidirectional
For example,
Arista#show interfaces Et50/1 unidirectional
Port Status UniLinkMode
---------- ---------- ------------
Et50/1 connected send-only
The above output indicates that interface Et50/1 is connected in send-only mode.
Comments:
\n
\n<!-- END app/views/comments/_liquid.html.erb -->\n\n\n"