diff options
| -rw-r--r-- | op-mode-definitions/show-interfaces.xml.in | 4 | ||||
| -rwxr-xr-x | src/op_mode/interfaces.py | 7 | 
2 files changed, 8 insertions, 3 deletions
| diff --git a/op-mode-definitions/show-interfaces.xml.in b/op-mode-definitions/show-interfaces.xml.in index b58e0efea..09466647d 100644 --- a/op-mode-definitions/show-interfaces.xml.in +++ b/op-mode-definitions/show-interfaces.xml.in @@ -6,7 +6,7 @@          <properties>            <help>Show network interface information</help>          </properties> -        <command>${vyos_op_scripts_dir}/interfaces.py show_summary</command> +        <command>${vyos_op_scripts_dir}/interfaces.py show_summary_extended</command>          <children>            <leafNode name="counters">              <properties> @@ -24,7 +24,7 @@              <properties>                <help>Show summary information of all interfaces</help>              </properties> -            <command>${vyos_op_scripts_dir}/interfaces.py show_summary_extended</command> +            <command>${vyos_op_scripts_dir}/interfaces.py show_summary</command>            </leafNode>          </children>        </node> diff --git a/src/op_mode/interfaces.py b/src/op_mode/interfaces.py index c626535b5..14ffdca9f 100755 --- a/src/op_mode/interfaces.py +++ b/src/op_mode/interfaces.py @@ -235,6 +235,11 @@ def _get_summary_data(ifname: typing.Optional[str],      if iftype is None:          iftype = ''      ret = [] + +    def is_interface_has_mac(interface_name): +        interface_no_mac = ('tun', 'wg') +        return not any(interface_name.startswith(prefix) for prefix in interface_no_mac) +      for interface in filtered_interfaces(ifname, iftype, vif, vrrp):          res_intf = {} @@ -244,7 +249,7 @@ def _get_summary_data(ifname: typing.Optional[str],          res_intf['addr'] = [_ for _ in interface.get_addr() if not _.startswith('fe80::')]          res_intf['description'] = interface.get_alias()          res_intf['mtu'] = interface.get_mtu() -        res_intf['mac'] = interface.get_mac() +        res_intf['mac'] = interface.get_mac() if is_interface_has_mac(interface.ifname) else 'n/a'          res_intf['vrf'] = interface.get_vrf()          ret.append(res_intf) | 
