Considérez une liste d'adresses IP telle que fournie par l'en-tête HTTP X-Forwarded-For :
10.0.0.142, 192.168.0.10, 212.43.234.12, 54.23.66.43
J'aimerais savoir quelle est la première adresse accessible au public de cette liste. Je peux les regarder assez facilement, mais comment puis-je savoir lesquels sont accessibles au public? Il me semble (mon œil non averti) qu’il 10.0.0.142
s’agit d’un poste de travail, d’ 192.168.0.10
un proxy interne et d’ 212.43.234.12
une adresse accessible au public qui est transmise via le proxy à 54.23.66.43
. Est-il possible de calculer cela dans le code?
Ma première intuition est que les adresses qui commencent par 10.
ou 192.
ne sont pas accessibles publiquement, mais http://simplesniff.com révèle que mon adresse IP personnelle est 192.117.111.61
. Existe-t-il une formule permettant de déterminer quelles adresses sont publiques et quelles adresses sont réservées privées? Notez que même essayer d’envoyer une requête ping au serveur en question risque de ne pas aider car certains serveurs ne répondent pas à la requête ping et qu’il peut également y avoir une adresse sur mon réseau local qui correspond également à l’adresse interne.