cli: tighten 'show interface' detail-view alignment

The Ethernet packet/RMON counters at the bottom of 'show interface
<name>' were appended with a wider label column than the operational
data above them, breaking visual alignment.  Group them under an
"Ethernet Statistics" section heading (Decore.title), same convention
as 'Available Networks' in the wifi scan view.

Narrow the operational-data label column from 20 to 19 chars so the
title bar exactly matches the heading text — a tighter and more
deliberately aligned look.  All labels in pr_iface fit within 19
chars except 'lacp system priority' (20); rename it to 'lacp sys
priority' for consistency with the other 'lacp ...' labels (lacp
aggregate id, lacp partner mac, ...) so the new field width works
universally.

Refresh CLI snapshots and doc samples to match.

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
This commit is contained in:
Joachim Wiberg
2026-05-27 20:53:30 +02:00
parent c3d17586fd
commit 65eb4c072a
20 changed files with 328 additions and 327 deletions
+51 -50
View File
@@ -42,34 +42,34 @@ The detail view spells everything out, including auto-negotiation
state and the speed in Mbit/s.
<pre class="cli"><code>admin@example:/> <b>show interface eth1</b>
name : eth1
index : 2
mtu : 1500
operational status : up
link mode : 1000baseT
auto-negotiation : on
duplex : full
speed : 1000
physical address : 00:53:00:06:11:01
ipv4 addresses :
ipv6 addresses :
in-octets : 75581
out-octets : 43130
name : eth1
index : 2
mtu : 1500
operational status : up
link mode : 1000baseT
auto-negotiation : on
duplex : full
speed : 1000
physical address : 00:53:00:06:11:01
ipv4 addresses :
ipv6 addresses :
in-octets : 75581
out-octets : 43130
...
admin@example:/> <b>show interface eth4</b>
name : eth4
index : 5
mtu : 1500
operational status : up
link mode : 100baseTX
auto-negotiation : on
duplex : full
speed : 100
physical address : 00:53:00:06:11:04
ipv4 addresses :
ipv6 addresses :
in-octets : 75439
out-octets : 550704
name : eth4
index : 5
mtu : 1500
operational status : up
link mode : 100baseTX
auto-negotiation : on
duplex : full
speed : 100
physical address : 00:53:00:06:11:04
ipv4 addresses :
ipv6 addresses :
in-octets : 75439
out-octets : 550704
...
admin@example:/>
</code></pre>
@@ -200,30 +200,31 @@ speed : 10000
Ethernet packet statistics[^1] can be listed as shown below.
<pre class="cli"><code>admin@example:/> <b>show interface eth1</b>
name : eth1
index : 2
mtu : 1500
operational status : up
link mode : 1000baseT
auto-negotiation : on
duplex : full
speed : 1000
physical address : 00:53:00:06:11:0a
ipv4 addresses :
ipv6 addresses :
in-octets : 75581
out-octets : 43130
eth-in-frames : 434
eth-in-multicast-frames : 296
eth-in-broadcast-frames : 138
eth-in-error-fcs-frames : 0
eth-in-error-oversize-frames : 0
eth-out-frames : 310
eth-out-multicast-frames : 310
eth-out-broadcast-frames : 0
eth-out-good-octets : 76821
eth-in-good-octets : 60598
name : eth1
index : 2
mtu : 1500
operational status : up
link mode : 1000baseT
auto-negotiation : on
duplex : full
speed : 1000
physical address : 00:53:00:06:11:0a
ipv4 addresses :
ipv6 addresses :
in-octets : 75581
out-octets : 43130
───────────────────
<b>Ethernet Statistics</b>
in-frames : 434
in-multicast-frames : 296
in-broadcast-frames : 138
in-error-fcs-frames : 0
in-error-oversize-frames : 0
out-frames : 310
out-multicast-frames : 310
out-broadcast-frames : 0
out-good-octets : 76821
in-good-octets : 60598
admin@example:/>
</code></pre>
+3 -3
View File
@@ -90,9 +90,9 @@ The description is visible in the operational datastore and in `show`
commands:
<pre class="cli"><code>admin@example:/> <b>show interface eth0</b>
name : eth0
description : Uplink to core switch
index : 2
name : eth0
description : Uplink to core switch
index : 2
...
</code></pre>
+48 -48
View File
@@ -124,45 +124,45 @@ In addition to basic status shown in the interface overview, detailed
LAG status can be inspected:
<pre class="cli"><code>admin@example:/> <b>show interface lag0</b>
name : lag0
index : 25
mtu : 1500
operational status : up
physical address : 00:a0:85:00:02:00
lag mode : static
lag type : balance-xor
lag hash : layer2
link debounce up : 0 msec
link debounce down : 0 msec
ipv4 addresses :
ipv6 addresses :
in-octets : 0
out-octets : 2142
name : lag0
index : 25
mtu : 1500
operational status : up
physical address : 00:a0:85:00:02:00
lag mode : static
lag type : balance-xor
lag hash : layer2
link debounce up : 0 msec
link debounce down : 0 msec
ipv4 addresses :
ipv6 addresses :
in-octets : 0
out-octets : 2142
</code></pre>
Same aggregate, but in LACP mode:
<pre class="cli"><code>admin@example:/> <b>show interface lag0</b>
name : lag0
index : 24
mtu : 1500
operational status : up
physical address : 00:a0:85:00:02:00
lag mode : lacp
lag hash : layer2
lacp mode : active
lacp rate : fast (1s)
lacp aggregate id : 1
name : lag0
index : 24
mtu : 1500
operational status : up
physical address : 00:a0:85:00:02:00
lag mode : lacp
lag hash : layer2
lacp mode : active
lacp rate : fast (1s)
lacp aggregate id : 1
lacp system priority: 65535
lacp actor key : 9
lacp partner key : 9
lacp partner mac : 00:a0:85:00:03:00
link debounce up : 0 msec
link debounce down : 0 msec
ipv4 addresses :
ipv6 addresses :
in-octets : 100892
out-octets : 111776
lacp actor key : 9
lacp partner key : 9
lacp partner mac : 00:a0:85:00:03:00
link debounce up : 0 msec
link debounce down : 0 msec
ipv4 addresses :
ipv6 addresses :
in-octets : 100892
out-octets : 111776
</code></pre>
Member ports provide additional status information:
@@ -184,21 +184,21 @@ Member ports provide additional status information:
Example member port status:
<pre class="cli"><code>admin@example:/> <b>show interface eth7</b>
name : eth7
index : 8
mtu : 1500
operational status : up
physical address : 00:a0:85:00:02:00
lag member : lag0
lag member state : active
lacp aggregate id : 1
lacp actor state : active, short_timeout, aggregating, in_sync, collecting, distributing
lacp partner state : active, short_timeout, aggregating, in_sync, collecting, distributing
link failure count : 0
ipv4 addresses :
ipv6 addresses :
in-octets : 473244
out-octets : 499037
name : eth7
index : 8
mtu : 1500
operational status : up
physical address : 00:a0:85:00:02:00
lag member : lag0
lag member state : active
lacp aggregate id : 1
lacp actor state : active, short_timeout, aggregating, in_sync, collecting, distributing
lacp partner state : active, short_timeout, aggregating, in_sync, collecting, distributing
link failure count : 0
ipv4 addresses :
ipv6 addresses :
in-octets : 473244
out-octets : 499037
</code></pre>
+5 -5
View File
@@ -351,11 +351,11 @@ wg0 wireguard UP 2 peers (1 up)
ipv6 fd00::1/64 (static)
admin@example:/> <b>show interface wg0</b>
name : wg0
type : wireguard
index : 12
operational status : up
peers : 2
name : wg0
type : wireguard
index : 12
operational status : up
peers : 2
Peer 1:
status : UP
+23 -23
View File
@@ -223,22 +223,22 @@ access-point).
Use `show interface` to see discovered networks and their signal strength:
<pre class="cli"><code>admin@example:/> <b>show interface wifi0</b>
name : wifi0
type : wifi
index : 3
mtu : 1500
operational status : up
ip forwarding : enabled
physical address : f0:09:0d:36:5f:86
ipv4 addresses : 192.168.1.100/24 (dhcp)
ipv6 addresses :
in-octets : 148388
out-octets : 24555
mode : station
ssid : MyNetwork
signal : -45 dBm (good)
rx bitrate : 72.2 Mbps
tx bitrate : 86.6 Mbps
name : wifi0
type : wifi
index : 3
mtu : 1500
operational status : up
ip forwarding : enabled
physical address : f0:09:0d:36:5f:86
ipv4 addresses : 192.168.1.100/24 (dhcp)
ipv6 addresses :
in-octets : 148388
out-octets : 24555
mode : station
ssid : MyNetwork
signal : -45 dBm (good)
rx bitrate : 72.2 Mbps
tx bitrate : 86.6 Mbps
──────────────────────────────────────────────────────────────────────
<span class="title">Available Networks</span>
<span class="header">SSID BSSID SECURITY SIGNAL CHANNEL</span>
@@ -304,13 +304,13 @@ admin@example:/config/interface/wifi0/> <b>leave</b>
The connection attempt will start immediately. You can verify the connection status:
<pre class="cli"><code>admin@example:/> <b>show interface wifi0</b>
name : wifi0
type : wifi
operational status : up
physical address : f0:09:0d:36:5f:86
mode : station
ssid : MyHomeNetwork
signal : -52 dBm (good)
name : wifi0
type : wifi
operational status : up
physical address : f0:09:0d:36:5f:86
mode : station
ssid : MyHomeNetwork
signal : -52 dBm (good)
</code></pre>
**Station configuration parameters:**
+52 -52
View File
@@ -1194,13 +1194,13 @@ class Iface:
always been rendered when the interface has no IPs.
"""
if not values:
print(f"{label:<{20}}:")
print(f"{label:<{19}}:")
return
first = True
for value in values:
key = label if first else ''
colon = ':' if first else ' '
print(f"{key:<{20}}{colon} {value}")
print(f"{key:<{19}}{colon} {value}")
first = False
@staticmethod
@@ -1583,36 +1583,36 @@ class Iface:
def pr_iface(self):
if self.is_in_container():
print(Decore.gray_bg(f"{'owned by container':<{20}}: {', ' . join(self.containers)}"))
print(Decore.gray_bg(f"{'owned by container':<{19}}: {', ' . join(self.containers)}"))
print(f"{'name':<{20}}: {self.name}")
print(f"{'type':<{20}}: {self.type.split(':')[1]}")
print(f"{'index':<{20}}: {self.index}")
print(f"{'name':<{19}}: {self.name}")
print(f"{'type':<{19}}: {self.type.split(':')[1]}")
print(f"{'index':<{19}}: {self.index}")
if self.mtu:
print(f"{'mtu':<{20}}: {self.mtu}")
print(f"{'mtu':<{19}}: {self.mtu}")
if self.oper():
print(f"{'operational status':<{20}}: {self.oper(detail=True)}")
print(f"{'operational status':<{19}}: {self.oper(detail=True)}")
forwarding = "enabled" if self.name in Iface._routing_ifaces else "disabled"
print(f"{'ip forwarding':<{20}}: {forwarding}")
print(f"{'ip forwarding':<{19}}: {forwarding}")
if self.lower_if:
print(f"{'lower-layer-if':<{20}}: {self.lower_if}")
print(f"{'lower-layer-if':<{19}}: {self.lower_if}")
if label := self._phy_label():
print(f"{'link mode':<{20}}: {label}")
print(f"{'link mode':<{19}}: {label}")
if self.speed:
mbps = int(self.speed) // 1_000_000
print(f"{'speed':<{20}}: {mbps}")
print(f"{'speed':<{19}}: {mbps}")
if self.duplex:
print(f"{'duplex':<{20}}: {self.duplex}")
print(f"{'duplex':<{19}}: {self.duplex}")
if self.autoneg != 'unknown':
val = "on" if self.autoneg else "off"
print(f"{'auto-negotiation':<{20}}: {val}")
print(f"{'auto-negotiation':<{19}}: {val}")
if self.advertised:
self._pr_label_list('advertised',
@@ -1623,33 +1623,33 @@ class Iface:
[self._pmd_label(pmd) for pmd in self.supported])
if self.phys_address:
print(f"{'physical address':<{20}}: {self.phys_address}")
print(f"{'physical address':<{19}}: {self.phys_address}")
if self.lag_mode:
print(f"{'lag mode':<{20}}: {self.lag_mode}")
print(f"{'lag mode':<{19}}: {self.lag_mode}")
if self.lag_mode == "lacp":
print(f"{'lag hash':<{20}}: {self.lag_hash}")
print(f"{'lacp mode':<{20}}: {self.lacp_mode}")
print(f"{'lacp rate':<{20}}: {self.lacp_rate}")
print(f"{'lacp aggregate id':<{20}}: {self.lacp_id}")
print(f"{'lacp system priority':<{20}}: {self.lacp_sys_prio}")
print(f"{'lacp actor key':<{20}}: {self.lacp_actor_key}")
print(f"{'lacp partner key':<{20}}: {self.lacp_partner_key}")
print(f"{'lacp partner mac':<{20}}: {self.lacp_partner_mac}")
print(f"{'lag hash':<{19}}: {self.lag_hash}")
print(f"{'lacp mode':<{19}}: {self.lacp_mode}")
print(f"{'lacp rate':<{19}}: {self.lacp_rate}")
print(f"{'lacp aggregate id':<{19}}: {self.lacp_id}")
print(f"{'lacp sys priority':<{19}}: {self.lacp_sys_prio}")
print(f"{'lacp actor key':<{19}}: {self.lacp_actor_key}")
print(f"{'lacp partner key':<{19}}: {self.lacp_partner_key}")
print(f"{'lacp partner mac':<{19}}: {self.lacp_partner_mac}")
else:
print(f"{'lag type':<{20}}: {self.lag_type}")
print(f"{'lag hash':<{20}}: {self.lag_hash}")
print(f"{'link debounce up':<{20}}: {self.link_updelay} msec")
print(f"{'link debounce down':<{20}}: {self.link_downdelay} msec")
print(f"{'lag type':<{19}}: {self.lag_type}")
print(f"{'lag hash':<{19}}: {self.lag_hash}")
print(f"{'link debounce up':<{19}}: {self.link_updelay} msec")
print(f"{'link debounce down':<{19}}: {self.link_downdelay} msec")
if self.lag:
print(f"{'lag member':<{20}}: {self.lag}")
print(f"{'lag member state':<{20}}: {self.lag_state}")
print(f"{'lag member':<{19}}: {self.lag}")
print(f"{'lag member state':<{19}}: {self.lag_state}")
if self.lacp_state:
print(f"{'lacp aggregate id':<{20}}: {self.lacp_id}")
print(f"{'lacp actor state':<{20}}: {', '.join(self.lacp_state)}")
print(f"{'lacp partner state':<{20}}: {', '.join(self.lacp_pstate)}")
print(f"{'link failure count':<{20}}: {self.link_failures}")
print(f"{'lacp aggregate id':<{19}}: {self.lacp_id}")
print(f"{'lacp actor state':<{19}}: {', '.join(self.lacp_state)}")
print(f"{'lacp partner state':<{19}}: {', '.join(self.lacp_pstate)}")
print(f"{'link failure count':<{19}}: {self.link_failures}")
def _addr_lines(addrs):
for addr in addrs:
@@ -1660,8 +1660,8 @@ class Iface:
self._pr_label_list('ipv6 addresses', list(_addr_lines(self.ipv6_addr)))
if self.in_octets and self.out_octets:
print(f"{'in-octets':<{20}}: {self.in_octets}")
print(f"{'out-octets':<{20}}: {self.out_octets}")
print(f"{'in-octets':<{19}}: {self.in_octets}")
print(f"{'out-octets':<{19}}: {self.out_octets}")
if self.wifi:
# Detect mode: AP has "stations", Station has "signal-strength" or "scan-results"
@@ -1671,43 +1671,43 @@ class Iface:
ssid = ap.get('ssid', "----")
stations_data = ap.get("stations", {})
stations = stations_data.get("station", [])
print(f"{'mode':<{20}}: {mode}")
print(f"{'ssid':<{20}}: {ssid}")
print(f"{'connected stations':<{20}}: {len(stations)}")
print(f"{'mode':<{19}}: {mode}")
print(f"{'ssid':<{19}}: {ssid}")
print(f"{'connected stations':<{19}}: {len(stations)}")
self.pr_wifi_stations()
else:
mode = "station"
station = self.wifi.get('station', {})
signal = station.get('signal-strength')
ssid = station.get('ssid', "----")
print(f"{'mode':<{20}}: {mode}")
print(f"{'ssid':<{20}}: {ssid}")
print(f"{'mode':<{19}}: {mode}")
print(f"{'ssid':<{19}}: {ssid}")
if signal is not None:
signal_status = signal_to_status(signal)
print(f"{'signal':<{20}}: {signal} dBm ({signal_status})")
print(f"{'signal':<{19}}: {signal} dBm ({signal_status})")
rx_speed = station.get('rx-speed')
tx_speed = station.get('tx-speed')
if rx_speed is not None:
print(f"{'rx bitrate':<{20}}: {rx_speed / 10:.1f} Mbps")
print(f"{'rx bitrate':<{19}}: {rx_speed / 10:.1f} Mbps")
if tx_speed is not None:
print(f"{'tx bitrate':<{20}}: {tx_speed / 10:.1f} Mbps")
print(f"{'tx bitrate':<{19}}: {tx_speed / 10:.1f} Mbps")
if "scan-results" in station:
self.pr_wifi_ssids()
if self.gre:
print(f"{'local address':<{20}}: {self.gre['local']}")
print(f"{'remote address':<{20}}: {self.gre['remote']}")
print(f"{'local address':<{19}}: {self.gre['local']}")
print(f"{'remote address':<{19}}: {self.gre['remote']}")
if self.vxlan:
print(f"{'local address':<{20}}: {self.vxlan['local']}")
print(f"{'remote address':<{20}}: {self.vxlan['remote']}")
print(f"{'VxLAN id':<{20}}: {self.vxlan['vni']}")
print(f"{'local address':<{19}}: {self.vxlan['local']}")
print(f"{'remote address':<{19}}: {self.vxlan['remote']}")
print(f"{'VxLAN id':<{19}}: {self.vxlan['vni']}")
if self.wireguard:
peer_status = self.wireguard.get('peer-status', {})
peers = peer_status.get('peer', [])
if peers:
print(f"{'peers':<{20}}: {len(peers)}")
print(f"{'peers':<{19}}: {len(peers)}")
for idx, peer in enumerate(peers, 1):
print(f"\n Peer {idx}:")
@@ -1744,10 +1744,10 @@ class Iface:
frame = get_json_data([], self.data,'ieee802-ethernet-interface:ethernet',
'statistics', 'frame')
if frame:
print("")
Decore.title("Ethernet Statistics")
for key, val in frame.items():
key = remove_yang_prefix(key)
print(f"eth-{key:<{25}}: {val}")
print(f"{key:<{25}}: {val}")
def pr_mdb(self, bridge):
for group in self.br_mdb.get("multicast-filter", {}):
@@ -1,9 +1,9 @@
name : br-0
type : bridge
index : 9
mtu : 1500
operational status : down
ip forwarding : disabled
physical address : 00:a0:85:00:03:00
ipv4 addresses :
ipv6 addresses :
name : br-0
type : bridge
index : 9
mtu : 1500
operational status : down
ip forwarding : disabled
physical address : 00:a0:85:00:03:00
ipv4 addresses :
ipv6 addresses :
@@ -1,11 +1,11 @@
name : br-D
type : bridge
index : 15
mtu : 1500
operational status : up
ip forwarding : disabled
physical address : 00:a0:85:00:03:00
ipv4 addresses : 10.0.0.1/8 (static)
192.168.20.1/24 (static)
ipv6 addresses : 2001:db8::1/64 (static)
fe80::2a0:85ff:fe00:300/64 (link-layer)
name : br-D
type : bridge
index : 15
mtu : 1500
operational status : up
ip forwarding : disabled
physical address : 00:a0:85:00:03:00
ipv4 addresses : 10.0.0.1/8 (static)
192.168.20.1/24 (static)
ipv6 addresses : 2001:db8::1/64 (static)
fe80::2a0:85ff:fe00:300/64 (link-layer)
@@ -1,9 +1,9 @@
name : br-Q
type : bridge
index : 16
mtu : 1500
operational status : up
ip forwarding : disabled
physical address : 00:a0:85:00:03:00
ipv4 addresses :
ipv6 addresses :
name : br-Q
type : bridge
index : 16
mtu : 1500
operational status : up
ip forwarding : disabled
physical address : 00:a0:85:00:03:00
ipv4 addresses :
ipv6 addresses :
@@ -1,10 +1,10 @@
name : br-Q.40
type : vlan
index : 17
mtu : 1500
operational status : up
ip forwarding : disabled
lower-layer-if : br-Q
physical address : 00:a0:85:00:03:00
ipv4 addresses :
ipv6 addresses :
name : br-Q.40
type : vlan
index : 17
mtu : 1500
operational status : up
ip forwarding : disabled
lower-layer-if : br-Q
physical address : 00:a0:85:00:03:00
ipv4 addresses :
ipv6 addresses :
@@ -1,9 +1,9 @@
name : br-X
type : bridge
index : 11
mtu : 1500
operational status : up
ip forwarding : disabled
physical address : 00:a0:85:00:03:00
ipv4 addresses :
ipv6 addresses :
name : br-X
type : bridge
index : 11
mtu : 1500
operational status : up
ip forwarding : disabled
physical address : 00:a0:85:00:03:00
ipv4 addresses :
ipv6 addresses :
@@ -1,10 +1,10 @@
name : gre-v4
type : gre
index : 19
mtu : 1476
operational status : up
ip forwarding : disabled
ipv4 addresses :
ipv6 addresses :
local address : 192.168.20.1
remote address : 192.168.20.2
name : gre-v4
type : gre
index : 19
mtu : 1476
operational status : up
ip forwarding : disabled
ipv4 addresses :
ipv6 addresses :
local address : 192.168.20.1
remote address : 192.168.20.2
@@ -1,10 +1,10 @@
name : gre-v6
type : gre
index : 20
mtu : 1448
operational status : up
ip forwarding : disabled
ipv4 addresses : 192.168.50.2/16 (static)
ipv6 addresses :
local address : 2001:db8::1
remote address : 2001:db8::2
name : gre-v6
type : gre
index : 20
mtu : 1448
operational status : up
ip forwarding : disabled
ipv4 addresses : 192.168.50.2/16 (static)
ipv6 addresses :
local address : 2001:db8::1
remote address : 2001:db8::2
@@ -1,11 +1,11 @@
name : gretap-v4
type : gretap
index : 21
mtu : 1462
operational status : up
ip forwarding : disabled
physical address : f6:d4:96:d8:9f:96
ipv4 addresses :
ipv6 addresses :
local address : 192.168.20.1
remote address : 192.168.20.2
name : gretap-v4
type : gretap
index : 21
mtu : 1462
operational status : up
ip forwarding : disabled
physical address : f6:d4:96:d8:9f:96
ipv4 addresses :
ipv6 addresses :
local address : 192.168.20.1
remote address : 192.168.20.2
@@ -1,11 +1,11 @@
name : gretap-v6
type : gretap
index : 22
mtu : 1434
operational status : up
ip forwarding : disabled
physical address : 7a:46:13:bd:fa:e6
ipv4 addresses :
ipv6 addresses :
local address : 2001:db8::1
remote address : 2001:db8::2
name : gretap-v6
type : gretap
index : 22
mtu : 1434
operational status : up
ip forwarding : disabled
physical address : 7a:46:13:bd:fa:e6
ipv4 addresses :
ipv6 addresses :
local address : 2001:db8::1
remote address : 2001:db8::2
@@ -1,11 +1,11 @@
name : veth0a
type : veth
index : 13
mtu : 1500
operational status : up
ip forwarding : disabled
physical address : 6e:d0:98:c4:e7:ef
ipv4 addresses :
ipv6 addresses :
in-octets : 299
out-octets : 17190
name : veth0a
type : veth
index : 13
mtu : 1500
operational status : up
ip forwarding : disabled
physical address : 6e:d0:98:c4:e7:ef
ipv4 addresses :
ipv6 addresses :
in-octets : 299
out-octets : 17190
@@ -1,10 +1,10 @@
name : veth0a.20
type : vlan
index : 14
mtu : 1500
operational status : up
ip forwarding : disabled
lower-layer-if : veth0a
physical address : 6e:d0:98:c4:e7:ef
ipv4 addresses :
ipv6 addresses :
name : veth0a.20
type : vlan
index : 14
mtu : 1500
operational status : up
ip forwarding : disabled
lower-layer-if : veth0a
physical address : 6e:d0:98:c4:e7:ef
ipv4 addresses :
ipv6 addresses :
@@ -1,11 +1,11 @@
name : veth0b
type : veth
index : 12
mtu : 1500
operational status : up
ip forwarding : disabled
physical address : 36:da:80:06:7f:99
ipv4 addresses :
ipv6 addresses :
in-octets : 17190
out-octets : 299
name : veth0b
type : veth
index : 12
mtu : 1500
operational status : up
ip forwarding : disabled
physical address : 36:da:80:06:7f:99
ipv4 addresses :
ipv6 addresses :
in-octets : 17190
out-octets : 299
@@ -1,12 +1,12 @@
name : vxlan-v4
type : vxlan
index : 23
mtu : 1500
operational status : up
ip forwarding : disabled
physical address : 8a:ea:59:32:df:70
ipv4 addresses : 192.168.30.2/24 (static)
ipv6 addresses :
local address : 192.168.20.100
remote address : 192.168.20.200
VxLAN id : 4
name : vxlan-v4
type : vxlan
index : 23
mtu : 1500
operational status : up
ip forwarding : disabled
physical address : 8a:ea:59:32:df:70
ipv4 addresses : 192.168.30.2/24 (static)
ipv6 addresses :
local address : 192.168.20.100
remote address : 192.168.20.200
VxLAN id : 4
@@ -1,12 +1,12 @@
name : vxlan-v6
type : vxlan
index : 24
mtu : 1500
operational status : up
ip forwarding : disabled
physical address : 3e:30:c6:a1:71:64
ipv4 addresses : 192.168.40.2/24 (static)
ipv6 addresses :
local address : 2001:db8::100
remote address : 2001:db8::200
VxLAN id : 6
name : vxlan-v6
type : vxlan
index : 24
mtu : 1500
operational status : up
ip forwarding : disabled
physical address : 3e:30:c6:a1:71:64
ipv4 addresses : 192.168.40.2/24 (static)
ipv6 addresses :
local address : 2001:db8::100
remote address : 2001:db8::200
VxLAN id : 6