KNOWLEDGE HOW TO FIND MY PUBLIC IP

怎么查我的公网 IP / 出口 IP / 网关 IP — 全平台教程

3 种 IP 各代表什么? Windows / macOS / Linux / iOS / Android / 路由器后台 全平台命令 + 截图教程, 含 CGNAT / IPv6 / VPN 出口的特殊场景。

一段话先讲明白

你常说的 "我的 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, 路由器分给你的)
名称典型值怎么查 (摘要)用途
① 公网出口 IP1.2.3.4 / 2001:db8::1访问 cleanip.io 首页网站日志看到的就是这个; 外人能看到
② 内网 IP192.168.1.5 / 10.0.0.5命令行 ipconfig / ifconfig你设备在局域网内的地址
③ 网关 IP192.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 命令行查 (开发者 / 服务器)

terminal
$ 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.4

2.3 注意: 你可能有 IPv4 + IPv6 两个出口

中国电信家宽默认上了 IPv6, 浏览器优先用 IPv6 出去。所以你访问"查 IP" 工具时, 返回的可能是 IPv6, 跟你预期的 IPv4 不一样 — 这不是泄漏, 是正常双栈。 想看 IPv4 出口, 浏览器访问纯 IPv4 域名 (ipv4.ip.sb) 即可。

三、查内网 IP / 网关 IP — 分平台

3.1 Windows

cmd.exe (Win + R → cmd)
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

Terminal (zsh)
$ 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

Terminal (bash)
$ 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.5

3.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 给你。

五、命令速查表

目标WindowsmacOS / Linux
公网出口 IP访问 cleanip.io / curl ifconfig.mecurl ifconfig.me
所有本地 IPipconfig /allifconfig / ip addr
默认网关ipconfig 看 Default Gatewayip route / route -n get default
DNS 服务器ipconfig /all 看 DNS Serverscat /etc/resolv.conf / scutil --dns
路由表route printnetstat -rn / ip route
清 DNS 缓存ipconfig /flushdnssudo killall -HUP mDNSResponder / systemd-resolve --flush-caches

延伸阅读

mimetic
mimetic
mimetic