當連接到 Internet 時,每個服務器都會分配一個公共 IP 地址。 該地址可以直接分配給用於向服務器發送信號或流量的路由器。
本文展示瞭如何使用開放 API 確定遠程 Linux 系統的 IP 地址和地理位置,以及如何使用 bash 腳本可以通過終端執行。 我們已經在CentOS 8系統上執行了所有的命令和腳本,列舉如下:
在 CentOS 8 上查找 Linux 服務器的地理位置
您需要在系統上運行各種命令來查找服務器的地理位置。 在您的 CentOS 8 系統上以 root 用戶身份登錄並執行以下步驟:
打開終端
通過快捷方式“Ctrl + Alt + t”或單擊“活動”打開終端窗口,然後通過在應用程序搜索欄中鍵入“終端”來啟動終端,如下所示:
安裝 curl 和 jq
要查找 Linux 服務器的 IP 地址和地理位置,您需要安裝 Curl 和 Jq 命令行工具,這些工具將用於使用地理定位 API 處理 JSON 數據。 為此,您將在終端上執行以下命令:
$ sudo 百勝安裝 curl jq
您將按“y”和“Enter’ 這將允許您使用額外的安裝空間。
一段時間後,你會看到 curl 和 jq 已成功安裝在您的系統 CentOS 8 上。
如何找到遠程服務器的公共IP地址?
使用 curl 命令,可以獲取服務器的公網IP地址。 這 curl 命令用於使用終端向以下 URL ipinfo.io 發送 API 請求,如下所示:
$ curl https://ipinfo.io/ip
如何從 API 獲取地理位置數據?
檢索到服務器的 IP 地址後,現在您將向 ipvigilante.com API 發送請求,該請求將獲取地理位置。 為此,請使用以下命令將
$ curl https://ipvigilante.com/
使用 a 獲取地理位置數據 bash 腳本
您可以使用 bash 腳本方法。 要創建腳本,您需要創建一個文本文件,您將在其中粘貼以下腳本:
curl -s https://ipvigilante.com/$(curl -s https://ipinfo.io/ip) | jq ‘.data.latitude, .data.longitude, .data.city_name, .data.country_name’
現在,使用名稱“getipgeoloc.sh”保存上述腳本文件。 您還可以根據需要使用所需的名稱進行保存。 再次,移動到終端窗口並鍵入命令以創建一個可執行文件,如下所示:
$ chmod +x getipgeoloc.sh
現在是時候使用以下命令運行上述腳本文件以顯示 Linux 服務器的 IP 地理位置:
$ ./getipgeoloc.sh
執行上述腳本後,城市、國家名稱將與經緯度坐標一起顯示。
您可以運行上述腳本,而無需將其保存在可執行腳本文件中。 因此,您將在終端上鍵入以下命令:
$ curl -s https://ipvigilante.com/$(curl -s https://ipinfo.io/ip) | jq ‘.data.latitude, .data.longitude, .data.city_name, .data.country_name’
您將看到終端上將顯示您所在地理位置的大致坐標,如下所示:
結論
在本文中,您探索瞭如何查找公共 IP 遠程 Linux 服務器的地理位置。 此外,您還學習瞭如何安裝和使用 curl,您的 CentOS 8 上的 jq 工具,如何使用這些工具來查找您的遠程服務器的地理位置。 如有任何疑問,請在評論框中發表評論。