eBGP sonic lab + Ansible config & validation
#Containerlab
root@digi-oss:/home/labadmin/mohan/sonic2# cat sonic-evpn.clab.yml
name: sonic-evpn
topology:
nodes:
spine:
kind: sonic-vs
image: docker-sonic-vs:latest
leaf1:
kind: sonic-vs
image: docker-sonic-vs:latest
leaf2:
kind: sonic-vs
image: docker-sonic-vs:latest
host1:
kind: linux
image: alpine:latest
host2:
kind: linux
image: alpine:latest
links:
- endpoints: ["leaf1:eth1","spine:eth1"]
- endpoints: ["leaf2:eth1","spine:eth2"]
- endpoints: ["leaf1:eth2","host1:eth1"]
- endpoints: ["leaf2:eth2","host2:eth1"]
name: sonic-evpn
topology:
nodes:
spine:
kind: sonic-vs
image: docker-sonic-vs:latest
leaf1:
kind: sonic-vs
image: docker-sonic-vs:latest
leaf2:
kind: sonic-vs
image: docker-sonic-vs:latest
host1:
kind: linux
image: alpine:latest
host2:
kind: linux
image: alpine:latest
links:
- endpoints: ["leaf1:eth1","spine:eth1"]
- endpoints: ["leaf2:eth1","spine:eth2"]
- endpoints: ["leaf1:eth2","host1:eth1"]
- endpoints: ["leaf2:eth2","host2:eth1"]
root@digi-oss:/home/labadmin/mohan/sonic2# containerlab destroy -t sonic-evpn.clab.yml
root@digi-oss:/home/labadmin/mohan/sonic2# containerlab destroy -t sonic-evpn.clab.yml --cleanup
root@digi-oss:/home/labadmin/mohan/sonic2# containerlab deploy -t sonic-evpn.clab.yml
#play-book
root@digi-oss:/home/labadmin/mohan/sonic2/sonic-ebgp-ansible# cat README.md
# SONiC eBGP Ansible Lab
Ansible automation to configure eBGP peering between spine and leafs
in a containerlab SONiC-VS topology.
## Topology
```
spine (AS 65000)
/ 192.168.1.1 192.168.2.1 \
/ \
leaf1 (AS 65001) leaf2 (AS 65002)
192.168.1.2 192.168.2.2
| |
host1 host2
```
## Project Structure
```
sonic-ebgp-ansible/
├── ansible.cfg
├── site.yml # Main playbook
├── inventory/
│ ├── hosts.yml # Node definitions + BGP vars
│ └── group_vars/
│ └── all.yml # Shared BGP timers, credentials
└── roles/
├── sonic_interfaces/
│ └── tasks/main.yml # IP address assignment
├── sonic_bgp/
│ ├── tasks/main.yml # FRR config push
│ ├── handlers/main.yml # FRR reload handler
│ └── templates/frr.conf.j2 # Jinja2 BGP config template
└── sonic_verify/
└── tasks/main.yml # BGP session verification
```
## Prerequisites
```bash
pip install ansible
ansible-galaxy collection install ansible.netcommon
# containerlab must be running:
sudo clab deploy -t sonic-evpn.clab.yml
```
## Usage
```bash
# Full deployment
ansible-playbook -i inventory/hosts.yml site.yml
# Step by step
ansible-playbook -i inventory/hosts.yml site.yml --tags interfaces
ansible-playbook -i inventory/hosts.yml site.yml --tags bgp
ansible-playbook -i inventory/hosts.yml site.yml --tags verify
# Dry run
ansible-playbook -i inventory/hosts.yml site.yml --check
# Single node
ansible-playbook -i inventory/hosts.yml site.yml --limit spine
```
## Manual Verification (inside containers)
```bash
# Check BGP summary on spine
docker exec clab-sonic-evpn-spine sudo vtysh -c "show bgp summary"
# Check routes on leaf1
docker exec clab-sonic-evpn-leaf1 sudo vtysh -c "show ip bgp"
# Ping across fabric
docker exec clab-sonic-evpn-host1 ping 192.168.2.2
```
## IP Plan
| Node | Interface | IP | Peer IP | BGP ASN |
|--------|-----------|----------------|----------------|---------|
| spine | Ethernet0 | 192.168.1.1/30 | 192.168.1.2 | 65000 |
| spine | Ethernet4 | 192.168.2.1/30 | 192.168.2.2 | 65000 |
| leaf1 | Ethernet0 | 192.168.1.2/30 | 192.168.1.1 | 65001 |
| leaf2 | Ethernet0 | 192.168.2.2/30 | 192.168.2.1 | 65002 |
## playbook-run output
root@digi-oss:/home/labadmin/mohan/sonic2/sonic-ebgp-ansible# ansible-playbook -i inventory/hosts.yml site.yml -v
Using /home/labadmin/mohan/sonic2/sonic-ebgp-ansible/ansible.cfg as config file
PLAY [Configure interfaces on all SONiC nodes] **********************************************************************************************************************************************
TASK [sonic_interfaces : Bring up underlying Linux interfaces (eth1, eth2) first] ***********************************************************************************************************
ok: [spine] => changed=false
cmd: |-
docker exec -u root clab-sonic-evpn-spine sh -c '
for iface in eth1 eth2; do
if ip link show "$iface" > /dev/null 2>&1; then
ip link set "$iface" up
echo "brought up $iface"
else
echo "skipping $iface — not present"
fi
done
'
delta: '0:00:00.057311'
end: '2026-04-13 07:18:23.495379'
msg: ''
rc: 0
start: '2026-04-13 07:18:23.438068'
stderr: ''
stderr_lines: <omitted>
stdout: |-
brought up eth1
brought up eth2
stdout_lines: <omitted>
ok: [leaf2] => changed=false
cmd: |-
docker exec -u root clab-sonic-evpn-leaf2 sh -c '
for iface in eth1 eth2; do
if ip link show "$iface" > /dev/null 2>&1; then
ip link set "$iface" up
echo "brought up $iface"
else
echo "skipping $iface — not present"
fi
done
'
delta: '0:00:00.058827'
end: '2026-04-13 07:18:23.496909'
msg: ''
rc: 0
start: '2026-04-13 07:18:23.438082'
stderr: ''
stderr_lines: <omitted>
stdout: |-
brought up eth1
brought up eth2
stdout_lines: <omitted>
ok: [leaf1] => changed=false
cmd: |-
docker exec -u root clab-sonic-evpn-leaf1 sh -c '
for iface in eth1 eth2; do
if ip link show "$iface" > /dev/null 2>&1; then
ip link set "$iface" up
echo "brought up $iface"
else
echo "skipping $iface — not present"
fi
done
'
delta: '0:00:00.058483'
end: '2026-04-13 07:18:23.496551'
msg: ''
rc: 0
start: '2026-04-13 07:18:23.438068'
stderr: ''
stderr_lines: <omitted>
stdout: |-
brought up eth1
brought up eth2
stdout_lines: <omitted>
TASK [sonic_interfaces : Show eth1/eth2 link state after bring-up] **************************************************************************************************************************
ok: [spine] =>
eth_up.stdout_lines:
- brought up eth1
- brought up eth2
ok: [leaf1] =>
eth_up.stdout_lines:
- brought up eth1
- brought up eth2
ok: [leaf2] =>
eth_up.stdout_lines:
- brought up eth1
- brought up eth2
TASK [sonic_interfaces : Add IP via SONiC config DB (persists to config_db)] ****************************************************************************************************************
changed: [leaf2] => (item=Ethernet0 -> 192.168.2.2/30) => changed=true
ansible_loop_var: item
cmd: |-
docker exec -u root clab-sonic-evpn-leaf2 sh -c '
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
config interface ip add Ethernet0 192.168.2.2/30
'
delta: '0:00:00.597763'
end: '2026-04-13 07:18:24.340695'
item:
ip: 192.168.2.2
name: Ethernet0
peer: spine
prefix: 30
msg: ''
rc: 0
start: '2026-04-13 07:18:23.742932'
stderr: |-
/usr/local/lib/python3.11/dist-packages/config/aaa.py:120: SyntaxWarning: "is" with a literal. Did you mean "=="?
if len(auth_protocol) is 0:
stderr_lines: <omitted>
stdout: ''
stdout_lines: <omitted>
changed: [spine] => (item=Ethernet0 -> 192.168.1.1/30) => changed=true
ansible_loop_var: item
cmd: |-
docker exec -u root clab-sonic-evpn-spine sh -c '
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
config interface ip add Ethernet0 192.168.1.1/30
'
delta: '0:00:00.604965'
end: '2026-04-13 07:18:24.342002'
item:
ip: 192.168.1.1
name: Ethernet0
peer: leaf1
prefix: 30
msg: ''
rc: 0
start: '2026-04-13 07:18:23.737037'
stderr: |-
/usr/local/lib/python3.11/dist-packages/config/aaa.py:120: SyntaxWarning: "is" with a literal. Did you mean "=="?
if len(auth_protocol) is 0:
stderr_lines: <omitted>
stdout: ''
stdout_lines: <omitted>
changed: [leaf1] => (item=Ethernet0 -> 192.168.1.2/30) => changed=true
ansible_loop_var: item
cmd: |-
docker exec -u root clab-sonic-evpn-leaf1 sh -c '
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
config interface ip add Ethernet0 192.168.1.2/30
'
delta: '0:00:00.603453'
end: '2026-04-13 07:18:24.342506'
item:
ip: 192.168.1.2
name: Ethernet0
peer: spine
prefix: 30
msg: ''
rc: 0
start: '2026-04-13 07:18:23.739053'
stderr: |-
/usr/local/lib/python3.11/dist-packages/config/aaa.py:120: SyntaxWarning: "is" with a literal. Did you mean "=="?
if len(auth_protocol) is 0:
stderr_lines: <omitted>
stdout: ''
stdout_lines: <omitted>
changed: [spine] => (item=Ethernet4 -> 192.168.2.1/30) => changed=true
ansible_loop_var: item
cmd: |-
docker exec -u root clab-sonic-evpn-spine sh -c '
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
config interface ip add Ethernet4 192.168.2.1/30
'
delta: '0:00:00.282077'
end: '2026-04-13 07:18:24.817755'
item:
ip: 192.168.2.1
name: Ethernet4
peer: leaf2
prefix: 30
msg: ''
rc: 0
start: '2026-04-13 07:18:24.535678'
stderr: ''
stderr_lines: <omitted>
stdout: ''
stdout_lines: <omitted>
TASK [sonic_interfaces : Bring up SONiC Ethernet interfaces at kernel level] ****************************************************************************************************************
changed: [spine] => (item=Ethernet0) => changed=true
ansible_loop_var: item
cmd: |-
docker exec -u root clab-sonic-evpn-spine sh -c '
ip link set Ethernet0 up
'
delta: '0:00:00.054424'
end: '2026-04-13 07:18:25.090734'
item:
ip: 192.168.1.1
name: Ethernet0
peer: leaf1
prefix: 30
msg: ''
rc: 0
start: '2026-04-13 07:18:25.036310'
stderr: ''
stderr_lines: <omitted>
stdout: ''
stdout_lines: <omitted>
changed: [leaf2] => (item=Ethernet0) => changed=true
ansible_loop_var: item
cmd: |-
docker exec -u root clab-sonic-evpn-leaf2 sh -c '
ip link set Ethernet0 up
'
delta: '0:00:00.050540'
end: '2026-04-13 07:18:25.092143'
item:
ip: 192.168.2.2
name: Ethernet0
peer: spine
prefix: 30
msg: ''
rc: 0
start: '2026-04-13 07:18:25.041603'
stderr: ''
stderr_lines: <omitted>
stdout: ''
stdout_lines: <omitted>
changed: [leaf1] => (item=Ethernet0) => changed=true
ansible_loop_var: item
cmd: |-
docker exec -u root clab-sonic-evpn-leaf1 sh -c '
ip link set Ethernet0 up
'
delta: '0:00:00.056928'
end: '2026-04-13 07:18:25.094288'
item:
ip: 192.168.1.2
name: Ethernet0
peer: spine
prefix: 30
msg: ''
rc: 0
start: '2026-04-13 07:18:25.037360'
stderr: ''
stderr_lines: <omitted>
stdout: ''
stdout_lines: <omitted>
changed: [spine] => (item=Ethernet4) => changed=true
ansible_loop_var: item
cmd: |-
docker exec -u root clab-sonic-evpn-spine sh -c '
ip link set Ethernet4 up
'
delta: '0:00:00.055463'
end: '2026-04-13 07:18:25.344618'
item:
ip: 192.168.2.1
name: Ethernet4
peer: leaf2
prefix: 30
msg: ''
rc: 0
start: '2026-04-13 07:18:25.289155'
stderr: ''
stderr_lines: <omitted>
stdout: ''
stdout_lines: <omitted>
TASK [sonic_interfaces : Add IP directly on kernel interface (immediate effect)] ************************************************************************************************************
changed: [leaf2] => (item=Ethernet0 -> 192.168.2.2/30) => changed=true
ansible_loop_var: item
cmd: |-
docker exec -u root clab-sonic-evpn-leaf2 sh -c '
ip addr flush dev Ethernet0
ip addr add 192.168.2.2/30 dev Ethernet0
'
delta: '0:00:00.050393'
end: '2026-04-13 07:18:25.619152'
item:
ip: 192.168.2.2
name: Ethernet0
peer: spine
prefix: 30
msg: ''
rc: 0
start: '2026-04-13 07:18:25.568759'
stderr: ''
stderr_lines: <omitted>
stdout: ''
stdout_lines: <omitted>
changed: [spine] => (item=Ethernet0 -> 192.168.1.1/30) => changed=true
ansible_loop_var: item
cmd: |-
docker exec -u root clab-sonic-evpn-spine sh -c '
ip addr flush dev Ethernet0
ip addr add 192.168.1.1/30 dev Ethernet0
'
delta: '0:00:00.055575'
end: '2026-04-13 07:18:25.618963'
item:
ip: 192.168.1.1
name: Ethernet0
peer: leaf1
prefix: 30
msg: ''
rc: 0
start: '2026-04-13 07:18:25.563388'
stderr: ''
stderr_lines: <omitted>
stdout: ''
stdout_lines: <omitted>
changed: [leaf1] => (item=Ethernet0 -> 192.168.1.2/30) => changed=true
ansible_loop_var: item
cmd: |-
docker exec -u root clab-sonic-evpn-leaf1 sh -c '
ip addr flush dev Ethernet0
ip addr add 192.168.1.2/30 dev Ethernet0
'
delta: '0:00:00.053656'
end: '2026-04-13 07:18:25.619495'
item:
ip: 192.168.1.2
name: Ethernet0
peer: spine
prefix: 30
msg: ''
rc: 0
start: '2026-04-13 07:18:25.565839'
stderr: ''
stderr_lines: <omitted>
stdout: ''
stdout_lines: <omitted>
changed: [spine] => (item=Ethernet4 -> 192.168.2.1/30) => changed=true
ansible_loop_var: item
cmd: |-
docker exec -u root clab-sonic-evpn-spine sh -c '
ip addr flush dev Ethernet4
ip addr add 192.168.2.1/30 dev Ethernet4
'
delta: '0:00:00.047765'
end: '2026-04-13 07:18:25.861759'
item:
ip: 192.168.2.1
name: Ethernet4
peer: leaf2
prefix: 30
msg: ''
rc: 0
start: '2026-04-13 07:18:25.813994'
stderr: ''
stderr_lines: <omitted>
stdout: ''
stdout_lines: <omitted>
TASK [sonic_interfaces : Verify all interface states] ***************************************************************************************************************************************
ok: [leaf1] => changed=false
cmd: |-
docker exec -u root clab-sonic-evpn-leaf1 sh -c '
echo "=== ip link ===" && ip link show
echo "=== ip addr ===" && ip addr show
'
delta: '0:00:00.043964'
end: '2026-04-13 07:18:26.123881'
msg: ''
rc: 0
start: '2026-04-13 07:18:26.079917'
stderr: ''
stderr_lines: <omitted>
stdout: |-
=== ip link ===
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0@if919: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT group default
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff link-netnsid 0
3: Ethernet0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9100 qdisc mq state UNKNOWN mode DEFAULT group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
4: Ethernet4: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
5: Ethernet24: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
6: Ethernet28: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
7: Ethernet36: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
8: Ethernet32: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
9: Ethernet40: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
10: Ethernet44: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
11: Ethernet8: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
12: Ethernet12: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
13: Ethernet20: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
14: Ethernet16: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
15: Ethernet52: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
16: Ethernet48: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
17: Ethernet56: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
18: Ethernet60: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
19: Ethernet68: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
20: Ethernet64: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
21: Ethernet72: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
22: Ethernet76: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
23: Ethernet104: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
24: Ethernet108: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
25: Ethernet116: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
26: Ethernet112: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
27: Ethernet124: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
28: Ethernet120: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
29: Ethernet84: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
30: Ethernet80: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
31: Ethernet88: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
32: Ethernet92: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
33: Ethernet100: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
34: Ethernet96: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
35: Bridge: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9100 qdisc noqueue state UP mode DEFAULT group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
36: dummy: <BROADCAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc noqueue master Bridge state UNKNOWN mode DEFAULT group default qlen 1000
link/ether 2e:63:67:8c:1c:73 brd ff:ff:ff:ff:ff:ff
922: eth2@if923: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 9122 qdisc noqueue state UP mode DEFAULT group default
link/ether aa:c1:ab:1a:7e:f7 brd ff:ff:ff:ff:ff:ff link-netnsid 1
925: eth1@if924: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 9122 qdisc noqueue state UP mode DEFAULT group default
link/ether aa:c1:ab:27:0c:93 brd ff:ff:ff:ff:ff:ff link-netnsid 2
=== ip addr ===
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0@if919: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff link-netnsid 0
inet 172.20.20.4/24 brd 172.20.20.255 scope global eth0
valid_lft forever preferred_lft forever
inet6 3fff:172:20:20::4/64 scope global nodad
valid_lft forever preferred_lft forever
inet6 fe80::acd8:7dff:fe29:9112/64 scope link
valid_lft forever preferred_lft forever
3: Ethernet0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9100 qdisc mq state UNKNOWN group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
inet 192.168.1.2/30 scope global Ethernet0
valid_lft forever preferred_lft forever
4: Ethernet4: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
5: Ethernet24: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
6: Ethernet28: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
7: Ethernet36: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
8: Ethernet32: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
9: Ethernet40: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
10: Ethernet44: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
11: Ethernet8: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
12: Ethernet12: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
13: Ethernet20: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
14: Ethernet16: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
15: Ethernet52: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
16: Ethernet48: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
17: Ethernet56: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
18: Ethernet60: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
19: Ethernet68: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
20: Ethernet64: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
21: Ethernet72: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
22: Ethernet76: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
23: Ethernet104: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
24: Ethernet108: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
25: Ethernet116: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
26: Ethernet112: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
27: Ethernet124: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
28: Ethernet120: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
29: Ethernet84: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
30: Ethernet80: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
31: Ethernet88: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
32: Ethernet92: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
33: Ethernet100: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
34: Ethernet96: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
35: Bridge: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9100 qdisc noqueue state UP group default qlen 1000
link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff
inet6 fe80::acd8:7dff:fe29:9112/64 scope link
valid_lft forever preferred_lft forever
36: dummy: <BROADCAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc noqueue master Bridge state UNKNOWN group default qlen 1000
link/ether 2e:63:67:8c:1c:73 brd ff:ff:ff:ff:ff:ff
inet6 fe80::2c63:67ff:fe8c:1c73/64 scope link
valid_lft forever preferred_lft forever
922: eth2@if923: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 9122 qdisc noqueue state UP group default
link/ether aa:c1:ab:1a:7e:f7 brd ff:ff:ff:ff:ff:ff link-netnsid 1
inet6 fe80::a8c1:abff:fe1a:7ef7/64 scope link
valid_lft forever preferred_lft forever
925: eth1@if924: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 9122 qdisc noqueue state UP group default
link/ether aa:c1:ab:27:0c:93 brd ff:ff:ff:ff:ff:ff link-netnsid 2
inet6 fe80::a8c1:abff:fe27:c93/64 scope link
valid_lft forever preferred_lft forever
stdout_lines: <omitted>
ok: [spine] => changed=false
cmd: |-
docker exec -u root clab-sonic-evpn-spine sh -c '
echo "=== ip link ===" && ip link show
echo "=== ip addr ===" && ip addr show
'
delta: '0:00:00.048220'
end: '2026-04-13 07:18:26.124766'
msg: ''
rc: 0
start: '2026-04-13 07:18:26.076546'
stderr: ''
stderr_lines: <omitted>
stdout: |-
=== ip link ===
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0@if918: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT group default
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff link-netnsid 0
3: Ethernet0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9100 qdisc mq state UNKNOWN mode DEFAULT group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
4: Ethernet4: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9100 qdisc mq state UNKNOWN mode DEFAULT group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
5: Ethernet24: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
6: Ethernet28: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
7: Ethernet36: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
8: Ethernet32: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
9: Ethernet40: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
10: Ethernet44: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
11: Ethernet8: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
12: Ethernet12: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
13: Ethernet20: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
14: Ethernet16: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
15: Ethernet52: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
16: Ethernet48: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
17: Ethernet56: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
18: Ethernet60: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
19: Ethernet68: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
20: Ethernet64: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
21: Ethernet72: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
22: Ethernet76: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
23: Ethernet104: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
24: Ethernet108: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
25: Ethernet116: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
26: Ethernet112: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
27: Ethernet124: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
28: Ethernet120: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
29: Ethernet84: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
30: Ethernet80: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
31: Ethernet88: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
32: Ethernet92: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
33: Ethernet100: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
34: Ethernet96: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
35: Bridge: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9100 qdisc noqueue state UP mode DEFAULT group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
36: dummy: <BROADCAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc noqueue master Bridge state UNKNOWN mode DEFAULT group default qlen 1000
link/ether 96:3c:46:85:aa:e5 brd ff:ff:ff:ff:ff:ff
924: eth1@if925: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 9122 qdisc noqueue state UP mode DEFAULT group default
link/ether aa:c1:ab:6a:19:2e brd ff:ff:ff:ff:ff:ff link-netnsid 1
929: eth2@if928: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 9122 qdisc noqueue state UP mode DEFAULT group default
link/ether aa:c1:ab:38:91:c1 brd ff:ff:ff:ff:ff:ff link-netnsid 2
=== ip addr ===
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0@if918: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff link-netnsid 0
inet 172.20.20.3/24 brd 172.20.20.255 scope global eth0
valid_lft forever preferred_lft forever
inet6 3fff:172:20:20::3/64 scope global nodad
valid_lft forever preferred_lft forever
inet6 fe80::64c8:b2ff:fed0:8716/64 scope link
valid_lft forever preferred_lft forever
3: Ethernet0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9100 qdisc mq state UNKNOWN group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
inet 192.168.1.1/30 scope global Ethernet0
valid_lft forever preferred_lft forever
4: Ethernet4: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9100 qdisc mq state UNKNOWN group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
inet 192.168.2.1/30 scope global Ethernet4
valid_lft forever preferred_lft forever
5: Ethernet24: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
6: Ethernet28: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
7: Ethernet36: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
8: Ethernet32: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
9: Ethernet40: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
10: Ethernet44: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
11: Ethernet8: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
12: Ethernet12: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
13: Ethernet20: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
14: Ethernet16: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
15: Ethernet52: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
16: Ethernet48: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
17: Ethernet56: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
18: Ethernet60: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
19: Ethernet68: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
20: Ethernet64: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
21: Ethernet72: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
22: Ethernet76: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
23: Ethernet104: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
24: Ethernet108: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
25: Ethernet116: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
26: Ethernet112: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
27: Ethernet124: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
28: Ethernet120: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
29: Ethernet84: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
30: Ethernet80: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
31: Ethernet88: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
32: Ethernet92: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
33: Ethernet100: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
34: Ethernet96: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
35: Bridge: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9100 qdisc noqueue state UP group default qlen 1000
link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff
inet6 fe80::64c8:b2ff:fed0:8716/64 scope link
valid_lft forever preferred_lft forever
36: dummy: <BROADCAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc noqueue master Bridge state UNKNOWN group default qlen 1000
link/ether 96:3c:46:85:aa:e5 brd ff:ff:ff:ff:ff:ff
inet6 fe80::943c:46ff:fe85:aae5/64 scope link
valid_lft forever preferred_lft forever
924: eth1@if925: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 9122 qdisc noqueue state UP group default
link/ether aa:c1:ab:6a:19:2e brd ff:ff:ff:ff:ff:ff link-netnsid 1
inet6 fe80::a8c1:abff:fe6a:192e/64 scope link
valid_lft forever preferred_lft forever
929: eth2@if928: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 9122 qdisc noqueue state UP group default
link/ether aa:c1:ab:38:91:c1 brd ff:ff:ff:ff:ff:ff link-netnsid 2
inet6 fe80::a8c1:abff:fe38:91c1/64 scope link
valid_lft forever preferred_lft forever
stdout_lines: <omitted>
ok: [leaf2] => changed=false
cmd: |-
docker exec -u root clab-sonic-evpn-leaf2 sh -c '
echo "=== ip link ===" && ip link show
echo "=== ip addr ===" && ip addr show
'
delta: '0:00:00.043520'
end: '2026-04-13 07:18:26.125291'
msg: ''
rc: 0
start: '2026-04-13 07:18:26.081771'
stderr: ''
stderr_lines: <omitted>
stdout: |-
=== ip link ===
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0@if921: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT group default
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff link-netnsid 0
3: Ethernet0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9100 qdisc mq state UNKNOWN mode DEFAULT group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
4: Ethernet4: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
5: Ethernet24: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
6: Ethernet28: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
7: Ethernet36: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
8: Ethernet32: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
9: Ethernet40: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
10: Ethernet44: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
11: Ethernet8: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
12: Ethernet12: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
13: Ethernet20: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
14: Ethernet16: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
15: Ethernet52: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
16: Ethernet48: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
17: Ethernet56: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
18: Ethernet60: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
19: Ethernet68: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
20: Ethernet64: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
21: Ethernet72: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
22: Ethernet76: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
23: Ethernet104: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
24: Ethernet108: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
25: Ethernet116: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
26: Ethernet112: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
27: Ethernet124: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
28: Ethernet120: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
29: Ethernet84: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
30: Ethernet80: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
31: Ethernet88: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
32: Ethernet92: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
33: Ethernet100: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
34: Ethernet96: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
35: Bridge: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9100 qdisc noqueue state UP mode DEFAULT group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
36: dummy: <BROADCAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc noqueue master Bridge state UNKNOWN mode DEFAULT group default qlen 1000
link/ether 1e:ae:25:31:c2:ae brd ff:ff:ff:ff:ff:ff
926: eth2@if927: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 9122 qdisc noqueue state UP mode DEFAULT group default
link/ether aa:c1:ab:83:94:f1 brd ff:ff:ff:ff:ff:ff link-netnsid 2
928: eth1@if929: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 9122 qdisc noqueue state UP mode DEFAULT group default
link/ether aa:c1:ab:26:6e:8f brd ff:ff:ff:ff:ff:ff link-netnsid 1
=== ip addr ===
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0@if921: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff link-netnsid 0
inet 172.20.20.6/24 brd 172.20.20.255 scope global eth0
valid_lft forever preferred_lft forever
inet6 3fff:172:20:20::6/64 scope global nodad
valid_lft forever preferred_lft forever
inet6 fe80::d80f:89ff:fee7:73f7/64 scope link
valid_lft forever preferred_lft forever
3: Ethernet0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9100 qdisc mq state UNKNOWN group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
inet 192.168.2.2/30 scope global Ethernet0
valid_lft forever preferred_lft forever
4: Ethernet4: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
5: Ethernet24: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
6: Ethernet28: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
7: Ethernet36: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
8: Ethernet32: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
9: Ethernet40: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
10: Ethernet44: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
11: Ethernet8: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
12: Ethernet12: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
13: Ethernet20: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
14: Ethernet16: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
15: Ethernet52: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
16: Ethernet48: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
17: Ethernet56: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
18: Ethernet60: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
19: Ethernet68: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
20: Ethernet64: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
21: Ethernet72: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
22: Ethernet76: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
23: Ethernet104: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
24: Ethernet108: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
25: Ethernet116: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
26: Ethernet112: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
27: Ethernet124: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
28: Ethernet120: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
29: Ethernet84: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
30: Ethernet80: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
31: Ethernet88: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
32: Ethernet92: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
33: Ethernet100: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
34: Ethernet96: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
35: Bridge: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9100 qdisc noqueue state UP group default qlen 1000
link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff
inet6 fe80::d80f:89ff:fee7:73f7/64 scope link
valid_lft forever preferred_lft forever
36: dummy: <BROADCAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc noqueue master Bridge state UNKNOWN group default qlen 1000
link/ether 1e:ae:25:31:c2:ae brd ff:ff:ff:ff:ff:ff
inet6 fe80::1cae:25ff:fe31:c2ae/64 scope link
valid_lft forever preferred_lft forever
926: eth2@if927: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 9122 qdisc noqueue state UP group default
link/ether aa:c1:ab:83:94:f1 brd ff:ff:ff:ff:ff:ff link-netnsid 2
inet6 fe80::a8c1:abff:fe83:94f1/64 scope link
valid_lft forever preferred_lft forever
928: eth1@if929: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 9122 qdisc noqueue state UP group default
link/ether aa:c1:ab:26:6e:8f brd ff:ff:ff:ff:ff:ff link-netnsid 1
inet6 fe80::a8c1:abff:fe26:6e8f/64 scope link
valid_lft forever preferred_lft forever
stdout_lines: <omitted>
TASK [sonic_interfaces : Print interface state] *********************************************************************************************************************************************
ok: [spine] =>
iface_output.stdout_lines:
- === ip link ===
- '1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000'
- ' link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00'
- '2: eth0@if918: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT group default '
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff link-netnsid 0'
- '3: Ethernet0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9100 qdisc mq state UNKNOWN mode DEFAULT group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '4: Ethernet4: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9100 qdisc mq state UNKNOWN mode DEFAULT group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '5: Ethernet24: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '6: Ethernet28: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '7: Ethernet36: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '8: Ethernet32: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '9: Ethernet40: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '10: Ethernet44: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '11: Ethernet8: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '12: Ethernet12: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '13: Ethernet20: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '14: Ethernet16: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '15: Ethernet52: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '16: Ethernet48: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '17: Ethernet56: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '18: Ethernet60: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '19: Ethernet68: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '20: Ethernet64: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '21: Ethernet72: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '22: Ethernet76: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '23: Ethernet104: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '24: Ethernet108: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '25: Ethernet116: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '26: Ethernet112: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '27: Ethernet124: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '28: Ethernet120: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '29: Ethernet84: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '30: Ethernet80: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '31: Ethernet88: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '32: Ethernet92: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '33: Ethernet100: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '34: Ethernet96: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '35: Bridge: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9100 qdisc noqueue state UP mode DEFAULT group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '36: dummy: <BROADCAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc noqueue master Bridge state UNKNOWN mode DEFAULT group default qlen 1000'
- ' link/ether 96:3c:46:85:aa:e5 brd ff:ff:ff:ff:ff:ff'
- '924: eth1@if925: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 9122 qdisc noqueue state UP mode DEFAULT group default '
- ' link/ether aa:c1:ab:6a:19:2e brd ff:ff:ff:ff:ff:ff link-netnsid 1'
- '929: eth2@if928: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 9122 qdisc noqueue state UP mode DEFAULT group default '
- ' link/ether aa:c1:ab:38:91:c1 brd ff:ff:ff:ff:ff:ff link-netnsid 2'
- === ip addr ===
- '1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000'
- ' link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00'
- ' inet 127.0.0.1/8 scope host lo'
- ' valid_lft forever preferred_lft forever'
- ' inet6 ::1/128 scope host '
- ' valid_lft forever preferred_lft forever'
- '2: eth0@if918: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default '
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff link-netnsid 0'
- ' inet 172.20.20.3/24 brd 172.20.20.255 scope global eth0'
- ' valid_lft forever preferred_lft forever'
- ' inet6 3fff:172:20:20::3/64 scope global nodad '
- ' valid_lft forever preferred_lft forever'
- ' inet6 fe80::64c8:b2ff:fed0:8716/64 scope link '
- ' valid_lft forever preferred_lft forever'
- '3: Ethernet0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9100 qdisc mq state UNKNOWN group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- ' inet 192.168.1.1/30 scope global Ethernet0'
- ' valid_lft forever preferred_lft forever'
- '4: Ethernet4: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9100 qdisc mq state UNKNOWN group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- ' inet 192.168.2.1/30 scope global Ethernet4'
- ' valid_lft forever preferred_lft forever'
- '5: Ethernet24: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '6: Ethernet28: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '7: Ethernet36: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '8: Ethernet32: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '9: Ethernet40: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '10: Ethernet44: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '11: Ethernet8: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '12: Ethernet12: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '13: Ethernet20: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '14: Ethernet16: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '15: Ethernet52: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '16: Ethernet48: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '17: Ethernet56: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '18: Ethernet60: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '19: Ethernet68: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '20: Ethernet64: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '21: Ethernet72: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '22: Ethernet76: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '23: Ethernet104: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '24: Ethernet108: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '25: Ethernet116: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '26: Ethernet112: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '27: Ethernet124: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '28: Ethernet120: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '29: Ethernet84: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '30: Ethernet80: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '31: Ethernet88: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '32: Ethernet92: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '33: Ethernet100: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '34: Ethernet96: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- '35: Bridge: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9100 qdisc noqueue state UP group default qlen 1000'
- ' link/ether 66:c8:b2:d0:87:16 brd ff:ff:ff:ff:ff:ff'
- ' inet6 fe80::64c8:b2ff:fed0:8716/64 scope link '
- ' valid_lft forever preferred_lft forever'
- '36: dummy: <BROADCAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc noqueue master Bridge state UNKNOWN group default qlen 1000'
- ' link/ether 96:3c:46:85:aa:e5 brd ff:ff:ff:ff:ff:ff'
- ' inet6 fe80::943c:46ff:fe85:aae5/64 scope link '
- ' valid_lft forever preferred_lft forever'
- '924: eth1@if925: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 9122 qdisc noqueue state UP group default '
- ' link/ether aa:c1:ab:6a:19:2e brd ff:ff:ff:ff:ff:ff link-netnsid 1'
- ' inet6 fe80::a8c1:abff:fe6a:192e/64 scope link '
- ' valid_lft forever preferred_lft forever'
- '929: eth2@if928: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 9122 qdisc noqueue state UP group default '
- ' link/ether aa:c1:ab:38:91:c1 brd ff:ff:ff:ff:ff:ff link-netnsid 2'
- ' inet6 fe80::a8c1:abff:fe38:91c1/64 scope link '
- ' valid_lft forever preferred_lft forever'
ok: [leaf1] =>
iface_output.stdout_lines:
- === ip link ===
- '1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000'
- ' link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00'
- '2: eth0@if919: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT group default '
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff link-netnsid 0'
- '3: Ethernet0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9100 qdisc mq state UNKNOWN mode DEFAULT group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '4: Ethernet4: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '5: Ethernet24: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '6: Ethernet28: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '7: Ethernet36: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '8: Ethernet32: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '9: Ethernet40: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '10: Ethernet44: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '11: Ethernet8: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '12: Ethernet12: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '13: Ethernet20: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '14: Ethernet16: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '15: Ethernet52: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '16: Ethernet48: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '17: Ethernet56: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '18: Ethernet60: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '19: Ethernet68: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '20: Ethernet64: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '21: Ethernet72: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '22: Ethernet76: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '23: Ethernet104: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '24: Ethernet108: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '25: Ethernet116: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '26: Ethernet112: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '27: Ethernet124: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '28: Ethernet120: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '29: Ethernet84: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '30: Ethernet80: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '31: Ethernet88: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '32: Ethernet92: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '33: Ethernet100: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '34: Ethernet96: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '35: Bridge: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9100 qdisc noqueue state UP mode DEFAULT group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '36: dummy: <BROADCAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc noqueue master Bridge state UNKNOWN mode DEFAULT group default qlen 1000'
- ' link/ether 2e:63:67:8c:1c:73 brd ff:ff:ff:ff:ff:ff'
- '922: eth2@if923: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 9122 qdisc noqueue state UP mode DEFAULT group default '
- ' link/ether aa:c1:ab:1a:7e:f7 brd ff:ff:ff:ff:ff:ff link-netnsid 1'
- '925: eth1@if924: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 9122 qdisc noqueue state UP mode DEFAULT group default '
- ' link/ether aa:c1:ab:27:0c:93 brd ff:ff:ff:ff:ff:ff link-netnsid 2'
- === ip addr ===
- '1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000'
- ' link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00'
- ' inet 127.0.0.1/8 scope host lo'
- ' valid_lft forever preferred_lft forever'
- ' inet6 ::1/128 scope host '
- ' valid_lft forever preferred_lft forever'
- '2: eth0@if919: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default '
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff link-netnsid 0'
- ' inet 172.20.20.4/24 brd 172.20.20.255 scope global eth0'
- ' valid_lft forever preferred_lft forever'
- ' inet6 3fff:172:20:20::4/64 scope global nodad '
- ' valid_lft forever preferred_lft forever'
- ' inet6 fe80::acd8:7dff:fe29:9112/64 scope link '
- ' valid_lft forever preferred_lft forever'
- '3: Ethernet0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9100 qdisc mq state UNKNOWN group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- ' inet 192.168.1.2/30 scope global Ethernet0'
- ' valid_lft forever preferred_lft forever'
- '4: Ethernet4: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '5: Ethernet24: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '6: Ethernet28: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '7: Ethernet36: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '8: Ethernet32: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '9: Ethernet40: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '10: Ethernet44: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '11: Ethernet8: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '12: Ethernet12: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '13: Ethernet20: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '14: Ethernet16: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '15: Ethernet52: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '16: Ethernet48: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '17: Ethernet56: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '18: Ethernet60: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '19: Ethernet68: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '20: Ethernet64: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '21: Ethernet72: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '22: Ethernet76: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '23: Ethernet104: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '24: Ethernet108: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '25: Ethernet116: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '26: Ethernet112: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '27: Ethernet124: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '28: Ethernet120: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '29: Ethernet84: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '30: Ethernet80: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '31: Ethernet88: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '32: Ethernet92: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '33: Ethernet100: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '34: Ethernet96: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- '35: Bridge: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9100 qdisc noqueue state UP group default qlen 1000'
- ' link/ether ae:d8:7d:29:91:12 brd ff:ff:ff:ff:ff:ff'
- ' inet6 fe80::acd8:7dff:fe29:9112/64 scope link '
- ' valid_lft forever preferred_lft forever'
- '36: dummy: <BROADCAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc noqueue master Bridge state UNKNOWN group default qlen 1000'
- ' link/ether 2e:63:67:8c:1c:73 brd ff:ff:ff:ff:ff:ff'
- ' inet6 fe80::2c63:67ff:fe8c:1c73/64 scope link '
- ' valid_lft forever preferred_lft forever'
- '922: eth2@if923: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 9122 qdisc noqueue state UP group default '
- ' link/ether aa:c1:ab:1a:7e:f7 brd ff:ff:ff:ff:ff:ff link-netnsid 1'
- ' inet6 fe80::a8c1:abff:fe1a:7ef7/64 scope link '
- ' valid_lft forever preferred_lft forever'
- '925: eth1@if924: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 9122 qdisc noqueue state UP group default '
- ' link/ether aa:c1:ab:27:0c:93 brd ff:ff:ff:ff:ff:ff link-netnsid 2'
- ' inet6 fe80::a8c1:abff:fe27:c93/64 scope link '
- ' valid_lft forever preferred_lft forever'
ok: [leaf2] =>
iface_output.stdout_lines:
- === ip link ===
- '1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000'
- ' link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00'
- '2: eth0@if921: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT group default '
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff link-netnsid 0'
- '3: Ethernet0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9100 qdisc mq state UNKNOWN mode DEFAULT group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '4: Ethernet4: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '5: Ethernet24: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '6: Ethernet28: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '7: Ethernet36: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '8: Ethernet32: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '9: Ethernet40: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '10: Ethernet44: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '11: Ethernet8: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '12: Ethernet12: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '13: Ethernet20: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '14: Ethernet16: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '15: Ethernet52: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '16: Ethernet48: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '17: Ethernet56: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '18: Ethernet60: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '19: Ethernet68: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '20: Ethernet64: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '21: Ethernet72: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '22: Ethernet76: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '23: Ethernet104: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '24: Ethernet108: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '25: Ethernet116: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '26: Ethernet112: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '27: Ethernet124: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '28: Ethernet120: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '29: Ethernet84: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '30: Ethernet80: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '31: Ethernet88: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '32: Ethernet92: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '33: Ethernet100: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '34: Ethernet96: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN mode DEFAULT group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '35: Bridge: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9100 qdisc noqueue state UP mode DEFAULT group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '36: dummy: <BROADCAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc noqueue master Bridge state UNKNOWN mode DEFAULT group default qlen 1000'
- ' link/ether 1e:ae:25:31:c2:ae brd ff:ff:ff:ff:ff:ff'
- '926: eth2@if927: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 9122 qdisc noqueue state UP mode DEFAULT group default '
- ' link/ether aa:c1:ab:83:94:f1 brd ff:ff:ff:ff:ff:ff link-netnsid 2'
- '928: eth1@if929: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 9122 qdisc noqueue state UP mode DEFAULT group default '
- ' link/ether aa:c1:ab:26:6e:8f brd ff:ff:ff:ff:ff:ff link-netnsid 1'
- === ip addr ===
- '1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000'
- ' link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00'
- ' inet 127.0.0.1/8 scope host lo'
- ' valid_lft forever preferred_lft forever'
- ' inet6 ::1/128 scope host '
- ' valid_lft forever preferred_lft forever'
- '2: eth0@if921: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default '
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff link-netnsid 0'
- ' inet 172.20.20.6/24 brd 172.20.20.255 scope global eth0'
- ' valid_lft forever preferred_lft forever'
- ' inet6 3fff:172:20:20::6/64 scope global nodad '
- ' valid_lft forever preferred_lft forever'
- ' inet6 fe80::d80f:89ff:fee7:73f7/64 scope link '
- ' valid_lft forever preferred_lft forever'
- '3: Ethernet0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9100 qdisc mq state UNKNOWN group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- ' inet 192.168.2.2/30 scope global Ethernet0'
- ' valid_lft forever preferred_lft forever'
- '4: Ethernet4: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '5: Ethernet24: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '6: Ethernet28: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '7: Ethernet36: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '8: Ethernet32: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '9: Ethernet40: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '10: Ethernet44: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '11: Ethernet8: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '12: Ethernet12: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '13: Ethernet20: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '14: Ethernet16: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '15: Ethernet52: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '16: Ethernet48: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '17: Ethernet56: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '18: Ethernet60: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '19: Ethernet68: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '20: Ethernet64: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '21: Ethernet72: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '22: Ethernet76: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '23: Ethernet104: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '24: Ethernet108: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '25: Ethernet116: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '26: Ethernet112: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '27: Ethernet124: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '28: Ethernet120: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '29: Ethernet84: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '30: Ethernet80: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '31: Ethernet88: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '32: Ethernet92: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '33: Ethernet100: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '34: Ethernet96: <BROADCAST,MULTICAST> mtu 9100 qdisc noop state DOWN group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- '35: Bridge: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9100 qdisc noqueue state UP group default qlen 1000'
- ' link/ether da:0f:89:e7:73:f7 brd ff:ff:ff:ff:ff:ff'
- ' inet6 fe80::d80f:89ff:fee7:73f7/64 scope link '
- ' valid_lft forever preferred_lft forever'
- '36: dummy: <BROADCAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc noqueue master Bridge state UNKNOWN group default qlen 1000'
- ' link/ether 1e:ae:25:31:c2:ae brd ff:ff:ff:ff:ff:ff'
- ' inet6 fe80::1cae:25ff:fe31:c2ae/64 scope link '
- ' valid_lft forever preferred_lft forever'
- '926: eth2@if927: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 9122 qdisc noqueue state UP group default '
- ' link/ether aa:c1:ab:83:94:f1 brd ff:ff:ff:ff:ff:ff link-netnsid 2'
- ' inet6 fe80::a8c1:abff:fe83:94f1/64 scope link '
- ' valid_lft forever preferred_lft forever'
- '928: eth1@if929: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 9122 qdisc noqueue state UP group default '
- ' link/ether aa:c1:ab:26:6e:8f brd ff:ff:ff:ff:ff:ff link-netnsid 1'
- ' inet6 fe80::a8c1:abff:fe26:6e8f/64 scope link '
- ' valid_lft forever preferred_lft forever'
PLAY [Configure eBGP (FRR) on all SONiC nodes] **********************************************************************************************************************************************
TASK [sonic_bgp : Render FRR BGP config from template] **************************************************************************************************************************************
ok: [leaf2] => changed=false
checksum: 8544b452831e95de0a4f51dd38a1306bb4888c83
dest: /tmp/frr_bgp_leaf2.conf
gid: 0
group: root
mode: '0644'
owner: root
path: /tmp/frr_bgp_leaf2.conf
size: 1010
state: file
uid: 0
ok: [spine] => changed=false
checksum: a5f7f5e5b761a3d2a457037cc80c5aa04e0809e5
dest: /tmp/frr_bgp_spine.conf
gid: 0
group: root
mode: '0644'
owner: root
path: /tmp/frr_bgp_spine.conf
size: 1290
state: file
uid: 0
ok: [leaf1] => changed=false
checksum: 3448c2fe376825aa0b4246ea95a6a2f50edd16d1
dest: /tmp/frr_bgp_leaf1.conf
gid: 0
group: root
mode: '0644'
owner: root
path: /tmp/frr_bgp_leaf1.conf
size: 1010
state: file
uid: 0
TASK [sonic_bgp : Ensure /etc/frr exists inside container] **********************************************************************************************************************************
ok: [leaf1] => changed=false
cmd: docker exec -u root clab-sonic-evpn-leaf1 mkdir -p /etc/frr
delta: '0:00:00.047683'
end: '2026-04-13 07:18:27.070774'
msg: ''
rc: 0
start: '2026-04-13 07:18:27.023091'
stderr: ''
stderr_lines: <omitted>
stdout: ''
stdout_lines: <omitted>
ok: [leaf2] => changed=false
cmd: docker exec -u root clab-sonic-evpn-leaf2 mkdir -p /etc/frr
delta: '0:00:00.037221'
end: '2026-04-13 07:18:27.070227'
msg: ''
rc: 0
start: '2026-04-13 07:18:27.033006'
stderr: ''
stderr_lines: <omitted>
stdout: ''
stdout_lines: <omitted>
ok: [spine] => changed=false
cmd: docker exec -u root clab-sonic-evpn-spine mkdir -p /etc/frr
delta: '0:00:00.048801'
end: '2026-04-13 07:18:27.070235'
msg: ''
rc: 0
start: '2026-04-13 07:18:27.021434'
stderr: ''
stderr_lines: <omitted>
stdout: ''
stdout_lines: <omitted>
TASK [sonic_bgp : Copy rendered config into container via docker cp] ************************************************************************************************************************
changed: [leaf1] => changed=true
cmd: |-
docker cp /tmp/frr_bgp_leaf1.conf clab-sonic-evpn-leaf1:/tmp/frr.conf
delta: '0:00:00.018168'
end: '2026-04-13 07:18:27.307674'
msg: ''
rc: 0
start: '2026-04-13 07:18:27.289506'
stderr: ''
stderr_lines: <omitted>
stdout: ''
stdout_lines: <omitted>
changed: [spine] => changed=true
cmd: |-
docker cp /tmp/frr_bgp_spine.conf clab-sonic-evpn-spine:/tmp/frr.conf
delta: '0:00:00.019293'
end: '2026-04-13 07:18:27.307239'
msg: ''
rc: 0
start: '2026-04-13 07:18:27.287946'
stderr: ''
stderr_lines: <omitted>
stdout: ''
stdout_lines: <omitted>
changed: [leaf2] => changed=true
cmd: |-
docker cp /tmp/frr_bgp_leaf2.conf clab-sonic-evpn-leaf2:/tmp/frr.conf
delta: '0:00:00.017728'
end: '2026-04-13 07:18:27.310921'
msg: ''
rc: 0
start: '2026-04-13 07:18:27.293193'
stderr: ''
stderr_lines: <omitted>
stdout: ''
stdout_lines: <omitted>
TASK [sonic_bgp : Move config to /etc/frr/frr.conf with correct ownership] ******************************************************************************************************************
changed: [spine] => changed=true
cmd: |-
docker exec -u root clab-sonic-evpn-spine sh -c '
cp /tmp/frr.conf /etc/frr/frr.conf
chown frr:frr /etc/frr/frr.conf
chmod 640 /etc/frr/frr.conf
'
delta: '0:00:00.054127'
end: '2026-04-13 07:18:27.579617'
msg: ''
rc: 0
start: '2026-04-13 07:18:27.525490'
stderr: ''
stderr_lines: <omitted>
stdout: ''
stdout_lines: <omitted>
changed: [leaf2] => changed=true
cmd: |-
docker exec -u root clab-sonic-evpn-leaf2 sh -c '
cp /tmp/frr.conf /etc/frr/frr.conf
chown frr:frr /etc/frr/frr.conf
chmod 640 /etc/frr/frr.conf
'
delta: '0:00:00.048134'
end: '2026-04-13 07:18:27.579252'
msg: ''
rc: 0
start: '2026-04-13 07:18:27.531118'
stderr: ''
stderr_lines: <omitted>
stdout: ''
stdout_lines: <omitted>
changed: [leaf1] => changed=true
cmd: |-
docker exec -u root clab-sonic-evpn-leaf1 sh -c '
cp /tmp/frr.conf /etc/frr/frr.conf
chown frr:frr /etc/frr/frr.conf
chmod 640 /etc/frr/frr.conf
'
delta: '0:00:00.052560'
end: '2026-04-13 07:18:27.580170'
msg: ''
rc: 0
start: '2026-04-13 07:18:27.527610'
stderr: ''
stderr_lines: <omitted>
stdout: ''
stdout_lines: <omitted>
TASK [sonic_bgp : Enable bgpd in FRR daemons file] ******************************************************************************************************************************************
changed: [spine] => changed=true
cmd: |-
docker exec -u root clab-sonic-evpn-spine sh -c '
sed -i "s/^bgpd=no/bgpd=yes/" /etc/frr/daemons
cat /etc/frr/daemons | grep bgpd
'
delta: '0:00:00.055733'
end: '2026-04-13 07:18:27.851478'
msg: ''
rc: 0
start: '2026-04-13 07:18:27.795745'
stderr: ''
stderr_lines: <omitted>
stdout: |-
bgpd=yes
bgpd_options=" -A 127.0.0.1"
# bgpd_wrap="/usr/bin/daemonize /usr/bin/mywrapper"
stdout_lines: <omitted>
changed: [leaf1] => changed=true
cmd: |-
docker exec -u root clab-sonic-evpn-leaf1 sh -c '
sed -i "s/^bgpd=no/bgpd=yes/" /etc/frr/daemons
cat /etc/frr/daemons | grep bgpd
'
delta: '0:00:00.053785'
end: '2026-04-13 07:18:27.851891'
msg: ''
rc: 0
start: '2026-04-13 07:18:27.798106'
stderr: ''
stderr_lines: <omitted>
stdout: |-
bgpd=yes
bgpd_options=" -A 127.0.0.1"
# bgpd_wrap="/usr/bin/daemonize /usr/bin/mywrapper"
stdout_lines: <omitted>
changed: [leaf2] => changed=true
cmd: |-
docker exec -u root clab-sonic-evpn-leaf2 sh -c '
sed -i "s/^bgpd=no/bgpd=yes/" /etc/frr/daemons
cat /etc/frr/daemons | grep bgpd
'
delta: '0:00:00.050539'
end: '2026-04-13 07:18:27.851899'
msg: ''
rc: 0
start: '2026-04-13 07:18:27.801360'
stderr: ''
stderr_lines: <omitted>
stdout: |-
bgpd=yes
bgpd_options=" -A 127.0.0.1"
# bgpd_wrap="/usr/bin/daemonize /usr/bin/mywrapper"
stdout_lines: <omitted>
TASK [sonic_bgp : Show daemons file bgpd line] **********************************************************************************************************************************************
ok: [spine] =>
daemons_check.stdout_lines:
- bgpd=yes
- bgpd_options=" -A 127.0.0.1"
- '# bgpd_wrap="/usr/bin/daemonize /usr/bin/mywrapper"'
ok: [leaf1] =>
daemons_check.stdout_lines:
- bgpd=yes
- bgpd_options=" -A 127.0.0.1"
- '# bgpd_wrap="/usr/bin/daemonize /usr/bin/mywrapper"'
ok: [leaf2] =>
daemons_check.stdout_lines:
- bgpd=yes
- bgpd_options=" -A 127.0.0.1"
- '# bgpd_wrap="/usr/bin/daemonize /usr/bin/mywrapper"'
TASK [sonic_bgp : Detect FRR process manager] ***********************************************************************************************************************************************
ok: [spine] => changed=false
cmd: |-
docker exec -u root clab-sonic-evpn-spine sh -c '
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
if command -v systemctl >/dev/null 2>&1; then echo "systemd"
elif command -v supervisorctl >/dev/null 2>&1; then echo "supervisor"
else echo "unknown"
fi
'
delta: '0:00:00.055936'
end: '2026-04-13 07:18:28.148220'
msg: ''
rc: 0
start: '2026-04-13 07:18:28.092284'
stderr: ''
stderr_lines: <omitted>
stdout: supervisor
stdout_lines: <omitted>
ok: [leaf2] => changed=false
cmd: |-
docker exec -u root clab-sonic-evpn-leaf2 sh -c '
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
if command -v systemctl >/dev/null 2>&1; then echo "systemd"
elif command -v supervisorctl >/dev/null 2>&1; then echo "supervisor"
else echo "unknown"
fi
'
delta: '0:00:00.050947'
end: '2026-04-13 07:18:28.147815'
msg: ''
rc: 0
start: '2026-04-13 07:18:28.096868'
stderr: ''
stderr_lines: <omitted>
stdout: supervisor
stdout_lines: <omitted>
ok: [leaf1] => changed=false
cmd: |-
docker exec -u root clab-sonic-evpn-leaf1 sh -c '
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
if command -v systemctl >/dev/null 2>&1; then echo "systemd"
elif command -v supervisorctl >/dev/null 2>&1; then echo "supervisor"
else echo "unknown"
fi
'
delta: '0:00:00.056013'
end: '2026-04-13 07:18:28.148299'
msg: ''
rc: 0
start: '2026-04-13 07:18:28.092286'
stderr: ''
stderr_lines: <omitted>
stdout: supervisor
stdout_lines: <omitted>
TASK [sonic_bgp : Show detected FRR manager] ************************************************************************************************************************************************
ok: [spine] =>
msg: 'spine -> FRR managed by: supervisor'
ok: [leaf1] =>
msg: 'leaf1 -> FRR managed by: supervisor'
ok: [leaf2] =>
msg: 'leaf2 -> FRR managed by: supervisor'
TASK [sonic_bgp : Restart FRR via systemd] **************************************************************************************************************************************************
skipping: [spine] => changed=false
false_condition: '''systemd'' in frr_manager.stdout'
skip_reason: Conditional result was False
skipping: [leaf1] => changed=false
false_condition: '''systemd'' in frr_manager.stdout'
skip_reason: Conditional result was False
skipping: [leaf2] => changed=false
false_condition: '''systemd'' in frr_manager.stdout'
skip_reason: Conditional result was False
TASK [sonic_bgp : Restart FRR via supervisorctl] ********************************************************************************************************************************************
changed: [spine] => changed=true
cmd: |-
docker exec -u root clab-sonic-evpn-spine sh -c '
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
supervisorctl restart bgpd 2>/dev/null ||
supervisorctl restart frr 2>/dev/null ||
supervisorctl restart all
'
delta: '0:00:01.261441'
end: '2026-04-13 07:18:29.667730'
msg: ''
rc: 0
start: '2026-04-13 07:18:28.406289'
stderr: ''
stderr_lines: <omitted>
stdout: |-
bgpd: ERROR (not running)
bgpd: started
stdout_lines: <omitted>
changed: [leaf1] => changed=true
cmd: |-
docker exec -u root clab-sonic-evpn-leaf1 sh -c '
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
supervisorctl restart bgpd 2>/dev/null ||
supervisorctl restart frr 2>/dev/null ||
supervisorctl restart all
'
delta: '0:00:02.023901'
end: '2026-04-13 07:18:30.431735'
msg: ''
rc: 0
start: '2026-04-13 07:18:28.407834'
stderr: ''
stderr_lines: <omitted>
stdout: |-
bgpd: ERROR (not running)
bgpd: started
stdout_lines: <omitted>
changed: [leaf2] => changed=true
cmd: |-
docker exec -u root clab-sonic-evpn-leaf2 sh -c '
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
supervisorctl restart bgpd 2>/dev/null ||
supervisorctl restart frr 2>/dev/null ||
supervisorctl restart all
'
delta: '0:00:02.062301'
end: '2026-04-13 07:18:30.474376'
msg: ''
rc: 0
start: '2026-04-13 07:18:28.412075'
stderr: ''
stderr_lines: <omitted>
stdout: |-
bgpd: ERROR (not running)
bgpd: started
stdout_lines: <omitted>
TASK [sonic_bgp : Load FRR config directly via vtysh (works regardless of manager)] *********************************************************************************************************
changed: [leaf1] => changed=true
cmd: |-
docker exec -u root clab-sonic-evpn-leaf1 sh -c '
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
vtysh -f /etc/frr/frr.conf
'
delta: '0:00:00.071254'
end: '2026-04-13 07:18:30.762469'
msg: ''
rc: 0
start: '2026-04-13 07:18:30.691215'
stderr: |-
[585|zebra] done
[584|mgmtd] done
[601|staticd] done
[591|bgpd] done
stderr_lines: <omitted>
stdout: |-
[584|mgmtd] sending configuration
[585|zebra] sending configuration
[591|bgpd] sending configuration
[601|staticd] sending configuration
Waiting for children to finish applying config...
stdout_lines: <omitted>
changed: [leaf2] => changed=true
cmd: |-
docker exec -u root clab-sonic-evpn-leaf2 sh -c '
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
vtysh -f /etc/frr/frr.conf
'
delta: '0:00:00.068804'
end: '2026-04-13 07:18:30.763239'
msg: ''
rc: 0
start: '2026-04-13 07:18:30.694435'
stderr: |-
[585|zebra] done
[591|bgpd] done
[584|mgmtd] done
[601|staticd] done
stderr_lines: <omitted>
stdout: |-
[584|mgmtd] sending configuration
[585|zebra] sending configuration
[591|bgpd] sending configuration
[601|staticd] sending configuration
Waiting for children to finish applying config...
stdout_lines: <omitted>
changed: [spine] => changed=true
cmd: |-
docker exec -u root clab-sonic-evpn-spine sh -c '
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
vtysh -f /etc/frr/frr.conf
'
delta: '0:00:00.076364'
end: '2026-04-13 07:18:30.764322'
msg: ''
rc: 0
start: '2026-04-13 07:18:30.687958'
stderr: |-
[614|zebra] done
[613|mgmtd] done
[620|bgpd] done
[630|staticd] done
stderr_lines: <omitted>
stdout: |-
[613|mgmtd] sending configuration
[614|zebra] sending configuration
[620|bgpd] sending configuration
[630|staticd] sending configuration
Waiting for children to finish applying config...
stdout_lines: <omitted>
TASK [sonic_bgp : Wait for FRR to apply config] *********************************************************************************************************************************************
Pausing for 6 seconds
(ctrl+C then 'C' = continue early, ctrl+C then 'A' = abort)
ok: [spine] => changed=false
delta: 6
echo: true
rc: 0
start: '2026-04-13 07:18:30.802044'
stderr: ''
stdout: Paused for 6.0 seconds
stop: '2026-04-13 07:18:36.803936'
user_input: ''
PLAY [Verify eBGP sessions are up] **********************************************************************************************************************************************************
TASK [sonic_verify : Get BGP summary from vtysh] ********************************************************************************************************************************************
ok: [leaf1] => changed=false
cmd: |-
docker exec -u root clab-sonic-evpn-leaf1 sh -c '
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
vtysh -c "show bgp summary"
'
delta: '0:00:00.063380'
end: '2026-04-13 07:18:37.079207'
msg: ''
rc: 0
start: '2026-04-13 07:18:37.015827'
stderr: ''
stderr_lines: <omitted>
stdout: |2-
IPv4 Unicast Summary:
BGP router identifier 10.0.0.2, local AS number 65001 VRF default vrf-id 0
BGP table version 6
RIB entries 11, using 1408 bytes of memory
Peers 1, using 24 KiB of memory
Peer groups 1, using 64 bytes of memory
Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd PfxSnt Desc
192.168.1.1 4 65000 10 9 6 0 0 00:00:05 5 6 spine
Total number of neighbors 1
stdout_lines: <omitted>
ok: [spine] => changed=false
cmd: |-
docker exec -u root clab-sonic-evpn-spine sh -c '
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
vtysh -c "show bgp summary"
'
delta: '0:00:00.064336'
end: '2026-04-13 07:18:37.078879'
msg: ''
rc: 0
start: '2026-04-13 07:18:37.014543'
stderr: ''
stderr_lines: <omitted>
stdout: |2-
IPv4 Unicast Summary:
BGP router identifier 10.0.0.1, local AS number 65000 VRF default vrf-id 0
BGP table version 6
RIB entries 11, using 1408 bytes of memory
Peers 2, using 47 KiB of memory
Peer groups 1, using 64 bytes of memory
Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd PfxSnt Desc
192.168.1.2 4 65001 9 10 6 0 0 00:00:05 3 6 leaf1
192.168.2.2 4 65002 9 10 6 0 0 00:00:05 3 6 leaf2
Total number of neighbors 2
stdout_lines: <omitted>
ok: [leaf2] => changed=false
cmd: |-
docker exec -u root clab-sonic-evpn-leaf2 sh -c '
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
vtysh -c "show bgp summary"
'
delta: '0:00:00.058494'
end: '2026-04-13 07:18:37.078872'
msg: ''
rc: 0
start: '2026-04-13 07:18:37.020378'
stderr: ''
stderr_lines: <omitted>
stdout: |2-
IPv4 Unicast Summary:
BGP router identifier 10.0.0.3, local AS number 65002 VRF default vrf-id 0
BGP table version 6
RIB entries 11, using 1408 bytes of memory
Peers 1, using 24 KiB of memory
Peer groups 1, using 64 bytes of memory
Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd PfxSnt Desc
192.168.2.1 4 65000 10 9 6 0 0 00:00:05 5 6 spine
Total number of neighbors 1
stdout_lines: <omitted>
TASK [sonic_verify : Print full BGP summary (raw)] ******************************************************************************************************************************************
ok: [spine] =>
bgp_summary.stdout_lines:
- ''
- 'IPv4 Unicast Summary:'
- BGP router identifier 10.0.0.1, local AS number 65000 VRF default vrf-id 0
- BGP table version 6
- RIB entries 11, using 1408 bytes of memory
- Peers 2, using 47 KiB of memory
- Peer groups 1, using 64 bytes of memory
- ''
- Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd PfxSnt Desc
- 192.168.1.2 4 65001 9 10 6 0 0 00:00:05 3 6 leaf1
- 192.168.2.2 4 65002 9 10 6 0 0 00:00:05 3 6 leaf2
- ''
- Total number of neighbors 2
ok: [leaf1] =>
bgp_summary.stdout_lines:
- ''
- 'IPv4 Unicast Summary:'
- BGP router identifier 10.0.0.2, local AS number 65001 VRF default vrf-id 0
- BGP table version 6
- RIB entries 11, using 1408 bytes of memory
- Peers 1, using 24 KiB of memory
- Peer groups 1, using 64 bytes of memory
- ''
- Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd PfxSnt Desc
- 192.168.1.1 4 65000 10 9 6 0 0 00:00:05 5 6 spine
- ''
- Total number of neighbors 1
ok: [leaf2] =>
bgp_summary.stdout_lines:
- ''
- 'IPv4 Unicast Summary:'
- BGP router identifier 10.0.0.3, local AS number 65002 VRF default vrf-id 0
- BGP table version 6
- RIB entries 11, using 1408 bytes of memory
- Peers 1, using 24 KiB of memory
- Peer groups 1, using 64 bytes of memory
- ''
- Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd PfxSnt Desc
- 192.168.2.1 4 65000 10 9 6 0 0 00:00:05 5 6 spine
- ''
- Total number of neighbors 1
TASK [sonic_verify : Show BGP IPv4 route table] *********************************************************************************************************************************************
ok: [leaf2] => changed=false
cmd: |-
docker exec -u root clab-sonic-evpn-leaf2 sh -c '
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
vtysh -c "show ip bgp"
'
delta: '0:00:00.057825'
end: '2026-04-13 07:18:37.382896'
msg: ''
rc: 0
start: '2026-04-13 07:18:37.325071'
stderr: ''
stderr_lines: <omitted>
stdout: |-
BGP table version is 6, local router ID is 10.0.0.3, vrf id 0
Default local pref 100, local AS 65002
Status codes: s suppressed, d damped, h history, u unsorted, * valid, > best, = multipath,
i internal, r RIB-failure, S Stale, R Removed
Nexthop codes: @NNN nexthop's vrf id, < announce-nh-self
Origin codes: i - IGP, e - EGP, ? - incomplete
RPKI validation codes: V valid, I invalid, N Not found
Network Next Hop Metric LocPrf Weight Path
*> 10.0.0.1/32 192.168.2.1 0 0 65000 ?
*> 10.0.0.2/32 192.168.2.1 0 65000 65001 ?
*> 10.0.0.3/32 0.0.0.0 0 32768 ?
*> 172.20.20.0/24 0.0.0.0 0 32768 ?
* 192.168.2.1 0 0 65000 ?
*> 192.168.1.0/30 192.168.2.1 0 0 65000 ?
*> 192.168.2.0/30 0.0.0.0 0 32768 ?
* 192.168.2.1 0 0 65000 ?
Displayed 6 routes and 8 total paths
stdout_lines: <omitted>
ok: [spine] => changed=false
cmd: |-
docker exec -u root clab-sonic-evpn-spine sh -c '
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
vtysh -c "show ip bgp"
'
delta: '0:00:00.064606'
end: '2026-04-13 07:18:37.382809'
msg: ''
rc: 0
start: '2026-04-13 07:18:37.318203'
stderr: ''
stderr_lines: <omitted>
stdout: |-
BGP table version is 6, local router ID is 10.0.0.1, vrf id 0
Default local pref 100, local AS 65000
Status codes: s suppressed, d damped, h history, u unsorted, * valid, > best, = multipath,
i internal, r RIB-failure, S Stale, R Removed
Nexthop codes: @NNN nexthop's vrf id, < announce-nh-self
Origin codes: i - IGP, e - EGP, ? - incomplete
RPKI validation codes: V valid, I invalid, N Not found
Network Next Hop Metric LocPrf Weight Path
*> 10.0.0.1/32 0.0.0.0 0 32768 ?
*> 10.0.0.2/32 192.168.1.2 0 0 65001 ?
*> 10.0.0.3/32 192.168.2.2 0 0 65002 ?
*> 172.20.20.0/24 0.0.0.0 0 32768 ?
* 192.168.1.2 0 0 65001 ?
* 192.168.2.2 0 0 65002 ?
*> 192.168.1.0/30 0.0.0.0 0 32768 ?
* 192.168.1.2 0 0 65001 ?
*> 192.168.2.0/30 0.0.0.0 0 32768 ?
* 192.168.2.2 0 0 65002 ?
Displayed 6 routes and 10 total paths
stdout_lines: <omitted>
ok: [leaf1] => changed=false
cmd: |-
docker exec -u root clab-sonic-evpn-leaf1 sh -c '
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
vtysh -c "show ip bgp"
'
delta: '0:00:00.061308'
end: '2026-04-13 07:18:37.382576'
msg: ''
rc: 0
start: '2026-04-13 07:18:37.321268'
stderr: ''
stderr_lines: <omitted>
stdout: |-
BGP table version is 6, local router ID is 10.0.0.2, vrf id 0
Default local pref 100, local AS 65001
Status codes: s suppressed, d damped, h history, u unsorted, * valid, > best, = multipath,
i internal, r RIB-failure, S Stale, R Removed
Nexthop codes: @NNN nexthop's vrf id, < announce-nh-self
Origin codes: i - IGP, e - EGP, ? - incomplete
RPKI validation codes: V valid, I invalid, N Not found
Network Next Hop Metric LocPrf Weight Path
*> 10.0.0.1/32 192.168.1.1 0 0 65000 ?
*> 10.0.0.2/32 0.0.0.0 0 32768 ?
*> 10.0.0.3/32 192.168.1.1 0 65000 65002 ?
*> 172.20.20.0/24 0.0.0.0 0 32768 ?
* 192.168.1.1 0 0 65000 ?
*> 192.168.1.0/30 0.0.0.0 0 32768 ?
* 192.168.1.1 0 0 65000 ?
*> 192.168.2.0/30 192.168.1.1 0 0 65000 ?
Displayed 6 routes and 8 total paths
stdout_lines: <omitted>
TASK [sonic_verify : Print BGP routes] ******************************************************************************************************************************************************
ok: [spine] =>
bgp_routes.stdout_lines:
- BGP table version is 6, local router ID is 10.0.0.1, vrf id 0
- Default local pref 100, local AS 65000
- 'Status codes: s suppressed, d damped, h history, u unsorted, * valid, > best, = multipath,'
- ' i internal, r RIB-failure, S Stale, R Removed'
- 'Nexthop codes: @NNN nexthop''s vrf id, < announce-nh-self'
- 'Origin codes: i - IGP, e - EGP, ? - incomplete'
- 'RPKI validation codes: V valid, I invalid, N Not found'
- ''
- ' Network Next Hop Metric LocPrf Weight Path'
- ' *> 10.0.0.1/32 0.0.0.0 0 32768 ?'
- ' *> 10.0.0.2/32 192.168.1.2 0 0 65001 ?'
- ' *> 10.0.0.3/32 192.168.2.2 0 0 65002 ?'
- ' *> 172.20.20.0/24 0.0.0.0 0 32768 ?'
- ' * 192.168.1.2 0 0 65001 ?'
- ' * 192.168.2.2 0 0 65002 ?'
- ' *> 192.168.1.0/30 0.0.0.0 0 32768 ?'
- ' * 192.168.1.2 0 0 65001 ?'
- ' *> 192.168.2.0/30 0.0.0.0 0 32768 ?'
- ' * 192.168.2.2 0 0 65002 ?'
- ''
- Displayed 6 routes and 10 total paths
ok: [leaf1] =>
bgp_routes.stdout_lines:
- BGP table version is 6, local router ID is 10.0.0.2, vrf id 0
- Default local pref 100, local AS 65001
- 'Status codes: s suppressed, d damped, h history, u unsorted, * valid, > best, = multipath,'
- ' i internal, r RIB-failure, S Stale, R Removed'
- 'Nexthop codes: @NNN nexthop''s vrf id, < announce-nh-self'
- 'Origin codes: i - IGP, e - EGP, ? - incomplete'
- 'RPKI validation codes: V valid, I invalid, N Not found'
- ''
- ' Network Next Hop Metric LocPrf Weight Path'
- ' *> 10.0.0.1/32 192.168.1.1 0 0 65000 ?'
- ' *> 10.0.0.2/32 0.0.0.0 0 32768 ?'
- ' *> 10.0.0.3/32 192.168.1.1 0 65000 65002 ?'
- ' *> 172.20.20.0/24 0.0.0.0 0 32768 ?'
- ' * 192.168.1.1 0 0 65000 ?'
- ' *> 192.168.1.0/30 0.0.0.0 0 32768 ?'
- ' * 192.168.1.1 0 0 65000 ?'
- ' *> 192.168.2.0/30 192.168.1.1 0 0 65000 ?'
- ''
- Displayed 6 routes and 8 total paths
ok: [leaf2] =>
bgp_routes.stdout_lines:
- BGP table version is 6, local router ID is 10.0.0.3, vrf id 0
- Default local pref 100, local AS 65002
- 'Status codes: s suppressed, d damped, h history, u unsorted, * valid, > best, = multipath,'
- ' i internal, r RIB-failure, S Stale, R Removed'
- 'Nexthop codes: @NNN nexthop''s vrf id, < announce-nh-self'
- 'Origin codes: i - IGP, e - EGP, ? - incomplete'
- 'RPKI validation codes: V valid, I invalid, N Not found'
- ''
- ' Network Next Hop Metric LocPrf Weight Path'
- ' *> 10.0.0.1/32 192.168.2.1 0 0 65000 ?'
- ' *> 10.0.0.2/32 192.168.2.1 0 65000 65001 ?'
- ' *> 10.0.0.3/32 0.0.0.0 0 32768 ?'
- ' *> 172.20.20.0/24 0.0.0.0 0 32768 ?'
- ' * 192.168.2.1 0 0 65000 ?'
- ' *> 192.168.1.0/30 192.168.2.1 0 0 65000 ?'
- ' *> 192.168.2.0/30 0.0.0.0 0 32768 ?'
- ' * 192.168.2.1 0 0 65000 ?'
- ''
- Displayed 6 routes and 8 total paths
TASK [sonic_verify : Show IP route table (kernel)] ******************************************************************************************************************************************
ok: [leaf1] => changed=false
cmd: docker exec -u root clab-sonic-evpn-leaf1 ip route show
delta: '0:00:00.045546'
end: '2026-04-13 07:18:37.670439'
msg: ''
rc: 0
start: '2026-04-13 07:18:37.624893'
stderr: ''
stderr_lines: <omitted>
stdout: |-
default via 172.20.20.1 dev eth0
10.0.0.1 via 192.168.1.1 dev Ethernet0 proto bgp metric 20
10.0.0.3 via 192.168.1.1 dev Ethernet0 proto bgp metric 20
172.20.20.0/24 dev eth0 proto kernel scope link src 172.20.20.4
192.168.1.0/30 dev Ethernet0 proto kernel scope link src 192.168.1.2
192.168.2.0/30 via 192.168.1.1 dev Ethernet0 proto bgp metric 20
stdout_lines: <omitted>
ok: [leaf2] => changed=false
cmd: docker exec -u root clab-sonic-evpn-leaf2 ip route show
delta: '0:00:00.042560'
end: '2026-04-13 07:18:37.670684'
msg: ''
rc: 0
start: '2026-04-13 07:18:37.628124'
stderr: ''
stderr_lines: <omitted>
stdout: |-
default via 172.20.20.1 dev eth0
10.0.0.1 via 192.168.2.1 dev Ethernet0 proto bgp metric 20
10.0.0.2 via 192.168.2.1 dev Ethernet0 proto bgp metric 20
172.20.20.0/24 dev eth0 proto kernel scope link src 172.20.20.6
192.168.1.0/30 via 192.168.2.1 dev Ethernet0 proto bgp metric 20
192.168.2.0/30 dev Ethernet0 proto kernel scope link src 192.168.2.2
stdout_lines: <omitted>
ok: [spine] => changed=false
cmd: docker exec -u root clab-sonic-evpn-spine ip route show
delta: '0:00:00.047417'
end: '2026-04-13 07:18:37.670461'
msg: ''
rc: 0
start: '2026-04-13 07:18:37.623044'
stderr: ''
stderr_lines: <omitted>
stdout: |-
default via 172.20.20.1 dev eth0
10.0.0.2 via 192.168.1.2 dev Ethernet0 proto bgp metric 20
10.0.0.3 via 192.168.2.2 dev Ethernet4 proto bgp metric 20
172.20.20.0/24 dev eth0 proto kernel scope link src 172.20.20.3
192.168.1.0/30 dev Ethernet0 proto kernel scope link src 192.168.1.1
192.168.2.0/30 dev Ethernet4 proto kernel scope link src 192.168.2.1
stdout_lines: <omitted>
TASK [sonic_verify : Print kernel routes] ***************************************************************************************************************************************************
ok: [spine] =>
kernel_routes.stdout_lines:
- 'default via 172.20.20.1 dev eth0 '
- '10.0.0.2 via 192.168.1.2 dev Ethernet0 proto bgp metric 20 '
- '10.0.0.3 via 192.168.2.2 dev Ethernet4 proto bgp metric 20 '
- '172.20.20.0/24 dev eth0 proto kernel scope link src 172.20.20.3 '
- '192.168.1.0/30 dev Ethernet0 proto kernel scope link src 192.168.1.1 '
- '192.168.2.0/30 dev Ethernet4 proto kernel scope link src 192.168.2.1 '
ok: [leaf1] =>
kernel_routes.stdout_lines:
- 'default via 172.20.20.1 dev eth0 '
- '10.0.0.1 via 192.168.1.1 dev Ethernet0 proto bgp metric 20 '
- '10.0.0.3 via 192.168.1.1 dev Ethernet0 proto bgp metric 20 '
- '172.20.20.0/24 dev eth0 proto kernel scope link src 172.20.20.4 '
- '192.168.1.0/30 dev Ethernet0 proto kernel scope link src 192.168.1.2 '
- '192.168.2.0/30 via 192.168.1.1 dev Ethernet0 proto bgp metric 20 '
ok: [leaf2] =>
kernel_routes.stdout_lines:
- 'default via 172.20.20.1 dev eth0 '
- '10.0.0.1 via 192.168.2.1 dev Ethernet0 proto bgp metric 20 '
- '10.0.0.2 via 192.168.2.1 dev Ethernet0 proto bgp metric 20 '
- '172.20.20.0/24 dev eth0 proto kernel scope link src 172.20.20.6 '
- '192.168.1.0/30 via 192.168.2.1 dev Ethernet0 proto bgp metric 20 '
- '192.168.2.0/30 dev Ethernet0 proto kernel scope link src 192.168.2.2 '
TASK [sonic_verify : Check BGP routes exist in kernel (proto bgp)] **************************************************************************************************************************
ok: [leaf2] => changed=false
cmd: docker exec -u root clab-sonic-evpn-leaf2 ip route show proto bgp
delta: '0:00:00.052664'
end: '2026-04-13 07:18:37.967407'
msg: ''
rc: 0
start: '2026-04-13 07:18:37.914743'
stderr: ''
stderr_lines: <omitted>
stdout: |-
10.0.0.1 via 192.168.2.1 dev Ethernet0 metric 20
10.0.0.2 via 192.168.2.1 dev Ethernet0 metric 20
192.168.1.0/30 via 192.168.2.1 dev Ethernet0 metric 20
stdout_lines: <omitted>
ok: [spine] => changed=false
cmd: docker exec -u root clab-sonic-evpn-spine ip route show proto bgp
delta: '0:00:00.057841'
end: '2026-04-13 07:18:37.967008'
msg: ''
rc: 0
start: '2026-04-13 07:18:37.909167'
stderr: ''
stderr_lines: <omitted>
stdout: |-
10.0.0.2 via 192.168.1.2 dev Ethernet0 metric 20
10.0.0.3 via 192.168.2.2 dev Ethernet4 metric 20
stdout_lines: <omitted>
ok: [leaf1] => changed=false
cmd: docker exec -u root clab-sonic-evpn-leaf1 ip route show proto bgp
delta: '0:00:00.056056'
end: '2026-04-13 07:18:37.967205'
msg: ''
rc: 0
start: '2026-04-13 07:18:37.911149'
stderr: ''
stderr_lines: <omitted>
stdout: |-
10.0.0.1 via 192.168.1.1 dev Ethernet0 metric 20
10.0.0.3 via 192.168.1.1 dev Ethernet0 metric 20
192.168.2.0/30 via 192.168.1.1 dev Ethernet0 metric 20
stdout_lines: <omitted>
TASK [sonic_verify : Assert BGP routes are installed in kernel] *****************************************************************************************************************************
ok: [spine] => changed=false
msg: ✅ BGP routes present in kernel on spine
ok: [leaf1] => changed=false
msg: ✅ BGP routes present in kernel on leaf1
ok: [leaf2] => changed=false
msg: ✅ BGP routes present in kernel on leaf2
TASK [sonic_verify : Show BGP neighbor state] ***********************************************************************************************************************************************
ok: [leaf1] => changed=false
cmd: |-
docker exec -u root clab-sonic-evpn-leaf1 sh -c '
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
vtysh -c "show bgp neighbors" | grep -E "BGP state|remote AS|Description"
'
delta: '0:00:00.058630'
end: '2026-04-13 07:18:38.290049'
msg: ''
rc: 0
start: '2026-04-13 07:18:38.231419'
stderr: ''
stderr_lines: <omitted>
stdout: |-
BGP neighbor is 192.168.1.1, remote AS 65000, local AS 65001, external link
Description: spine
BGP state = Established, up for 00:00:06
stdout_lines: <omitted>
ok: [leaf2] => changed=false
cmd: |-
docker exec -u root clab-sonic-evpn-leaf2 sh -c '
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
vtysh -c "show bgp neighbors" | grep -E "BGP state|remote AS|Description"
'
delta: '0:00:00.059322'
end: '2026-04-13 07:18:38.290538'
msg: ''
rc: 0
start: '2026-04-13 07:18:38.231216'
stderr: ''
stderr_lines: <omitted>
stdout: |-
BGP neighbor is 192.168.2.1, remote AS 65000, local AS 65002, external link
Description: spine
BGP state = Established, up for 00:00:06
stdout_lines: <omitted>
ok: [spine] => changed=false
cmd: |-
docker exec -u root clab-sonic-evpn-spine sh -c '
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
vtysh -c "show bgp neighbors" | grep -E "BGP state|remote AS|Description"
'
delta: '0:00:00.064233'
end: '2026-04-13 07:18:38.290445'
msg: ''
rc: 0
start: '2026-04-13 07:18:38.226212'
stderr: ''
stderr_lines: <omitted>
stdout: |-
BGP neighbor is 192.168.1.2, remote AS 65001, local AS 65000, external link
Description: leaf1
BGP state = Established, up for 00:00:06
BGP neighbor is 192.168.2.2, remote AS 65002, local AS 65000, external link
Description: leaf2
BGP state = Established, up for 00:00:06
stdout_lines: <omitted>
TASK [sonic_verify : Print BGP neighbor states] *********************************************************************************************************************************************
ok: [spine] =>
bgp_neighbor_state.stdout_lines:
- BGP neighbor is 192.168.1.2, remote AS 65001, local AS 65000, external link
- ' Description: leaf1'
- ' BGP state = Established, up for 00:00:06'
- BGP neighbor is 192.168.2.2, remote AS 65002, local AS 65000, external link
- ' Description: leaf2'
- ' BGP state = Established, up for 00:00:06'
ok: [leaf1] =>
bgp_neighbor_state.stdout_lines:
- BGP neighbor is 192.168.1.1, remote AS 65000, local AS 65001, external link
- ' Description: spine'
- ' BGP state = Established, up for 00:00:06'
ok: [leaf2] =>
bgp_neighbor_state.stdout_lines:
- BGP neighbor is 192.168.2.1, remote AS 65000, local AS 65002, external link
- ' Description: spine'
- ' BGP state = Established, up for 00:00:06'
PLAY RECAP **********************************************************************************************************************************************************************************
leaf1 : ok=27 changed=8 unreachable=0 failed=0 skipped=1 rescued=0 ignored=0
leaf2 : ok=27 changed=8 unreachable=0 failed=0 skipped=1 rescued=0 ignored=0
spine : ok=28 changed=8 unreachable=0 failed=0 skipped=1 rescued=0 ignored=0
Ansible PLAY RECAP Breakdown
These are the task execution counters for each host at the end of a playbook run.
ok
Tasks that ran successfully — either the system was already in the desired state or the task completed without errors. It includes both tasks that made changes and those that didn't need to.
changed
Tasks that actually modified something on the remote host — like installing a package, editing a config file, restarting a service, etc. This is a subset of ok. A lower changed count on re-runs is a good sign (idempotency working correctly).
skipped
Tasks that were intentionally not run — usually because a when: condition evaluated to false. For example:
yaml
- name: Install on Debian only
apt: ...
when: ansible_os_family == "Debian"If the host is not Debian, that task gets skipped.
Other counters (yours show 0, but good to know)
| Counter | Meaning |
|---|---|
unreachable | Host couldn't be SSH'd into |
failed | Task ran but returned an error |
rescued | Failed tasks caught by a rescue: block |
ignored | Failed tasks with ignore_errors: yes |
Comments
Post a Comment