MAC 地址查询

看到一串 00:1B:63 开头的物理地址,想知道是哪家厂商、是不是虚拟机,把地址贴进来就能拆开看。

冒号大写(00:1B:63:84:45:E6)00:1B:63:84:45:E6
连字符小写(00-1b-63-84-45-e6)00-1b-63-84-45-e6
思科四位点分(001b.6384.45e6)001b.6384.45e6
无分隔(001b638445e6)001b638445e6

这些号段的前 16 位和你的地址一样,如果精确匹配没查出来,可以看看是否属于其中某家。

00:1B:63 · Apple00:1B:EA · Nintendo00:1B:2F · Netgear00:1B:11 · D-Link00:1B:FC · ASUS00:1B:21 · Intel00:1B:78 · HP / HPE00:1B:A9 · Brother

MAC 地址是怎么构成的

一块常见的网卡用的是 48 位地址(MAC-48 或 EUI-48),写成 6 组两位十六进制。前 24 位是 OUI,由 IEEE 分配给厂商,比如 00:1B:63 是苹果;后 24 位是 NIC,由厂商自己编号。同一批网卡通常共享 OUI,所以看到一致的 OUI 就知道是同一家的设备——这也是交换机、准入系统做「厂商识别」的基本原理。

第一字节里藏着两个位,比厂商名更有用。最低位是 I/G 位:0 是单播,1 是多播。多播地址不会烧在网卡上,它只出现在目的地址里,例如 01:00:5E 是 IPv4 组播、33:33 是 IPv6 组播,抓包看到它们属于正常现象。次低位是 U/L 位:0 表示这个地址是全球唯一的、由厂商烧录;1 表示本地管理,也就是软件自己造的。

U/L 位是判断虚拟化的捷径。QEMU 用 52:54:00、Docker 容器网桥用 02:42:AC、Xen 用 00:16:3E,这些号段的第一字节都置了 U/L 位(52、02 的二进制末两位分别是 10,即 U/L=1、I/G=0)。手机和笔记本上的「随机 MAC」、KVM 虚拟网卡、云主机的虚拟网卡同理,所以对这类地址去查 OUI 厂商是白费力气,表里本来就不会有。

本页的 OUI 表只收录了常见厂商的几百条记录,而 IEEE 公开的注册表有数万条,并且每个月都在新增、转移。所以请把这里的结论当成线索而不是证据:查不到只说明「这张表里没有」,查到也只说明「这个号段分配给过这家厂商」,设备现在归谁、是否被改过 MAC,都是另一回事。要做资产归属判断,请下载 IEEE 官方 OUI registry 或使用 Wireshark 的 manuf 表。

顺带说清一个常见误解:MAC 地址只在同一个二层网络内有意义,跨路由器后就被换掉了,所以它既不能用来定位用户,也不能当作稳定的设备指纹。Windows 10 以后默认在 Wi-Fi 上启用随机 MAC,iOS 和 Android 也有同样功能,这意味着「同一台手机永远是同一个 MAC」这个假设在今天的公共网络上基本不成立。