网卡不见了?试试ip link命令

在Linux系统中,MAC地址(Media Access Control Address)是网络接口的唯一硬件标识符,由48位二进制数组成,通常表示为12位十六进制数(如00:1A:2B:3C:4D:5E),它用于在局域网中精确识别设备,对网络配置、故障排查、安全策略(如MAC地址过滤)至关重要,以下是在RHEL/CentOS 7中查看MAC地址的详细方法:
适用场景:快速查看所有网络接口的MAC地址,无需额外安装工具。
步骤

  1. 打开终端,执行命令:
    ip link show
  2. 在输出中查找网络接口(如eth0ens33):
    1: lo: <LOOPBACK> ... 
    2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> ... link/ether **00:0c:29:8a:1d:0a** ...
    • link/ether后紧跟的即是MAC地址(如00:0c:29:8a:1d:0a)。

精简查看(仅显示接口名和MAC地址):

ip -o link | awk '{print $2, $(NF-2)}'

通过 ifconfig 命令(需安装 net-tools)

适用场景:传统方法,适合习惯旧命令的用户。
步骤

  1. 若未安装net-tools,先执行:
    sudo yum install net-tools -y
  2. 执行命令:
    ifconfig
  3. 在输出中找到目标接口(如eth0),其ether字段即为MAC地址:
    eth0: ... ether **00:0c:29:8a:1d:0a** ... 

通过网络配置文件

适用场景:查看静态配置的MAC地址(如手动配置或绑定地址)。
步骤

  1. 打开网络接口配置文件(以ens33为例):
    cat /etc/sysconfig/network-scripts/ifcfg-ens33
  2. 查找HWADDRMACADDR字段:
    HWADDR=00:0c:29:8a:1d:0a

    注意:若使用MACADDR,可能是临时覆盖的虚拟MAC地址(如虚拟机克隆场景)。


通过 nmcli(NetworkManager 命令行工具)

适用场景:使用NetworkManager管理网络时,获取详细信息。
步骤

nmcli device show

在输出中定位目标接口的GENERAL.HWADDR字段:

GENERAL.DEVICE: ens33  
GENERAL.HWADDR: 00:0C:29:8A:1D:0A

通过系统文件 /sys/class/net/

适用场景:脚本自动化获取,无需执行命令。
步骤

cat /sys/class/net/ens33/address

直接输出MAC地址:00:0c:29:8a:1d:0a


注意事项

  1. 临时 vs 永久地址
    • 通过命令(如ip link)查看的是当前生效的MAC地址。
    • 配置文件中的HWADDR是系统启动时加载的永久地址,重启后生效。
  2. 虚拟机场景

    VMware/VirtualBox克隆的虚拟机可能自动生成新MAC地址,需检查配置文件是否冲突。

  3. 虚拟接口
    • VLAN或虚拟网卡(如eth0:1)可能继承物理接口的MAC地址,需明确区分。

方法 命令/操作 优势
ip link ip link show 系统原生支持,无需安装
ifconfig ifconfig(需安装net-tools) 传统习惯,信息直观
网络配置文件 cat /etc/sysconfig/network-scripts/ifcfg-* 查看静态配置的永久地址
nmcli nmcli device show 适合NetworkManager管理环境
系统文件 cat /sys/class/net/<接口名>/address 脚本友好,直接读取

推荐优先使用ip link,它是现代Linux网络配置的标准工具,兼容性强且无需额外依赖。


引用说明: 基于RHEL/CentOS 7官方文档及Linux网络管理实践总结,参考命令手册(man ipman nmcli)验证准确性,确保方法在原生环境中测试通过,适用于绝大多数服务器及桌面环境。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/9165.html

(0)
酷番叔酷番叔
上一篇 2025年7月29日 09:45
下一篇 2025年7月29日 09:56

相关推荐

  • Linux系统如何运行sh程序的具体步骤是什么?

    在Linux系统中,Shell脚本(通常以.sh为扩展名)是自动化任务、管理系统和简化操作的重要工具,运行Shell脚本是Linux日常运维和开发的基础技能,本文将详细介绍Linux运行sh程序的完整流程、方法及注意事项,Shell脚本的基础结构在运行脚本前,需先了解其基本结构,一个典型的Shell脚本通常包含……

    2025年10月8日
    1100
  • 如何添加selinux权限

    chcon命令临时更改文件SELinux上下文,或编辑`/etc/selinux

    2025年8月19日
    4300
  • linux系统如何使用

    Linux系统是一款基于Unix的开源操作系统,以其稳定性、安全性和高度的可定制性广泛应用于服务器、嵌入式设备以及个人电脑,对于新手而言,熟悉Linux系统的使用需要从基础概念、命令行操作、文件系统管理、软件安装与配置等方面逐步学习,以下将详细展开说明,Linux系统基础概念Linux系统的核心是Linux内核……

    2025年9月29日
    1600
  • Linux系统中如何显示用户名和密码?密码是否可以直接获取并显示?

    在Linux系统中,用户名和密码的管理涉及安全性与权限控制,由于密码通常以加密形式存储,直接“显示密码”在正常操作中并不被允许(除非是用户主动输入或特定授权场景),本文将详细说明Linux中如何查看用户名、理解密码存储机制,以及在合法合规的前提下处理密码相关操作,Linux中用户名的显示方法用户名是Linux系……

    2025年9月19日
    2500
  • 网络连不上?Ping命令能帮你!

    在Linux系统中,确认网络连接状态是日常维护和故障排除的基础操作,以下详细介绍多种专业方法,涵盖命令行工具和图形界面方案,适用于不同发行版(如Ubuntu、CentOS、Debian等),操作前请确保拥有终端访问权限(普通用户或root用户),ping 是最直接的网络测试工具,通过向目标服务器发送ICMP请求……

    2025年6月19日
    5500

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信