1. 查詢自身公網 IP
curl https://ipinfo.im/api/ip
2. 完整 IP 資訊(JSON)
curl https://ipinfo.im/api/
3. 查詢指定 IP
curl "https://ipinfo.im/api/?ip=8.8.8.8"
4. 格式化 JSON(需安裝 jq)
curl -s https://ipinfo.im/api/ | jq .
5. 只提取指定欄位
curl -s "https://ipinfo.im/api/?ip=1.1.1.1" | jq -r '.country'
curl -s "https://ipinfo.im/api/?ip=1.1.1.1" | jq -r '.org'
6. 判斷 IP 所屬國家
COUNTRY=$(curl -s "https://ipinfo.im/api/?ip=$IP" | jq -r '.country')
echo "國家代碼:$COUNTRY"
7. 批次查詢
for IP in 8.8.8.8 1.1.1.1 168.95.1.1; do
INFO=$(curl -s "https://ipinfo.im/api/?ip=$IP")
echo "$IP → $(echo $INFO | jq -r '.country') | $(echo $INFO | jq -r '.org')"
sleep 0.1
done
8. 腳本中賦值
MY_IP=$(curl -s https://ipinfo.im/api/ip)
echo "公網 IP:$MY_IP"
9. 從檔案批次查詢
while IFS= read -r IP; do
curl -s "https://ipinfo.im/api/?ip=$IP" | jq -r '[.ip, .country, .city] | @tsv'
done < ip_list.txt
10. 輸出 CSV
echo "ip,country,org" > result.csv
for IP in 8.8.8.8 1.1.1.1; do
curl -s "https://ipinfo.im/api/?ip=$IP" | jq -r '[.ip, .country, .org] | @csv' >> result.csv
done
在線體驗 → ipinfo.im