菜鸟科技网

mac命令行如何查看本机IP地址?

在macOS系统中,通过命令行查看IP地址是网络管理和故障排查的常用操作,macOS基于Unix内核,提供了多种命令行工具来获取网络配置信息,这些工具功能强大且灵活,适合开发者、系统管理员或高级用户使用,以下是几种常用的方法及其详细说明。

mac命令行如何查看本机IP地址?-图1
(图片来源网络,侵删)

使用ifconfig命令查看IP地址

ifconfig是传统的网络配置工具,可以显示和配置网络接口的详细信息,在macOS中,ifconfig通常位于/usr/sbin目录下,可能需要手动调用完整路径或将其添加到环境变量中。

基本用法

ifconfig

执行后会列出所有网络接口的状态,包括以太网(en0)、Wi-Fi(en1)、回环接口(lo0)等,重点关注inet字段,该字段显示接口的IPv4地址,inet6字段则对应IPv6地址。

示例输出

mac命令行如何查看本机IP地址?-图2
(图片来源网络,侵删)
en0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
    options=b<RXCSUM,TXCSUM>
    ether a4:5e:60:xx:xx:xx
    inet 192.168.1.100 netmask 0xffffff00 broadcast 192.168.1.255
    inet6 fe80::a65e:60ff:fexx:xxxx%en0 prefixlen 64 secured scopeid 0x5
    nd6 options=201<PERFORMNUD,DAD>
    media: autoselect
    status: active

其中inet 192.168.1.100即为当前接口的IPv4地址。

指定接口查看
如果仅需查看特定接口(如Wi-Fi),可使用:

ifconfig en1

使用ipconfig命令获取简要信息

ipconfig是macOS特有的工具,主要用于快速获取网络接口的IP地址,相比ifconfig输出更简洁。

基本用法

mac命令行如何查看本机IP地址?-图3
(图片来源网络,侵删)
ipconfig getifaddr en0

该命令直接返回指定接口的IPv4地址,适合在脚本中调用。

$ ipconfig getifaddr en1
192.168.1.101

使用networksetup命令查看网络配置

networksetup是macOS高级网络配置工具,可查看和管理网络服务,包括代理、DNS、IP地址等。

查看所有服务

networksetup -listallnetworkservices

查看指定服务的IP配置

networksetup -getinfo Wi-Fi

输出示例:

Hardware Port: Wi-Fi
Device: en1
IPv4 Configuration: DHCP
IP address: 192.168.1.101
Subnet mask: 255.255.255.0
Router: 192.168.1.1

使用scutil命令获取详细网络信息

scutil是macOS的系统配置工具,可通过编程方式获取网络参数,适合需要结构化输出的场景。

查看当前网络配置

scutil --dns

获取IPv4地址

scutil --nwi | grep "address"

输出示例:

address: 192.168.1.101

使用curl命令获取公网IP地址

若需查看当前网络的公网IP地址(而非局域网IP),可调用第三方服务:

curl ifconfig.me

或使用更可靠的接口:

curl cip.cc

常用命令对比

命令 用途 输出示例 适用场景
ifconfig 显示所有接口详细信息 包含MAC、IP、子网掩码等 全面排查网络配置
ipconfig getifaddr 获取指定接口的IPv4地址 直接返回IP字符串 脚本调用、快速查询
networksetup -getinfo 查看网络服务配置(如DHCP) 显示IP、路由、DNS等 管理网络服务
scutil --nwi 获取当前网络接口的简要信息 过滤后可提取IP 编程化获取网络参数
curl ifconfig.me 获取公网IP地址 45.67.89 检查出口IP

相关问答FAQs

Q1: 如何在macOS命令行中查看当前活跃的网络接口名称?
A1: 可以通过以下命令列出所有接口,并通过status: active筛选活跃接口:

ifconfig | grep "status: active"

输出en0: status: active表示以太网接口处于活跃状态。

Q2: 为什么ifconfig命令在macOS中无法直接使用?
A2: 在较新的macOS版本(如Catalyst之后),ifconfig可能需要手动调用完整路径,因为系统默认不将其加入PATH,可使用以下方式解决:

/usr/sbin/ifconfig

或创建一个别名(添加到~/.bash_profile~/.zshrc):

alias ifconfig='/usr/sbin/ifconfig'
分享:
扫描分享到社交APP
上一篇
下一篇