在CentOS下的网络配置很简单了,在工作中还遇到的一个情况就是:一个服务器有多个同类型的网口,但是只需要配置其中一个设备,这个时候就需要查看是哪个网口连接了网线、光纤等硬件设备,然后再进行相应的配置。
ethtool命令
这个命令的执行结果如下所示:
-> # ethtool enp2s0f0
Settings for enp2s0f0:
Supported ports: [ FIBRE ]
Supported link modes: 1000baseT/Full
10000baseT/Full
Supported pause frame use: No
Supports auto-negotiation: Yes
Advertised link modes: 1000baseT/Full
10000baseT/Full
Advertised pause frame use: No
Advertised auto-negotiation: Yes
Speed: Unknown!
Duplex: Unknown! (255)
Port: FIBRE
PHYAD: 0
Transceiver: external
Auto-negotiation: on
Supports Wake-on: d
Wake-on: d
Current message level: 0x00000007 (7)
drv probe link
Link detected: no
相关字段的解释如下:
Supported link modes:支持的速率,可以查看千兆还是万兆类型的网卡
Link detected - 是否连接网线、光纤等设备
缺点:
对于InfiniBand类型的网络不支持速率的识别,【 Supported ports】字段内容为空。
ifconfig -a
使用ifconfig 命令可以获取所有网卡设备的信息,如果需要查看哪些设备连接网线,需要通过 RX packets或者TX packets进行判断,如果数值为0的话通常表示没有硬件连接。
缺点:
不能直接显示设备连接情况,需要通过其它参数进行判断。如果网口连接过网线,可能会导致数据不准确,需要使用ifdown、ifup命令重启设备。
ip a
使用这个命令可以获取本机上所有设备的状态信息, 通过 “qdisc mq state”后面的值是UP还是DOWN来判断是否已经连接网线。
(此命令对于网线,光纤,InfiniBand类型设备都可以进行支持)
nmcli dev status
使用这个命令可以获取本机上所有设备的状态信息, 通过CONNECTIONZ字段就可以很方便看出是否有设备连接。
推荐的使用方式!
此外,还可以使用service network status 命令查看当前配置的网卡设备信息。