为什么在Mac OS X上,Wi-Fi被称为en0,就像以太网一样?

19
Linux已经成为我的主要系统多年了。在Linux中,以太网硬件设备的名称通常是eth0enp1s0(后者我只在Arch Linux上见过)。无线网卡的名称通常是wlan0wlp2s0(同样后者在Arch上)。在我的新MacBook Air上,无线网络被分配为en0,据我所知,这代表以太网。此外,即使我没有以太网端口,也有一个en1。这个命名约定是什么意思?

en 可能是以 E thern n et 命名的。 - Linville
对,但为什么我的无线网卡也被命名为以太网呢? - Hugo
除了802.11 Wifi接口提供的低级无线电功能外,还有一个内置的802.3以太网MAC,因为这是通过Wifi传输的主要帧格式。操作系统在其命名系统中没有区分这个接口和有线等效接口。 - Kevin Thibedeau
哦,所以即使我的 MacBook 没有 RJ45 以太网电缆的输入,它仍然使用那个名称,因为帧是以太网帧? - Hugo
"en1" 可能指的是其中一个使用 Thunderbolt 上的 IP 的端口。虽然这是不同的第二层介质,如另一个答案所述,但可能使用相同的内核驱动程序。 - silicontrip
1个回答

22
值得记住的是,OSX不是Linux,它基本上是BSD。而在BSD中,网络接口的命名是根据管理接口的设备驱动程序而不一定是根据设备类型。我猜测相同的驱动程序支持苹果电脑上的内置WiFi接口和有线网卡。
您可以使用以下命令列出所有接口:
networksetup -listallhardwareports

在我的Macbook上,这列出了一些接口(WiFi、蓝牙、Thunderbolt),它们都被命名为enX。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接