快速查询公网IP信息的终极命令手册(2025更新)

快速查询公网IP信息的终极命令手册(2025更新)

在Linux终端中,10秒内获取公网IP地址

无论是服务器运维、网络调试还是自动化脚本开发,快速获取公网IP都是网络管理中的基础技能。本文整理了最精炼有效的命令行方法,涵盖纯文本、JSON、自动化脚本等多种场景需求。

一、3秒获取纯文本IP(基础版)

适合只需IP地址的快速查询场景,输出干净无冗余:

bash

复制代码

# 最稳定推荐(2025实测)

curl icanhazip.com

curl ipinfo.io/ip

# 备选方案(全球节点多)

curl ifconfig.me

curl ipecho.net/plain

curl wgetip.com

输出示例:

203.0.113.42

(仅返回IP地址,适合脚本调用)

二、获取详细IP信息(JSON版)

需要地理位置、运营商等元数据时使用:

bash

复制代码

# 完整信息(含城市/运营商/时区)

curl ipinfo.io/json

# 精简过滤(只提取关键字段)

curl ipinfo.io/json | jq '{ip, city, org, timezone}'

输出示例:

json

复制代码

{

"ip": "203.0.113.42",

"city": "Beijing",

"region": "Beijing",

"country": "CN",

"loc": "39.9075,116.3972",

"org": "AS4847 China Networks Inter-Exchange",

"timezone": "Asia/Shanghai"

}

工具提示 :结合 jq 命令(sudo apt install jq)可定制输出字段

三、无需外部工具(DNS协议查询)

当服务器未安装curl/wget时的应急方案:

bash

复制代码

# 使用OpenDNS解析(最可靠)

dig +short myip.opendns.com @resolver1.opendns.com

# 替代方案

host myip.opendns.com resolver1.opendns.com | grep "has address" | awk '{print $4}'

四、进阶应用场景

1. 通过代理查询目标IP

测试代理链路的出口IP:

bash

复制代码

curl -x socks5://127.0.0.1:1080 ipinfo.io/ip # 替换为你的代理端口

2. 自动化脚本(多服务容错)

创建 getip.sh 避免单点服务失效:

bash

复制代码

#!/bin/bash

SERVERS=("icanhazip.com" "ipinfo.io/ip" "ifconfig.me")

for srv in "${SERVERS[@]}"; do

IP=$(curl -s $srv)

[ -n "$IP" ] && break

done

echo "Public IP: ${IP:-Not Found}"

3. Windows系统通用方法

powershell

复制代码

# 命令行执行

curl ifconfig.me

# 原生命令(需解析输出)

ipconfig | findstr /i "IPv4"

五、主流IP查询服务对比表

服务地址

速度

数据丰富度

特点

ipinfo.io

★★★

★★★★★

结构化JSON,字段最全

icanhazip.com

★★★★

★☆☆☆☆

纯IP,响应最快

ifconfig.me

★★★☆

★★★☆☆

支持/all返回全量文本信息

ipecho.net/plain

★★★☆

★☆☆☆☆

欧洲节点稳定

checkip.amazonaws.com

★★★★

★☆☆☆☆

AWS全球加速

六、常见问题排错

命令返回空值?

检查网络连通性:ping 8.8.8.8

尝试超时参数:curl --connect-timeout 5 ifconfig.me

可能触防火墙:使用443端口服务 curl https://ipinfo.io/ip

输出包含乱码/广告?

部分服务(如 cip.cc)含推广信息,建议用 grep 过滤:

bash

复制代码

curl cip.cc | grep -Eo '([0-9]{1,3}\.){3}[0-9]{1,3}'

云服务器获取到内网IP?

公有云(如AWS/Aliyun)可能使用NAT,需通过metadata接口获取:

bash

复制代码

# AWS示例

curl http://169.254.169.254/latest/meta-data/public-ipv4

隐私警示 :所有查询均会向第三方服务暴露IP,敏感环境建议自建IP查询服务(如搭建内部版 ipinfo.io)。