一段话先讲明白
你常说的 "我的 IP" 实际上有三种不同的 IP: ① 公网出口 IP (所有外网网站看到的, 直接打开 cleanip.io 首页 就看到); ② 内网 IP (家里这台设备的局域网 IP, 例 192.168.1.5); ③ 网关 IP (路由器的 LAN IP, 例 192.168.1.1, 用来登录路由器后台)。 下面分平台讲每种 IP 的查询方法。
一、三种 IP 的区别 — 别再混淆
互联网 (公网)
↓
← ① 公网出口 IP (例 1.2.3.4, ISP 给你家的)
↓
[ 家里路由器 ]
↓
← ③ 网关 IP (例 192.168.1.1, 路由器自己的 LAN 地址)
↓
[ 你的电脑 / 手机 ]
↓
← ② 内网 IP (例 192.168.1.5, 路由器分给你的)| 名称 | 典型值 | 怎么查 (摘要) | 用途 |
|---|---|---|---|
| ① 公网出口 IP | 1.2.3.4 / 2001:db8::1 | 访问 cleanip.io 首页 | 网站日志看到的就是这个; 外人能看到 |
| ② 内网 IP | 192.168.1.5 / 10.0.0.5 | 命令行 ipconfig / ifconfig | 你设备在局域网内的地址 |
| ③ 网关 IP | 192.168.1.1 / 192.168.0.1 | 命令行 ipconfig 看 "默认网关" | 登录路由器后台 / 局域网路由 |
二、查公网出口 IP — 最简单
2.1 浏览器一键查 (最推荐)
直接打开 cleanip.io 首页 — 我们立刻显示你的双栈出口 (IPv4 + IPv6 同时显示), 还会给出归属地 / ASN / 信誉评分。没广告, 不收集任何信息。
其他可选: ip.sb / ifconfig.me / icanhazip.com / ipinfo.io / ip138.com (国内)。
2.2 命令行查 (开发者 / 服务器)
$ curl ifconfig.me
1.2.3.4
$ curl -4 ifconfig.co # 强制 IPv4
1.2.3.4
$ curl -6 ifconfig.co # 强制 IPv6
2001:db8::1
$ dig +short myip.opendns.com @resolver1.opendns.com
1.2.3.42.3 注意: 你可能有 IPv4 + IPv6 两个出口
中国电信家宽默认上了 IPv6, 浏览器优先用 IPv6 出去。所以你访问"查 IP" 工具时, 返回的可能是 IPv6, 跟你预期的 IPv4 不一样 — 这不是泄漏, 是正常双栈。 想看 IPv4 出口, 浏览器访问纯 IPv4 域名 (ipv4.ip.sb) 即可。
三、查内网 IP / 网关 IP — 分平台
3.1 Windows
C:\> ipconfig
Windows IP Configuration
Ethernet adapter 以太网:
Connection-specific DNS Suffix . :
IPv4 Address. . . . . . . . . . . : 192.168.1.5 ← 内网 IP
Subnet Mask . . . . . . . . . . : 255.255.255.0
Default Gateway . . . . . . . . . : 192.168.1.1 ← 网关 IP PowerShell 用户: Get-NetIPConfiguration | Format-Table InterfaceAlias, IPv4Address, IPv4DefaultGateway
3.2 macOS
$ ifconfig en0 # en0 是 Wi-Fi; en1 通常是有线
en0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
inet 192.168.1.5 netmask 0xffffff00 broadcast 192.168.1.255
inet6 fe80::aede:48ff:fe00:1122%en0 prefixlen 64 scopeid 0x4
$ route -n get default | grep gateway
gateway: 192.168.1.1 ← 网关
$ networksetup -getinfo Wi-Fi # 更友好的输出
DHCP Configuration
IP address: 192.168.1.5
Subnet mask: 255.255.255.0
Router: 192.168.1.1图形界面: 系统设置 → 网络 → 当前 Wi-Fi → 详细信息 → TCP/IP, 看 "路由器" 字段就是网关。
3.3 Linux
$ ip addr show # 内网 IP
2: enp3s0: <BROADCAST,MULTICAST,UP> mtu 1500
inet 192.168.1.5/24 brd 192.168.1.255 scope global enp3s0
inet6 fe80::aede:48ff:fe00:1122/64 scope link
$ ip route | grep default
default via 192.168.1.1 dev enp3s0 proto dhcp metric 100
$ hostname -I # 简洁版只显示内网 IP
192.168.1.53.4 iOS (iPhone / iPad)
- 设置 → Wi-Fi → 点当前 Wi-Fi 名右边的 ⓘ 信息按钮
- "IP 地址" = 你的内网 IP
- "路由器" = 网关 IP(也就是你家路由器的 LAN IP)
- "子网掩码" 通常是 255.255.255.0
3.5 Android
- 设置 → Wi-Fi → 长按当前 Wi-Fi (或点齿轮) → 修改网络 → 高级
- "网关" / "网关 IP" 即路由器 IP
- 各品牌 Android 路径略不同 (小米 / 华为 / 三星), 关键字搜 "网关" / "IP 设置"
- 或者用第三方 app 直接显示: Wi-Fi Analyzer / Fing
四、特殊场景
4.1 我开了 VPN — 公网 IP 应该是 VPN 出口
VPN 全量代理 (TUN 模式) 下, 公网出口 IP = VPN 服务器的 IP。但要警惕泄漏:
- WebRTC 可能暴露真实 IP — 用 /leak 自查
- IPv6 双栈如果只代理了 IPv4, 浏览器 IPv6 流量绕过 VPN — 看到 IPv6 出口跟你 ISP 一致
- HTTP/SOCKS 代理 (非 TUN) 不接管 UDP — WebRTC / QUIC / 视频通话流量都漏
详见 VPN 溯源全解。
4.2 我家是 CGNAT — 路由器 WAN IP 是 100.64.x.x
登录路由器看 WAN 口 IP, 如果是 100.64.0.0/10 段 — 你被运营商套了 CGNAT, 没有真正的公网 IPv4。 想做端口转发 / 内网穿透要打电话给宽带运营商申请公网 IP (一般免费)。详见 CGNAT 自测。
4.3 多网卡 / 多 ISP — 哪个才是 "真正" 的出口
家里同时连了 Wi-Fi + 有线, 或者 Windows 笔记本插了 USB 网卡 — 多个网卡都有 IP, 但只有默认路由那一个会被实际用作公网出口。
- Windows:
route print看 "0.0.0.0" 那一行的 Gateway - macOS / Linux:
route -n get default/ip route | grep default
4.4 我用的是公共 Wi-Fi / 共享网络 — 公网 IP 是 NAT 共享的
咖啡馆 / 酒店 / 公共 Wi-Fi 出口是整个网络的共享 IP, 同一时间可能有几百人共用同一个公网 IP。 很多网站会限速 / 强制验证码 / 直接拒绝 (信誉低) 都跟这个有关。用 cleanip.io 首页看信誉分, 低于 60 就要小心 (公共 Wi-Fi 经常是这种)。
4.5 IPv6 长得是 fe80::... — 是不是网络坏了
fe80::/10 是链路本地地址, 每张 IPv6 网卡都至少有一个, 这不是公网 IPv6, 只在本子网内有效。 想要公网 IPv6, 看是不是 2xxx:... 开头 (全球单播)。fe80 + 没全球 IPv6 = ISP 没分配 IPv6 给你。
五、命令速查表
| 目标 | Windows | macOS / Linux |
|---|---|---|
| 公网出口 IP | 访问 cleanip.io / curl ifconfig.me | curl ifconfig.me |
| 所有本地 IP | ipconfig /all | ifconfig / ip addr |
| 默认网关 | ipconfig 看 Default Gateway | ip route / route -n get default |
| DNS 服务器 | ipconfig /all 看 DNS Servers | cat /etc/resolv.conf / scutil --dns |
| 路由表 | route print | netstat -rn / ip route |
| 清 DNS 缓存 | ipconfig /flushdns | sudo killall -HUP mDNSResponder / systemd-resolve --flush-caches |
延伸阅读
- 私有 IP / 网关 / RFC 1918 全解192.168.1.1 / CGNAT / 路由器登录指南
- IPv6 完全指南为什么家宽都默认双栈, 怎么管理
- VPN 溯源 + 防追踪用了 VPN 但真实 IP 还是漏了?