有人可以解释一下 Mac OS X 中的 ifconfig 输出吗?

eup*_*a83 64 ip-address ifconfig macos

当我在 Mac 上执行 ifconfig 时,我得到以下接口的列表:

lo0
gif0
stf0
en0
fw0
en1
vmnet8
vmnet1
Run Code Online (Sandbox Code Playgroud)

我想知道每个接口是什么。另外,其中哪些是 IP 接口?我在任何地方都没有看到 eth0,我认为这是 linux 系统使用的标准接口名称。

yoy*_*g3r 76

我想知道每个接口是什么。

  • lo0 = 环回
  • gif0 = 软件网络接口
  • stf0 = 6to4 隧道接口
  • en0 = 以太网 0
  • fw0 = 火线
  • en1 = 以太网 1
  • vmnet8 = 虚拟接口
  • vmnet1 = 虚拟接口

类似的东西。

另外,其中哪些是 IP 接口?

多年前就没有“那个”IP 接口了。所有这些都可以拥有IPv4和/或IPv6配置和运行。要使用的默认值由路由表(特别是defaultor 0.0.0.0::/0条目)定义。

我在任何地方都没有看到 eth0,我认为这是 linux 系统使用的标准接口名称。

Mac OS X 是 BSD,而不是 Linux。

  • 此外,osx VPN 客户端创建了一个 `utun0` 接口。 (7认同)
  • +1 不错的答案。此外,有时您会看到 ppp0,它也用于某些 VPN 隧道。 (4认同)

nis*_*ama 47

您可以通过运行networksetup -listallhardwareports以下命令查看某些设备的系统偏好设置中使用的名称:

Hardware Port: HUAWEIMobile-
Device: HUAWEIMobile-Modem
Ethernet Address: N/A

Hardware Port: Bluetooth DUN
Device: Bluetooth-Modem
Ethernet Address: N/A

Hardware Port: Ethernet
Device: en0
Ethernet Address: a8:20:66:31:95:57

Hardware Port: MBBEthernet
Device: en5
Ethernet Address: 00:1e:10:1f:00:01

Hardware Port: Wi-Fi
Device: en1
Ethernet Address: 8c:2d:aa:33:03:e9

Hardware Port: Bluetooth PAN
Device: en4
Ethernet Address: 8c:2d:aa:33:03:ea

Hardware Port: Thunderbolt 1
Device: en2
Ethernet Address: 32:00:1b:25:92:c0

Hardware Port: Thunderbolt 2
Device: en3
Ethernet Address: 32:00:1b:25:92:c1

Hardware Port: Thunderbolt Bridge
Device: bridge0
Ethernet Address: N/A

VLAN Configurations
===================
Run Code Online (Sandbox Code Playgroud)

networksetup -listnetworkserviceorder 产生类似的输出,但它显示“按照连接的顺序排列的网络服务列表”,或者以与系统偏好设置相同的顺序显示服务。

networksetup不包括诸如VMWare 使用的设备vmnet1vmnet8设备。

您可以en通过运行defaults read /Library/Preferences/SystemConfiguration/NetworkInterfaces.plist以下命令查看有关设备的更多信息:

{
    Interfaces =     (
                {
            Active = 1;
            "BSD Name" = en0;
            IOBuiltin = 1;
            IOInterfaceNamePrefix = en;
            IOInterfaceType = 6;
            IOInterfaceUnit = 0;
            IOMACAddress = <a8206631 9557>;
            IOPathMatch = "IOService:/AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/RP03@1C,2/IOPP/GIGE@0/BCM5701Enet/en0";
            SCNetworkInterfaceInfo =             {
                UserDefinedName = Ethernet;
            };
            SCNetworkInterfaceType = Ethernet;
        },
                {
            Active = 1;
            "BSD Name" = en1;
            IOBuiltin = 1;
            IOInterfaceNamePrefix = en;
            IOInterfaceType = 6;
            IOInterfaceUnit = 1;
            IOMACAddress = <8c2daa33 03e9>;
            IOPathMatch = "IOService:/AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/RP04@1C,3/IOPP/ARPT@0/AirPort_Brcm4360/en1";
            SCNetworkInterfaceInfo =             {
                UserDefinedName = "Wi-Fi";
            };
            SCNetworkInterfaceType = IEEE80211;
        },
                {
            Active = 1;
            "BSD Name" = en2;
            IOBuiltin = 1;
            IOInterfaceNamePrefix = en;
            IOInterfaceType = 6;
            IOInterfaceUnit = 2;
            IOMACAddress = <32001b25 92c0>;
            IOPathMatch = "IOService:/AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/RP05@1C,4/IOPP/UPSB@0/IOPP/DSB0@0/IOPP/NHI0@0/AppleThunderboltHAL/AppleThunderboltNHIType2/IOThunderboltController/IOThunderboltLocalNode/AppleThunderboltIPService/AppleThunderboltIPPort/en2";
            SCNetworkInterfaceInfo =             {
                UserDefinedName = "Thunderbolt 1";
            };
            SCNetworkInterfaceType = Ethernet;
        },
                {
            Active = 1;
            "BSD Name" = en3;
            IOBuiltin = 1;
            IOInterfaceNamePrefix = en;
            IOInterfaceType = 6;
            IOInterfaceUnit = 3;
            IOMACAddress = <32001b25 92c1>;
            IOPathMatch = "IOService:/AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/RP05@1C,4/IOPP/UPSB@0/IOPP/DSB0@0/IOPP/NHI0@0/AppleThunderboltHAL/AppleThunderboltNHIType2/IOThunderboltController/IOThunderboltLocalNode/AppleThunderboltIPService/AppleThunderboltIPPort/en3";
            SCNetworkInterfaceInfo =             {
                UserDefinedName = "Thunderbolt 2";
            };
            SCNetworkInterfaceType = Ethernet;
        },
                {
            "BSD Name" = en4;
            IOBuiltin = 0;
            IOInterfaceNamePrefix = en;
            IOInterfaceType = 6;
            IOInterfaceUnit = 4;
            IOMACAddress = <8c2daa33 03ea>;
            IOPathMatch = "Migrated_From: IOService:/IOResources/IOUserEthernetResource/IOUserEthernetResourceUserClient/IOUserEthernetController/en2";
            SCNetworkInterfaceInfo =             {
                UserDefinedName = "Bluetooth PAN";
            };
            SCNetworkInterfaceType = Ethernet;
        },
                {
            Active = 1;
            "BSD Name" = en5;
            IOBuiltin = 0;
            IOInterfaceNamePrefix = en;
            IOInterfaceType = 6;
            IOInterfaceUnit = 5;
            IOMACAddress = <001e101f 0001>;
            IOPathMatch = "IOService:/AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/EHC1@1D/AppleUSBEHCI/HUAWEI Mobile@1d110000/IOUSBInterface@4/HuaweiDataCardECMData/en5";
            SCNetworkInterfaceInfo =             {
                "USB Product Name" = "HUAWEI Mobile";
                UserDefinedName = MBBEthernet;
                idProduct = 5382;
                idVendor = 4817;
            };
            SCNetworkInterfaceType = Ethernet;
        }
    );
    Model = "iMac13,1";
}
Run Code Online (Sandbox Code Playgroud)

除了 iklier 所说的 Wi-Fi 设备名称用于en0没有以太网端口的笔记本电脑和en1带有单个以太网端口的en2Mac 之外,至少在一些带有两个以太网端口的 Mac Pro 中也是如此。


小智 16

在较旧的 Apple 便携式设备上,en0 是以太网,en1 是机场(WiFi)。

带有以太网插孔的较旧 Mac Pro 将具有 en3 以及两个以太网 NIC 和 Airport(WiFi)。

在没有以太网插孔的较新 MacBook 中,en0 是 Airport(WiFi)。

vmnet# 通常由虚拟机创建(Parallels/VMWare)