在 Linux 中,我们可以使用 /sys/devices/virtual/net/<if_name> 如果 if_name 存在于该目录下,则该设备是虚拟的。
在 AIX 中,我们有什么方法可以检查 en0 或 lo0 接口是虚拟接口还是物理接口?是否可以使用特定参数的 lsdev 来获取 AIX 或 Linux 上的虚拟网络设备列表?
答案1
首先,如果您使用的是 AIX LPAR(而不是 VIOS),那么您很可能拥有虚拟设备,而不是物理卡。此外,“lo0”是环回接口,并且根据定义是虚拟的。
话虽如此,您可以使用该命令lsdev -c adapter
获取“适配器”类中所有条目的列表。这些也是网络和磁盘适配器(还有一些其他适配器,但这些是最常见的),因此可能的输出可能如下所示:
# lsdev -c adapter
ent0 Available Virtual I/O Ethernet Adapter (l-lan)
fcs0 Available 20-T1 Virtual Fibre Channel Client Adapter
fcs1 Available 21-T1 Virtual Fibre Channel Client Adapter
fcs2 Available 22-T1 Virtual Fibre Channel Client Adapter
fcs3 Available 23-T1 Virtual Fibre Channel Client Adapter
vsa0 Available LPAR Virtual Serial Adapter
您还可以通过列出类“if”来列出接口,如下所示:
# lsdev -c if
en0 Available Standard Ethernet Network Interface
et0 Defined IEEE 802.3 Ethernet Network Interface
lo0 Available Loopback Network Interface
要获取有关这些接口之一的更多信息,请使用以下lsattr
命令:
# lsattr -El en0
alias4 IPv4 Alias including Subnet Mask True
alias6 IPv6 Alias including Prefix Length True
arp on Address Resolution Protocol (ARP) True
authority Authorized Users True
broadcast Broadcast Address True
monitor off Enable/Disable monitor for virtual Ethernet True
mtu 1500 Maximum IP Packet Size for This Device True
mtu_bypass on Enable/Disable largesend for virtual Ethernet True
netaddr xxx.xx.xx.xx Internet Address True
netaddr6 IPv6 Internet Address True
netmask 255.255.255.0 Subnet Mask True
prefixlen Prefix Length for IPv6 Internet Address True
remmtu 576 Maximum IP Packet Size for REMOTE Networks True
rfc1323 1 Enable/Disable TCP RFC 1323 Window Scaling True
security none Security Level True
state up Current Interface Status True
tcp_mssdflt Set TCP Maximum Segment Size True
tcp_nodelay Enable/Disable TCP_NODELAY Option True
tcp_recvspace 262144 Set Socket Buffer Space for Receiving True
tcp_sendspace 262144 Set Socket Buffer Space for Sending True
thread off Enable/Disable thread attribute True