首页 > 运维 > CentOS > 正文

CentOS怎么查看网卡MAC_CentOS查看网卡物理地址命令教程

蓮花仙者
发布: 2025-08-29 10:02:01
原创
710人浏览过
答案:在CentOS中查看MAC地址可使用ip a、ifconfig或读取/sys/class/net/接口名/address文件。ip a是推荐方法,输出中link/ether后为MAC地址;ifconfig需安装net-tools,显示ether字段;配置文件/etc/sysconfig/network-scripts/ifcfg-接口名中HWADDR或MACADDR项指定静态MAC;虚拟机MAC由Hypervisor分配,前缀如00:0C:29(VMware),可在虚拟机设置中查看或修改。

centos怎么查看网卡mac_centos查看网卡物理地址命令教程

在CentOS系统中,要查看网卡的MAC地址(即物理地址),最直接、常用的命令是

ip a
登录后复制
ifconfig
登录后复制
。这两个命令都能迅速列出系统中所有网络接口的详细信息,其中就包含了设备的硬件地址,也就是我们常说的MAC地址。

解决方案

要查看CentOS系统的网卡MAC地址,你可以根据系统版本和个人习惯选择以下命令:

方法一:使用

ip a
登录后复制
命令(推荐,适用于新版CentOS)

这是现代Linux系统(包括CentOS 7及更高版本)推荐的命令。它提供了更全面、更易读的网络接口信息。

直接在终端输入:

ip a
登录后复制

或者,如果你想看所有接口,包括未激活的:

ip -a link
登录后复制

输出示例中,你会看到每个网络接口(如

eth0
登录后复制
ens33
登录后复制
enp0s3
登录后复制
lo
登录后复制
)的详细信息。在每个接口的第二行,通常会有一项以
link/ether
登录后复制
开头的字段,后面跟着一串12位的十六进制数字,这就是该网卡的MAC地址。

例如:

2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 00:0c:29:ab:cd:ef brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.100/24 brd 192.168.1.255 scope global dynamic ens33
       valid_lft 1799sec preferred_lft 1799sec
登录后复制

在这个例子中,

ens33
登录后复制
网卡的MAC地址就是
00:0c:29:ab:cd:ef
登录后复制

如果你只想查看特定接口的MAC地址,可以结合

grep
登录后复制
进行过滤:

ip a show ens33 | grep link/ether
登录后复制

方法二:使用

ifconfig
登录后复制
命令(适用于旧版CentOS或安装了net-tools包的系统)

ifconfig
登录后复制
是传统Linux系统中查看网络配置的命令。在一些较新的CentOS版本中,
ifconfig
登录后复制
可能默认不安装,需要额外安装
net-tools
登录后复制
包。

直接在终端输入:

ifconfig
登录后复制

输出示例中,每个网络接口(如

eth0
登录后复制
)的第二行,通常会有一个
ether
登录后复制
HWaddr
登录后复制
字段,后面跟着的就是MAC地址。

例如:

eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.1.101  netmask 255.255.255.0  broadcast 192.168.1.255
        ether 00:50:56:a1:b2:c3  txqueuelen 1000  (Ethernet)
        RX packets 1234  bytes 56789 (55.4 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 1000  bytes 123456 (120.5 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
登录后复制

在这个例子中,

eth0
登录后复制
网卡的MAC地址就是
00:50:56:a1:b2:c3
登录后复制

如果你只想查看特定接口的MAC地址,可以:

ifconfig eth0 | grep ether
登录后复制

方法三:直接读取文件系统(更底层的方式)

每个网络接口的MAC地址信息也存储在

/sys/class/net/
登录后复制
目录下对应的文件中。

卡拉OK视频制作
卡拉OK视频制作

卡拉OK视频制作,在几分钟内制作出你的卡拉OK视频

卡拉OK视频制作 178
查看详情 卡拉OK视频制作

例如,要查看

ens33
登录后复制
的MAC地址:

cat /sys/class/net/ens33/address
登录后复制

这个命令会直接输出MAC地址,没有其他多余信息。

CentOS中MAC地址有什么用?

MAC地址,全称是媒体访问控制地址,它在网络中扮演着设备“物理身份证”的角色。我个人觉得,理解MAC地址的重要性,就像了解你家门牌号一样,它是网络世界里设备独一无二的物理身份证明,尤其是在处理一些底层网络问题时,它往往是排查的第一步。

具体来说,MAC地址有几个核心用途:

  • 唯一标识设备: 每个网络接口卡(NIC)在生产时就被烧录了一个全球唯一的MAC地址。这是它在局域网(LAN)中被识别的基础。
  • 局域网通信: 在同一个局域网内,设备之间通过MAC地址进行通信。例如,ARP(地址解析协议)就是将IP地址解析为MAC地址,以便数据包能够准确地到达目标设备。
  • DHCP服务: DHCP服务器可以根据设备的MAC地址分配固定的IP地址,这对于服务器、打印机等需要稳定IP的设备非常有用。我经常用这个功能来确保我的开发服务器每次启动都能拿到同一个IP,省去了不少配置麻烦。
  • 网络访问控制(NAC): 路由器或交换机可以配置基于MAC地址的过滤规则,允许或拒绝特定设备访问网络。这是一种基本的安全措施,虽然容易被伪造,但在一些场景下仍有其价值。
  • 故障排查: 当网络出现问题时,通过MAC地址可以追踪数据包的流向,定位是哪个设备出了问题。比如,MAC地址冲突虽然不常见,但一旦发生,会导致网络混乱,这时就需要通过MAC地址来识别并解决。

为什么我的CentOS系统上
ifconfig
登录后复制
命令找不到了?

这确实是一个常见的问题,我记得刚开始接触新版CentOS时,

ifconfig
登录后复制
找不到确实让我愣了一下,后来才发现是系统工具链的更新。

原因在于,较新版本的CentOS(通常从CentOS 7开始,以及RHEL 7/8/9等)已经逐渐淘汰了

net-tools
登录后复制
软件包中包含的
ifconfig
登录后复制
route
登录后复制
netstat
登录后复制
等命令,转而推荐使用
iproute2
登录后复制
软件包提供的
ip
登录后复制
ss
登录后复制
等命令。

iproute2
登录后复制
工具集设计上更现代化,功能更强大,能够处理更复杂的网络配置,并且在IPv6支持方面也做得更好。所以,当你在新版CentOS上尝试使用
ifconfig
登录后复制
时,系统会提示“command not found”。

解决方案:

  1. 使用
    ip a
    登录后复制
    命令:
    这是最推荐的做法。
    ip a
    登录后复制
    ip address
    登录后复制
    的缩写)是
    ifconfig
    登录后复制
    的现代替代品,它能提供同样甚至更详细的网络接口信息。养成使用
    ip
    登录后复制
    命令的习惯会让你在未来的Linux系统管理中更加得心应手。
  2. 安装
    net-tools
    登录后复制
    包:
    如果你确实习惯了
    ifconfig
    登录后复制
    ,或者在某些脚本中需要用到它,你可以手动安装
    net-tools
    登录后复制
    软件包。
    • 对于CentOS 7/8:
      sudo yum install net-tools
      登录后复制
    • 对于CentOS 8/9(使用dnf作为包管理器):
      sudo dnf install net-tools
      登录后复制

      安装完成后,

      ifconfig
      登录后复制
      命令就可以正常使用了。但即便如此,我还是建议多尝试
      ip
      登录后复制
      命令,因为它代表了未来的趋势。

如何通过配置文件查看或确认MAC地址?

有时候,我发现直接看配置文件比运行命令更能理解一个接口的持久化配置,尤其是在排查为什么某个MAC地址总是被设置成某个值时。在CentOS中,网络接口的配置信息通常存储在

/etc/sysconfig/network-scripts/
登录后复制
目录下。每个网络接口都有一个对应的配置文件,命名格式通常是
ifcfg-
登录后复制
加上接口名称,例如
ifcfg-ens33
登录后复制
ifcfg-eth0
登录后复制

这些配置文件定义了网卡的各种属性,包括是否开机启动、IP地址分配方式等,也可能包含MAC地址的持久化设置。

要查看或确认MAC地址,你可以:

  1. 找到对应的配置文件: 例如,如果你的网卡名称是

    ens33
    登录后复制
    ,那么配置文件就是
    /etc/sysconfig/network-scripts/ifcfg-ens33
    登录后复制

    ls /etc/sysconfig/network-scripts/ifcfg-*
    登录后复制

    这个命令可以列出所有网络接口的配置文件。

  2. 查看文件内容: 使用

    cat
    登录后复制
    less
    登录后复制
    命令查看文件的内容。

    cat /etc/sysconfig/network-scripts/ifcfg-ens33
    登录后复制

在文件内容中,你可能会找到一行以

HWADDR=
登录后复制
MACADDR=
登录后复制
开头的配置项。这一行指定了该网卡应使用的MAC地址。

例如:

TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="dhcp"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens33"
UUID="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
DEVICE="ens33"
ONBOOT="yes"
HWADDR="00:0c:29:ab:cd:ef"  # 这里就是MAC地址
登录后复制

如果配置文件中明确设置了

HWaddr
登录后复制
MACADDR
登录后复制
,那么系统在启动时会尝试将网卡的MAC地址设置为这个值。这在某些特定场景下非常有用,比如当你需要克隆虚拟机或迁移系统时,为了避免MAC地址冲突,或者为了符合某些网络策略,你可能需要手动指定一个MAC地址。如果没有这一项,通常系统会使用网卡硬件自带的MAC地址。

虚拟机环境下查看MAC地址有什么特殊之处?

在虚拟机(VM)环境下查看MAC地址,其实和物理机上大同小异,但有一些背景知识和细节值得注意。在虚拟机里,MAC地址的生成机制也挺有意思的,Hypervisor(虚拟机监控器,如VMware、VirtualBox、KVM等)会给它分配一个,但我们通常也可以手动指定,这在做一些虚拟网络实验时特别有用。

  1. Hypervisor生成: 当你在VMware Workstation、VirtualBox、KVM或ESXi等虚拟化平台上创建一台虚拟机时,Hypervisor会自动为虚拟网卡分配一个MAC地址。这些MAC地址通常遵循一定的规则,例如VMware分配的MAC地址通常以
    00:0C:29
    登录后复制
    开头,VirtualBox则以
    08:00:27
    登录后复制
    开头。这个前缀是厂商的OUI(Organizationally Unique Identifier),用于标识MAC地址的来源。
  2. 持久性与可配置性: 大多数Hypervisor会确保为每台虚拟机分配的MAC地址是唯一的,并且在虚拟机关闭和重启后保持不变。此外,你通常可以在虚拟机的设置中手动修改这个MAC地址。这在一些需要MAC地址绑定的场景(比如软件授权、网络访问控制)或者为了避免MAC地址冲突时非常有用。
  3. 与宿主机MAC地址的区别 虚拟机的MAC地址是其虚拟网卡的,与宿主机(运行虚拟机的物理机)的物理网卡MAC地址是完全独立的。它们在网络中是两个不同的设备。
  4. 查看方式: 在CentOS虚拟机内部,查看MAC地址的方法与物理机完全相同,即使用
    ip a
    登录后复制
    ifconfig
    登录后复制
    cat /sys/class/net/ens33/address
    登录后复制
  5. 在Hypervisor层面查看: 除了在虚拟机内部查看,你还可以在Hypervisor的管理界面(如VMware vSphere Client、VirtualBox Manager的虚拟机设置界面)直接看到分配给虚拟机的MAC地址。这在虚拟机无法启动或网络配置出现问题时,是一种非常方便的交叉验证方式。

理解虚拟机MAC地址的这些特性,有助于你在虚拟化环境中进行网络配置、故障排查和安全管理。比如,我曾经遇到过因为克隆虚拟机后没有修改MAC地址导致网络冲突的问题,了解这些机制就能更快地定位和解决。

以上就是CentOS怎么查看网卡MAC_CentOS查看网卡物理地址命令教程的详细内容,更多请关注php中文网其它相关文章!

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号