具有虚拟 NIC 的 ethtool 不显示任何内容 - 打印 OpenStack VM 中 NIC 的当前设置

具有虚拟 NIC 的 ethtool 不显示任何内容 - 打印 OpenStack VM 中 NIC 的当前设置

在 OpenStack VM 上我只看到

# ethtool eth0
Settings for eth0:
        Link detected: yes

在 RHEV VM 上,输出同样较小。在 Ubuntu 和 RHEL7 VM 上尝试过。

我希望看到类似的东西(网卡的速度)

Supported link modes:   10baseT/Half 10baseT/Full
                           100baseT/Half 100baseT/Full
   Supports auto-negotiation: Yes
   Advertised link modes:  10baseT/Half 10baseT/Full
                           100baseT/Half 100baseT/Full

如何在 OpenStack VM (RHOS OpenStack Juno) 上看到它?我们使用软件定义网络(Plumgrid)。

答案1

如果您想要更改 tso、gso、sg、gro 等,您应该能够从 ' ethtool -k' 获得输出。您也可能会从研究“ ip link”中受益。

答案2

ethtool 提供的信息是准确的,因为它报告的是 VM 的虚拟 NIC。如果您从支持 SR-IOV 的 NIC 映射虚拟功能,您可能会获得更多信息。

请记住,物理网卡并不直接连接到虚拟机,而是为虚拟机管理程序主机上运行的虚拟交换机提供上行链路。发往同一网络上在同一主机上运行的另一个虚拟机的传出帧不会使用物理网卡。这种类型的流量可能而且经常超过物理网卡的速度。因此,报告物理网卡的速度是不准确的。

您将需要在虚拟机管理程序主机本身上查询此信息。

此外,在服务提供商环境中,提供有关物理基础设施的信息也可能被视为安全风险。

答案3

我发现的最简单的方法是直接通过 查询接口设备详细信息/sys

例如,我有接口 enp98s0:

$ cat /sys/class/net/enp98s0/speed
10000

一般形式将在哪里/sys/class/net/<interface>/speed

相关内容