Xem xét danh sách các địa chỉ IP được cung cấp bởi tiêu đề X-Forwarded-For HTTP :
10.0.0.142, 192.168.0.10, 212.43.234.12, 54,23.66,43
Tôi muốn biết đâu là địa chỉ truy cập công khai đầu tiên trong danh sách đó. Tôi có thể xem qua chúng đủ dễ dàng, nhưng làm thế nào tôi có thể biết cái nào có thể truy cập công khai? Dường như với tôi (con mắt chưa được huấn luyện của tôi) 10.0.0.142
là một máy trạm, 192.168.0.10
là một proxy nội bộ và 212.43.234.12
là một địa chỉ có thể truy cập công khai được chuyển tiếp qua proxy tại 54.23.66.43
. Có cách nào để tính toán điều này trong mã?
Trực giác đầu tiên của tôi là các địa chỉ bắt đầu bằng 10.
hoặc 192.
không thể truy cập công khai, nhưng http://simplesniff.com tiết lộ địa chỉ IP nhà của tôi 192.117.111.61
. Có một công thức để xác định địa chỉ nào là công khai và địa chỉ nào là riêng tư không? Lưu ý rằng ngay cả khi cố gắng ping máy chủ được đề cập có thể không giúp ích vì một số máy chủ sẽ không phản hồi với ping và cũng có thể có một địa chỉ trên mạng cục bộ của tôi cũng khớp với địa chỉ nội bộ.