电脑IP地址怎么查?5种实测方法覆盖Windows/macOS/Linux
2026/9/20 14:56:09 网站建设 项目流程

1. 查IP这件事,远比你想的更有门道

“怎么查电脑IP地址”这个问题,我在技术群里见过不下几百次。每次有人问,底下总有人甩一句“cmd里敲ipconfig不就行了”,然后提问的人试了一下,发现出来一堆东西,什么IPv4、IPv6、子网掩码、默认网关、隧道适配器,直接看懵了。更麻烦的是,有时候ipconfig查出来的地址是169.254开头的,有时候是192.168.x.x,有时候又变成10.x.x.x,到底哪个才是真正在用的?为什么同一个命令在不同电脑上结果差别这么大?

这篇文章就是来解决这些问题的。我会把查IP这件事从“敲个命令”上升到“搞清楚网络结构”的层面,给你5种经过实测的方法,覆盖Windows、macOS、Linux三大平台,同时把每种方法背后的原理、适用场景、常见坑点全部讲透。不管你是刚接触网络的新手,还是需要快速定位网络问题的运维人员,看完都能直接上手操作,并且知道每一步为什么要这么做。

先明确一个核心概念:电脑的IP地址不是“一个”地址,而是可能同时存在多个。有线网卡有一个,无线网卡有一个,虚拟机虚拟网卡有若干个,蓝牙网络适配器可能也有一个。你查IP之前,得先想清楚你要查的是哪个网卡的地址。这个认知非常关键,很多人查了半天发现查到的IP“不对”,根本原因就是查错了网卡。

下面进入正题,5种方法从快到慢、从简单到深入依次展开。

2. 方法一:命令提示符ipconfig,最经典也最容易踩坑

2.1 基础操作:三步拿到IPv4地址

这是绝大多数人第一个学会的方法,也是Windows系统下最直接的方式。操作步骤很简单:

  1. 按下Win + R组合键,打开“运行”窗口
  2. 输入cmd,回车,打开命令提示符窗口
  3. 在黑色窗口中输入ipconfig,回车

屏幕上会立刻显示当前所有网络适配器的信息。你找到“无线局域网适配器 WLAN”或者“以太网适配器 以太网”这一节,里面的“IPv4 地址”就是你要找的地址,通常长这样:192.168.1.105

如果你觉得信息太多看不过来,可以用ipconfig | findstr "IPv4"这条命令,它只筛选包含“IPv4”的行,输出会干净很多。这个管道加findstr的用法是我平时用得最多的,尤其在需要快速确认地址的时候,省得在一堆信息里翻找。

2.2 为什么你看到的IP可能是169.254开头

这是新手最容易慌的一个点。ipconfig一敲,IPv4地址显示169.254.xx.xx,然后就开始怀疑是不是电脑坏了。其实这个地址段是Windows在没有获取到DHCP分配地址时自动生成的临时地址,学名叫APIPA(自动专用IP寻址)。

出现169.254开头说明你的电脑没有成功从路由器拿到IP。常见原因有三个:一是网线没插好或者WiFi密码输错了根本没连上;二是路由器的DHCP服务关了或者地址池满了;三是网卡驱动出了问题。排查顺序建议是先看物理连接,再看路由器DHCP设置,最后检查网卡驱动。

注意:169.254开头的地址只能在本地链路通信,无法访问外网,也无法和正常网段的设备互通。看到这个地址,第一反应应该是“网络没连上”,而不是“IP查错了”。

2.3 隧道适配器那一堆东西要不要管

用ipconfig的时候,很多人会看到“隧道适配器 Teredo Tunneling Pseudo-Interface”、“隧道适配器 isatap.{...}”这类条目,下面也挂着IPv6地址。这些是Windows为了兼容IPv6过渡技术自动创建的虚拟接口,日常查IP完全不需要管它们

我见过有人把这些隧道适配器的地址当成自己的IP报给别人,结果对方怎么都连不上。记住一个原则:你要查的是“无线局域网适配器”或“以太网适配器”下面的IPv4地址,其他的一律忽略。如果你实在觉得这些隧道适配器碍眼,可以用ipconfig /all查看完整信息,但同样只需要关注物理网卡那一节。

2.4 ipconfig进阶用法:释放和重新获取

有时候你明明连上了路由器,但IP就是不对,这时候可以试试这两条命令:

ipconfig /release ipconfig /renew

第一条是释放当前IP,第二条是重新向DHCP服务器申请。执行完之后再看IPv4地址,通常就能拿到正常的地址了。这个操作相当于把网卡的IP租约清空重新来过,对于DHCP分配异常的情况非常有效。

还有一个ipconfig /flushdns是刷新DNS缓存的,虽然不直接查IP,但在网络访问异常时配合使用效果很好。这三个命令我一般连着敲,一套下来大部分网络小毛病都能解决。

3. 方法二:图形界面查看,不用记命令的方法

3.1 通过网络和共享中心查看

不是所有人都习惯用命令行,图形界面同样能查到IP,而且信息展示更直观。以Windows 10/11为例:

  1. 右键点击任务栏右下角的网络图标
  2. 选择“打开网络和Internet设置”
  3. 点击“查看网络属性”
  4. 在打开的页面中找到“IPv4地址”一行

这里显示的就是当前活跃网卡的IP地址。这个方法的优点是同时能看到DNS服务器、默认网关等信息,不用额外敲命令。缺点是步骤比ipconfig多,熟练之后还是命令行更快。

3.2 通过设置应用快速查看

Windows 11把网络设置重新整理过,路径更短:

  1. Win + I打开设置
  2. 左侧选择“网络和Internet”
  3. 点击当前连接的网络名称(比如WiFi名字)
  4. 在“属性”区域就能看到IPv4地址

这个方法适合不熟悉命令行的用户,全程鼠标操作,不需要记任何命令。实测在Windows 11 22H2及以上版本中,这个路径是最短的图形界面查IP方式。

3.3 通过控制面板的传统路径

如果你用的是Windows 7或者更老的系统,或者习惯传统控制面板的操作逻辑,可以走这条路:

  1. 打开控制面板
  2. 选择“网络和Internet”
  3. 点击“网络和共享中心”
  4. 点击当前连接的网络名称
  5. 在弹出的状态窗口中点击“详细信息”

这个“详细信息”窗口里会列出完整的IP配置,包括IPv4地址、子网掩码、默认网关、DHCP服务器、DNS服务器等。信息比前面两种图形方法更全,适合需要一次性看所有网络参数的情况。

提示:图形界面查到的IP和ipconfig查到的应该是一致的。如果不一致,说明你查看的网卡不是同一个,检查一下是不是有多块网卡同时在工作。

4. 方法三:通过路由器管理后台反查,适合查别人的设备

4.1 登录路由器管理页面

有时候你要查的不是自己这台电脑的IP,而是局域网里另一台设备的IP,比如打印机、另一台电脑、智能家居设备。这时候从路由器后台看是最方便的。

操作步骤:

  1. 先确认路由器的管理地址,常见的是192.168.1.1192.168.0.1,具体看路由器背面标签
  2. 浏览器输入这个地址,回车
  3. 输入管理员账号密码登录(默认账号密码也在路由器背面)

登录之后找到“设备管理”、“已连接设备”、“DHCP客户端列表”这类菜单,里面会列出所有连接到路由器的设备,包括设备名称、IP地址、MAC地址。你根据设备名称就能找到对应的IP。

4.2 通过MAC地址精确定位设备

设备名称有时候会显示成“unknown”或者一串乱码,这时候就需要用MAC地址来匹配。MAC地址是网卡的物理地址,格式像A4-5E-60-xx-xx-xx这样。

在Windows上查自己电脑的MAC地址,用ipconfig /all,找到“物理地址”一行就是。然后拿着这个MAC地址去路由器设备列表里对照,就能准确找到自己电脑在路由器上分配的IP。

这个方法在排查“为什么我的电脑连不上打印机”这类问题时特别有用。你先在路由器上找到打印机的IP,然后在电脑上ping一下这个IP,通不通立刻就知道问题出在哪。

4.3 路由器后台还能看到什么有用信息

除了设备IP列表,路由器后台还能看到:

  • DHCP地址池范围:知道哪些IP是自动分配的,哪些可以手动设置静态IP
  • 连接时长:判断设备是什么时候连上的
  • 信号强度:无线设备可以看到信号质量
  • 上传下载流量:排查异常流量

这些信息对于家庭网络管理来说非常实用。我自己的习惯是每隔一段时间登录路由器看一眼设备列表,发现不认识的设备就立刻处理,这也是网络安全的基本功。

5. 方法四:macOS和Linux下的查IP方式

5.1 macOS:ifconfig和网络偏好设置

macOS下查IP有两个途径。命令行方式是在终端输入:

ifconfig | grep "inet "

输出中inet后面跟的就是IPv4地址,inet6后面是IPv6地址。注意排除127.0.0.1,那是本地回环地址,不是真实网卡地址。

图形界面方式是:点击左上角苹果菜单,选择“系统偏好设置”,点击“网络”,左侧选择当前连接的网络服务,右侧就会显示IP地址。macOS的图形界面做得比较简洁,信息一目了然。

5.2 Linux:ip addr和hostname -I

Linux下传统的ifconfig命令在很多新发行版中已经默认不安装了,推荐用ip addr命令:

ip addr show

输出中inet后面的地址就是IPv4地址。如果只想快速拿到IP,可以用:

hostname -I

这条命令直接输出所有网卡的IP地址,空格分隔,非常适合脚本里使用。

对于RedHat 7、CentOS 7、openEuler、统信UOS这些系统,查IP的方法基本一致。如果是图形界面的桌面版,也可以在网络设置里查看,路径和Windows类似。

5.3 跨平台查IP的通用思路

不管什么系统,查IP的核心逻辑是一样的:找到当前活跃的物理网卡,读取它的IPv4地址。区别只是命令不同、界面不同。记住这个逻辑,换任何系统都能快速找到对应的方法。

我整理了一个跨平台对照表,方便你快速查阅:

系统命令行方式图形界面路径
Windowsipconfig设置 > 网络和Internet > 属性
macOSifconfig | grep "inet "系统偏好设置 > 网络
Linuxip addr show网络设置 > 有线/无线
RedHat 7ip addrnmclinmtui图形工具

6. 方法五:用Python脚本自动获取并记录IP

6.1 为什么需要脚本查IP

如果你经常需要查IP,比如做网络巡检、批量管理设备、记录网络状态,手动敲命令就太慢了。用Python写个小脚本,一键获取本机所有网卡的IP地址,还能自动保存到文件里,效率提升非常明显。

6.2 核心代码实现

下面这段代码用Python标准库就能跑,不需要额外安装任何包:

import socket import subprocess import re def get_ip_addresses(): """获取本机所有网卡的IPv4地址""" hostname = socket.gethostname() addresses = socket.getaddrinfo(hostname, None, socket.AF_INET) ip_list = list(set([addr[4][0] for addr in addresses])) return ip_list def get_ip_by_ipconfig(): """通过调用系统命令获取IP,适合Windows""" result = subprocess.run(['ipconfig'], capture_output=True, text=True, encoding='gbk') pattern = r'IPv4 地址[.\s]*:\s*(\d+\.\d+\.\d+\.\d+)' ips = re.findall(pattern, result.stdout) return ips if __name__ == '__main__': print("通过socket获取:", get_ip_addresses()) print("通过ipconfig获取:", get_ip_by_ipconfig())

这段代码给了两种方式:一种是纯Python的socket方式,跨平台通用;另一种是调用系统ipconfig命令再正则提取,适合Windows下获取更准确的网卡对应关系。

6.3 脚本查IP的实用场景

这个脚本可以扩展成很多实用工具。比如加上定时任务,每隔一小时记录一次IP,写入CSV文件,就能追踪IP变化历史。再比如加上邮件发送功能,IP发生变化时自动通知,对于需要远程访问的机器非常有用。

我在实际使用中会把脚本打包成exe,放在U盘里,到任何一台Windows电脑上双击就能查IP,不用打开命令行。对于经常需要帮别人处理网络问题的场景,这个小工具省了很多时间。

注意:用subprocess调用ipconfig时,Windows中文系统的输出编码是gbk,不是utf-8,如果不指定encoding='gbk'会报解码错误。这个坑我踩过好几次,后来养成习惯,所有调用系统命令的地方都显式指定编码。

7. 常见问题与排查技巧实录

7.1 ipconfig显示“媒体已断开连接”怎么办

这个提示的意思是网卡没有检测到物理连接。可能的原因:

  • 网线没插好或者网线坏了
  • 路由器或交换机的对应端口没通电
  • 网卡被禁用了
  • 无线网卡没有连接到任何WiFi

排查步骤:先看网口指示灯亮不亮,不亮就换根网线试试;无线的话看是否连上了WiFi。如果物理连接正常但还显示断开,去设备管理器里看网卡有没有被禁用,右键启用即可。

7.2 Win11无法运行cmd文件怎么处理

Windows 11对脚本执行策略收紧了,有时候双击cmd文件没反应。解决方法:

  1. 右键cmd文件,选择“以管理员身份运行”
  2. 如果还是不行,打开PowerShell,执行Set-ExecutionPolicy RemoteSigned
  3. 检查组策略里有没有限制脚本执行

另外Win11的终端应用默认可能是PowerShell而不是cmd,在终端设置里可以把默认配置文件改成命令提示符。

7.3 查到的IP和实际访问的IP不一致

这种情况通常是因为电脑同时连接了多个网络。比如有线连内网、无线连外网,这时候电脑有两个IP,访问不同网络时走不同的网卡。用ipconfig可以看到所有网卡的IP,用route print可以看路由表,确认默认路由走的是哪个网卡。

还有一种情况是使用了代理或虚拟网卡。比如安装了Docker、VMware、VirtualBox之后,会多出好几个虚拟网卡,它们的IP也会出现在ipconfig结果里。这些虚拟网卡的IP不是真实的外网IP,不要混淆。

7.4 常见问题速查表

问题现象可能原因解决方法
IP是169.254开头DHCP获取失败检查网线/WiFi,重启路由器
ipconfig无输出命令没敲对或环境变量异常用完整路径C:\Windows\System32\ipconfig.exe
只有IPv6没有IPv4网卡配置异常重置网卡:netsh int ip reset
IP地址频繁变化DHCP租约短设置静态IP或延长租约时间
虚拟网卡太多看花眼安装了虚拟机/Docker只看物理网卡那一节

7.5 设置静态IP时网关填不了的坑

有用户反馈在Win10里设置静态IP时,不填网关就保存不了。这是因为Windows要求静态IP配置必须完整,网关可以填一个同网段的地址,比如IP是192.168.1.100,网关填192.168.1.1。如果确实不需要网关,可以填0.0.0.0,但部分Windows版本会校验不通过。最稳妥的方式还是填真实网关地址。

8. 几个我踩过的坑和实用建议

第一个坑是关于隧道适配器的。早期我帮别人远程排查问题,对方把隧道适配器的IPv6地址报给我,我ping了半天没反应,后来才发现是看错了行。从那以后我养成了一个习惯:让对方截图发过来,而不是口述IP,这样一眼就能看出是哪个网卡、什么类型的地址。

第二个坑是关于编码的。用Python调用ipconfig的时候,如果不指定gbk编码,中文Windows下会直接抛异常。这个在英文系统上不会出现,所以很多教程里没提,但国内环境几乎必踩。后来我写了一个兼容函数,先尝试gbk,失败再试utf-8,基本覆盖所有情况。

第三个建议是:养成记录IP的习惯。家里的路由器、打印机、NAS这些设备的IP,最好记在一个备忘录里。DHCP分配的地址虽然方便,但设备多了之后IP会变,每次找设备都要重新查一遍很麻烦。对于不常移动的设备,建议在路由器里设置静态DHCP绑定,让它们每次拿到同一个IP。

最后一个实用技巧:如果你经常需要在不同网络环境之间切换(比如公司内网和家里WiFi),可以写两个批处理文件,一个设置静态IP,一个恢复自动获取。切换的时候双击对应文件就行,比手动去网络设置里改快得多。批处理内容大概是这样:

:: 设置静态IP netsh interface ip set address "以太网" static 192.168.1.100 255.255.255.0 192.168.1.1 :: 恢复自动获取 netsh interface ip set address "以太网" dhcp

把“以太网”换成你实际的网卡名称就行。这个技巧我用了好几年,每次换网络环境省下至少两分钟。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询