Tìm kiếm trang web

Cách tìm vị trí địa lý của máy chủ Linux trong Terminal


Trong bài viết này, chúng tôi sẽ hướng dẫn bạn cách tìm vị trí địa lý địa chỉ IP của hệ thống Linux từ xa bằng cách sử dụng API mở và tập lệnh bash đơn giản từ dòng lệnh.

Trên internet, mỗi máy chủ có một địa chỉ IP công khai, được gán trực tiếp cho máy chủ hoặc thông qua bộ định tuyến gửi lưu lượng mạng đến máy chủ đó.

Địa chỉ IP cung cấp một cách dễ dàng để theo dõi vị trí của máy chủ trên thế giới bằng cách sử dụng hai API hữu ích được cung cấp bởi ipinfo.ioipvigilante.com để nhận được thành phố, tiểu bangquốc gia được kết nối với máy chủ.

Cài đặt Curl và jq

Để có được vị trí địa lý địa chỉ IP của máy chủ, chúng tôi cần cài đặt trình tải xuống dòng lệnh Curl và công cụ dòng lệnh jq để xử lý dữ liệu JSON từ API định vị địa lý.

sudo apt install curl jq		#Ubuntu/Debian
sudo yum install curl jq		#CentOS/RHEL
sudo dnf install curl jq		#Fedora 22+
sudo zypper install curl jq		#openSUSE

Tìm địa chỉ IP công cộng của máy chủ

Để lấy địa chỉ IP công cộng của máy chủ, hãy sử dụng lệnh cuộn tròn sau để thực hiện yêu cầu API tới ipinfo.io trong thiết bị đầu cuối của bạn như được hiển thị.

curl https://ipinfo.io/ip

Nhận dữ liệu vị trí IP từ API

Khi bạn đã có địa chỉ IP công cộng của máy chủ, giờ đây bạn có thể gửi yêu cầu tới API của ipvigilante.com để tìm nạp dữ liệu vị trí địa lý bằng lệnh sau. Đảm bảo thay thế bằng IP công cộng của máy chủ.

curl https://ipvigilante.com/<your ip address>

Đây là dữ liệu chúng tôi nhận được từ lệnh trên.

Tự động gọi API bằng Bash Script

Bây giờ để tự động hóa quy trình API, chúng tôi sẽ tạo một tập lệnh có tên getipgeoloc.sh (bạn có thể đặt tên bất cứ thứ gì bạn muốn) bằng cách sử dụng bất kỳ trình soạn thảo dòng lệnh yêu thích nào của bạn.

vim getipgeoloc.sh

Sau đó sao chép và dán lệnh dài sau vào đó.

curl -s https://ipvigilante.com/$(curl -s https://ipinfo.io/ip) | jq '.data.latitude, .data.longitude, .data.city_name, .data.country_name'

Lưu tệp và làm cho tập lệnh có thể thực thi được bằng lệnh sau.

chmod +x getipgeoloc.sh

Cuối cùng, chạy tập lệnh để lấy vị trí địa lý IP Linux của bạn như trong ảnh chụp màn hình sau.

./getipgeoloc.sh

Tập lệnh trên hiển thị tên thành phốquốc gia cùng với tọa độ vĩ độkinh độ gần đúng.

Ngoài ra, bạn cũng có thể chạy lệnh trên mà không cần lưu nó vào tập lệnh như được hiển thị.

curl -s https://ipvigilante.com/$(curl -s https://ipinfo.io/ip) | jq '.data.latitude, .data.longitude, .data.city_name, .data.country_name'

Bạn cũng có thể muốn đọc những bài viết liên quan sau đây:

  1. 4 cách để tìm địa chỉ IP công cộng của máy chủ trong Linux Terminal
  2. Tìm hiểu tất cả các địa chỉ IP của máy chủ trực tiếp được kết nối trên mạng trong Linux
  3. Tìm 10 địa chỉ IP hàng đầu truy cập máy chủ web Apache của bạn

Bây giờ là vậy đó! Trong bài viết ngắn này, chúng tôi đã chỉ ra cách lấy vị trí địa lý IP Linux của bạn từ thiết bị đầu cuối bằng cách sử dụng lệnh curljq. Chia sẻ suy nghĩ của bạn với chúng tôi hoặc đặt bất kỳ câu hỏi nào thông qua mẫu phản hồi bên dưới.