Mac终端查看IP地址教程
时间:2026-03-28 21:23:49 274浏览 收藏
在Mac终端中快速准确地查看IP地址,既要区分内网(局域网)与外网(公网)的不同用途,也要理解多个网络接口(如en0、en1、lo0、VPN虚拟接口等)各自分配的IP所代表的实际网络角色——通过ifconfig或ipconfig getifaddr可高效获取内网IP,而curl ifconfig.me则一键揭示你在互联网上的真实“门牌号”;文章不仅提供了简洁实用的命令组合和过滤技巧,还深入浅出地解释了NAT机制、DHCP动态分配、IPv4/IPv6共存等底层逻辑,帮助用户从“看到IP”进阶到“读懂网络”,无论是日常排查、远程配置还是开发调试,都能做到心中有数、操作有据。

在Mac命令行查看IP地址,最直接有效的方式就是使用ifconfig命令。这个命令会列出你Mac上所有网络接口的详细信息,包括内网IP地址。如果你想知道自己的外网IP,也就是你在互联网上的“门牌号”,则需要借助一些外部服务,比如curl ifconfig.me。这两种方法各有侧重,一个管“家里”,一个管“外面”。
解决方案
要查看Mac的内网IP地址,打开“终端”(可以在“应用程序”->“实用工具”中找到,或者用Spotlight搜索)。
输入以下命令:
ifconfig
按下回车后,你会看到一长串输出,其中包含了多个网络接口的信息。通常,你会关心以下几个:
en0: 这通常代表你的以太网接口(如果你通过网线连接网络),或者在一些较新的MacBook型号上,它也可能代表Wi-Fi接口。en1: 如果en0是以太网,那么en1很可能就是你的Wi-Fi接口。lo0: 这是本地回环接口,它的IP地址总是127.0.0.1,主要用于本机内部通信和测试。
在这些接口的输出中,找到inet后面的那串数字,那就是对应的内网IP地址。例如,如果你的Mac通过Wi-Fi连接,你可能会在en1或en0下找到类似inet 192.168.1.100这样的信息。
如果觉得ifconfig的输出太多,你也可以尝试筛选一下:
ifconfig | grep inet
这会只显示包含inet(即IP地址)的行,让信息更简洁。
对于只想快速获取某个特定接口的IP地址,比如Wi-Fi接口(通常是en0或en1),可以使用:
ipconfig getifaddr en0
或者
ipconfig getifaddr en1
这会直接返回该接口的IP地址。
至于查看你的外网IP地址,也就是ISP(互联网服务提供商)分配给你的、在互联网上可见的IP,可以利用一些提供IP查询服务的网站。在命令行中,我们通常用curl命令:
curl ifconfig.me
或者
curl ipinfo.io/ip
这两个命令都会直接返回你的当前外网IP地址。我个人更偏爱ifconfig,因为它能给我一个全面的网络接口概览,虽然输出信息有点多,但那种“尽在掌握”的感觉挺好。而查看外网IP,curl无疑是最快最省事的。

如何区分Mac的内网IP和外网IP?
这块儿其实挺有意思的,很多人刚接触网络的时候都会混淆,觉得自己的电脑只有一个IP。但实际上,你的Mac就像住在一个小区里,小区内部有自己的门牌号(内网IP),而整个小区对外只有一个大门牌号(外网IP)。
内网IP(Internal IP / Local IP): 内网IP地址是你的路由器(或者公司网络中的交换机)分配给你的Mac的。它只在你自己的局域网(Local Area Network, LAN)内部有效。常见的内网IP地址段包括:
192.168.x.x(最常见,比如192.168.1.100)10.x.x.x(常用于大型企业网络)172.16.x.x到172.31.x.x
这些IP地址是私有的,不能直接在互联网上被访问。你的Mac、手机、智能家居设备等,在同一个局域网内通信时,都使用这些内网IP。ifconfig命令显示的就是这些内网IP。
外网IP(External IP / Public IP): 外网IP地址是你的互联网服务提供商(ISP)分配给你的,它在整个互联网上是唯一的(至少在某个时间点上)。它是你的网络设备(通常是你的路由器)在互联网上的身份标识。当你访问一个网站、发送一封邮件时,互联网上的服务器看到的是你的外网IP地址。
为什么会有内外网之分? 这主要是因为IPv4地址资源有限,而设备数量爆炸式增长。网络地址转换(NAT)技术允许一个外网IP地址对应多个内网IP地址,这样就大大节省了公共IP资源。你的路由器就是那个负责NAT转换的“小区大门”,它把所有内网设备的请求都伪装成自己的外网IP去访问互联网,然后把返回的数据正确地转发给对应的内网设备。
理解这一点非常重要,尤其当你需要设置端口转发(比如远程访问家里的NAS)或者排查网络问题时。

为什么我的Mac会有多个IP地址,它们各有什么用途?
初看ifconfig的输出,密密麻麻的接口和IP地址确实让人有点晕。我记得我刚开始接触的时候,就纳闷为啥会有这么多inet地址。后来才明白,这就像你的Mac有好多张“网卡”,每张卡负责连接一种网络,自然就可能拿到一个或多个地址。
Mac拥有多个IP地址的原因主要在于它有多个网络接口,以及可能存在的虚拟网络接口:
物理网络接口:
- 以太网(Ethernet): 如果你的Mac有物理网线接口(或者通过USB-C转接器),它会有一个对应的接口,比如
en0或en1。连接网线后,它会从路由器获取一个IP地址。 - Wi-Fi(AirPort): 几乎所有Mac都有Wi-Fi模块,它也有一个对应的接口,通常是
en0或en1(具体哪个取决于你的Mac型号和macOS版本)。连接Wi-Fi后,它会从无线路由器获取一个IP地址。 - 蓝牙PAN(Personal Area Network): 有时蓝牙连接也会创建一个虚拟网络接口,用于与其他蓝牙设备共享网络连接。
- 以太网(Ethernet): 如果你的Mac有物理网线接口(或者通过USB-C转接器),它会有一个对应的接口,比如
虚拟网络接口:
- 回环接口(Loopback Interface -
lo0): 这是一个特殊的虚拟接口,它的IP地址永远是127.0.0.1(IPv4)和::1(IPv6)。它不连接任何外部网络,只用于Mac内部的进程间通信。开发者经常用它来测试本地运行的服务,比如访问http://localhost或http://127.0.0.1。 - VPN接口(Virtual Private Network): 当你连接VPN时,系统会创建一个或多个虚拟网络接口(例如
utun0、ppp0等)。这些接口会分配一个新的IP地址,所有通过VPN隧道传输的数据都会经过这些接口,从而改变你的网络路径和对外显示的IP地址。 - 虚拟机网络接口: 如果你在Mac上运行了Parallels Desktop、VMware Fusion或VirtualBox等虚拟机软件,这些软件会创建虚拟网络接口,用于虚拟机与Mac主机以及外部网络之间的通信。
- 回环接口(Loopback Interface -
每个IP地址都有其特定的“使命”。比如,Wi-Fi的IP让你能无线冲浪,以太网的IP让你能有线连接,lo0的IP则让你的本地开发环境能正常工作。理解这些不同IP的来源和用途,能帮助你更好地诊断网络问题,或者在开发时进行更精确的配置。

在命令行中查看IP地址时,常见的挑战和注意事项有哪些?
说实话,ifconfig虽然强大,但它的输出对新手来说确实有点“劝退”。一大堆参数,眼花缭乱。我通常会直接grep一下,省心不少。另外,有时候你会发现en0和en1的身份会互换,这在不同Mac型号或者系统更新后挺常见的,所以别死记硬背哪个是Wi-Fi,哪个是网线,最好是看它实际连接了哪个网络。
以下是一些在命令行中查看IP地址时可能遇到的挑战和需要注意的事项:
输出信息量大,难以定位:
ifconfig命令的输出非常详细,包含了网络接口的MAC地址、状态、MTU等大量信息,对于只想查找IP地址的用户来说,可能会觉得信息过于冗余。- 解决方案: 使用
grep命令进行过滤。例如,ifconfig | grep inet可以快速筛选出所有IP地址行。如果你知道要查找的接口名称(比如en0),可以直接ifconfig en0 | grep inet。
- 解决方案: 使用
接口名称的变动: 不同的Mac型号、macOS版本,甚至连接方式的变化,都可能导致Wi-Fi和以太网接口的名称有所不同(例如,Wi-Fi可能是
en0或en1)。- 解决方案: 如果不确定哪个是当前活动的Wi-Fi或以太网接口,可以先运行
networksetup -listallhardwareports命令。它会列出所有硬件端口及其对应的设备名称(例如“Wi-Fi”对应“en0”)。这样你就能准确地找到你需要的接口名称。
- 解决方案: 如果不确定哪个是当前活动的Wi-Fi或以太网接口,可以先运行
VPN连接的影响: 当你连接VPN时,系统会创建一个新的虚拟网络接口(如
utun0、ppp0等),并为其分配一个IP地址。此时,你的外网IP地址也会随之改变。- 注意事项: 如果你在使用VPN,
ifconfig会显示VPN接口的IP,而curl ifconfig.me则会显示VPN服务器所在地的公共IP。在进行网络故障排除时,需要清楚当前是否处于VPN连接状态。
- 注意事项: 如果你在使用VPN,
IP地址的动态性: 大多数家庭和小型办公室网络都使用DHCP(动态主机配置协议)来分配IP地址。这意味着你的Mac每次连接网络时,或者在一定时间间隔后,都可能获得一个新的内网IP地址。外网IP地址也可能由ISP动态分配。
- 注意事项: 如果你发现Mac的IP地址“变了”,这通常是正常的DHCP行为。除非你需要一个固定的IP(例如,运行服务器或设置端口转发),否则无需担心。
IPv4与IPv6:
ifconfig的输出中会同时显示IPv4地址(inet)和IPv6地址(inet6)。在日常使用中,我们通常更关注IPv4地址,但随着IPv6的普及,了解其存在也是有益的。
通过掌握这些命令和注意事项,你就能更自信、更高效地在Mac命令行中管理和查看网络信息了。
理论要掌握,实操不能落!以上关于《Mac终端查看IP地址教程》的详细介绍,大家都掌握了吧!如果想要继续提升自己的能力,那么就来关注golang学习网公众号吧!
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
158 收藏
-
184 收藏
-
104 收藏
-
355 收藏
-
107 收藏
-
328 收藏
-
350 收藏
-
450 收藏
-
488 收藏
-
101 收藏
-
489 收藏
-
478 收藏
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 立即学习 543次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 立即学习 516次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 立即学习 500次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 立即学习 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 立即学习 485次学习