Địa chỉ IP là gì? Hướng dẫn nền tảng và chọn công cụ tra cứu
Hiểu IPv4, IPv6, địa chỉ riêng và công cộng, cấp phát tĩnh và động cùng NAT; sau đó chọn PowerShell, Python hoặc curl cho từng loại tra cứu.
Tác giảYiyao
Địa chỉ IP là gì?
Địa chỉ IP là mã định danh ở tầng mạng, giúp chuyển gói tin đến đúng giao diện hoặc mạng đích. Nó không phải là bằng chứng đầy đủ về một người, thiết bị hay vị trí vật lý.
IPv4 và IPv6
IPv4 dùng 32 bit và thường được viết thành bốn octet thập phân, ví dụ 192.0.2.10. IPv6 dùng 128 bit và thường viết bằng các nhóm thập lục phân, ví dụ 2001:db8::10. Các ví dụ trong bài thuộc dải dành cho tài liệu, không phải địa chỉ trực tiếp để kiểm tra.
Một địa chỉ gồm phần mạng và phần giao diện hoặc máy chủ. Ranh giới được xác định bằng độ dài tiền tố như /24 cho IPv4 hoặc /64 cho IPv6. Tiền tố cho biết cấu trúc chính xác hơn việc xem địa chỉ như những con số rời rạc.
Riêng tư, công cộng, tĩnh và động
Các dải IPv4 riêng như 10.0.0.0/8, 172.16.0.0/12 và 192.168.0.0/16 dành cho mạng nội bộ và thường không được định tuyến trực tiếp trên Internet công cộng. IPv6 có các dải dùng trong phạm vi cục bộ, trong đó có unique local fc00::/7. Khả năng truy cập công cộng còn phụ thuộc vào định tuyến, tường lửa và môi trường mạng.
Địa chỉ tĩnh được giữ ổn định cho dịch vụ hoặc giao diện. Địa chỉ động do DHCP hoặc nhà mạng cấp và có thể thay đổi. Tĩnh hay động mô tả cách cấp phát, không tự nói lên địa chỉ là riêng tư hay công cộng.
NAT thay đổi điều gì?
NAT cho phép nhiều máy nội bộ dùng chung một hoặc vài địa chỉ IPv4 công cộng. Website thường thấy địa chỉ thoát công cộng của NAT, proxy hoặc VPN, trong khi ứng dụng cục bộ có thể thấy địa chỉ riêng. Vì vậy hai kết quả này có thể khác nhau.
Chọn đúng loại tra cứu
Có ba câu hỏi khác nhau: máy này đang cấu hình những địa chỉ nào; dịch vụ bên ngoài thấy địa chỉ thoát công cộng nào; một địa chỉ được cung cấp thuộc mạng, tiền tố hoặc phân loại nào. Mỗi câu hỏi cần công cụ riêng và nên ghi lại thời điểm cùng đường đi mạng khi cần tái hiện.
1. Xem địa chỉ đã cấu hình trên máy
Get-NetIPConfiguration
Get-NetIPAddress -AddressFamily IPv4
Get-NetIPAddress -AddressFamily IPv6
import socket
for item in socket.getaddrinfo(socket.gethostname(), None):
address = item[4][0]
print(address)
Các lệnh này hiển thị thông tin giao diện cục bộ, có thể gồm loopback, địa chỉ riêng, bộ điều hợp ảo hoặc link-local. Chúng không chứng minh dịch vụ Internet nhìn thấy địa chỉ nào.
2. Xem IP thoát ra Internet
curl.exe https://api.ipify.org
curl.exe https://api64.ipify.org
from urllib.request import urlopen
with urlopen("https://api.ipify.org", timeout=10) as response:
print(response.read().decode("ascii").strip())
Kết quả là giá trị dịch vụ nhìn thấy tại thời điểm yêu cầu. VPN, proxy, mạng di động, cân bằng tải hoặc chính sách nhà mạng có thể làm kết quả thay đổi. Không nên coi nó là vị trí địa lý chắc chắn hay danh tính cố định.
3. Kiểm tra thuộc tính hoặc thông tin đăng ký
$ip = "203.0.113.10"
Resolve-DnsName -Name $ip -ErrorAction SilentlyContinue
Test-Connection -ComputerName $ip -Count 1 -Quiet
import ipaddress
value = ipaddress.ip_address("203.0.113.10")
print({
"version": value.version,
"private": value.is_private,
"global": value.is_global,
"loopback": value.is_loopback,
"link_local": value.is_link_local,
})
curl "https://rdap.org/ip/203.0.113.10"
Với địa chỉ do người dùng cung cấp, hãy kiểm tra cú pháp IPv4 hoặc IPv6 trước, rồi dùng cơ quan đăng ký hoặc dịch vụ RDAP có thẩm quyền để xem dữ liệu phân bổ. RDAP và reverse DNS đưa ra các loại bằng chứng khác nhau, không nên dùng để suy ra chính xác một cá nhân hay vị trí.
Cách phân luồng thực tế
Dùng PowerShell hoặc Python cục bộ khi câu hỏi liên quan đến giao diện Windows. Dùng curl hoặc Python khi cần biết đường ra công cộng. Dùng ipaddress và RDAP khi cần kiểm tra cú pháp, tiền tố hoặc dữ liệu đăng ký. Hãy lưu đầu vào, thời gian, nguồn và mã trạng thái để có thể kiểm tra lại.
Diễn giải có trách nhiệm
Địa chỉ IP là một dạng bằng chứng mạng, không phải bằng chứng nhận dạng. Mạng dùng chung, NAT, CGNAT, proxy, VPN, hạ tầng đám mây và việc tái phân bổ đều tạo ra sự mơ hồ. Hãy tuân thủ điều khoản dịch vụ và pháp luật, không dò quét hệ thống khi chưa được phép và không công bố địa chỉ sống như vị trí chính xác của ai đó.
Nguyên tắc chính là xác định câu hỏi trước khi chọn công cụ. Cấu hình cục bộ, IP thoát công cộng và thông tin đăng ký là ba quan sát khác nhau.
