Last Updated on 2024-08-04 by Clay
本篇文章紀錄在 Linux 系統中,我們該如何在終端機中確認自己的 IP 以及 IP 所在的地區,雖然直接上 myip 等網頁服務可以直接查看,但並不一定每台裝置都有裝圖形化界面;再者,若是使用到 curl
指令的部份,Windows 和 Mac OS 也都可以使用。
以下,我們先闡述該如何拿到 IP、再來紀錄該如何拿到所在的地區。
取得 IP 的方法
ip 指令
首先最 Naive 的方法是從 ip
指令下去找:
ip -4 addr show | grep -oP '(?<=inet\s)\d+(.\d+){3}' | grep -v '127.0.0.1'
Output:
192.168.212.152
172.18.0.1
172.19.0.1
172.17.0.1
查找外部網站
curl "ifconfig.me"
或是
curl "icanhazip.com"
取得位置的方法
ipinfo.io
curl "ipinfo.io"
Output:
{
"ip": "203.0.113.1",
"hostname": "example.com",
"city": "Los Angeles",
"region": "California",
"country": "US",
"loc": "34.0522,-118.2437",
"org": "AS12345 Example ISP",
"postal": "90001",
"timezone": "America/Los_Angeles"
}
ip-api.com
curl "http://ip-api.com/json/"
Output:
{
"status": "success",
"country": "United States",
"countryCode": "US",
"region": "CA",
"regionName": "California",
"city": "Mountain View",
"zip": "94043",
"lat": 37.4192,
"lon": -122.0574,
"timezone": "America/Los_Angeles",
"isp": "Google LLC",
"org": "Google LLC",
"as": "AS15169 Google LLC",
"query": "8.8.8.8"
}
geoiplookup 工具
這個工具可以查詢 IP 位置,雖然有些 WiFi 的 IP 無法解析,但跟上述兩種方式不同的地方在於可以解析別人的 IP。首先需要安裝該項工具:
sudo apt install geoip-bin
接著查詢從本地裝置上找到的 IP(可能會找到很多項):
ip -4 addr show | grep -oP '(?<=inet\s)\d+(.\d+){3}' | grep -v '127.0.0.1'
Output:
192.168.212.152
172.18.0.1
172.19.0.1
172.17.0.1
選擇最像公開的 IP 進行查詢(但我下面的範例並不是):
geoiplookup 192.168.212.152