Récupérer l'ip par php

Soyez le premier à donner votre avis sur cette source.

Vue 10 782 fois - Téléchargée 489 fois

Description

Programme qui permet de récupérer l'adresse ip même derrière un proxy via le controle Inet. (retournera l'ip locale si utilisé en local par exemple avec un server apache)

Source / Exemple :


'----------------------------  Le code VB -------------------------------
Dim URL As String
Dim ipreelle As String

Private Sub Command1_Click()

URL = "http://127.0.0.1/ip.php" ' --> page que j'ai faite et qui est dans le zip. Normalement la variable utilisée renvoie l'ip même si la personne est derrière un proxy.
ipreelle = Inet1.OpenURL(URL)
Do While Inet1.StillExecuting
    DoEvents
Loop
Inet1.Execute , "CLOSE"

If ipreelle <> "" Then
    Label1.Caption = "Connecté"
    Label2.Caption = ("IP : " & ipreelle)
Else
    Label2.Caption = "Déconnecté"
End If

End Sub

'-------------------  La page php à mettre sur un server -----------------------
<?PHP

/*  Coded by ElastycmaN  */

$vraieip = getenv("HTTP_X_FORWARDED_FOR");

if ($vraieip=="") 
{$vraieip = $REMOTE_ADDR;
}
echo $vraieip;

?>

Conclusion :


La variable d'environnement HTTP_X_FORWARDED_FOR est utilisée par certains proxys pour indiquer l'adresse de la machine cliente pour laquelle ils effectuent la requete HTTP. Cette technique ne marche donc que si la personne est derrière un proxy d'ou l'utilisation de $REMOTE_ADDR afin de quand meme avoir un retour si la personne n'est pas derrière un proxy.
Il est bien précisé que HTTP_X_FORWARDED_FOR n'est pas utilisé par tout les proxys... cela ne marche donc pas à tout les coups mais presque!

..::ElastycmaN::..

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

Messages postés
24
Date d'inscription
jeudi 27 avril 2006
Statut
Membre
Dernière intervention
23 juin 2007
1
Alors la vraiment Excellent c'est exactement se que je rechercher. Bravo


Merci
Messages postés
76
Date d'inscription
mardi 6 avril 2004
Statut
Membre
Dernière intervention
22 décembre 2012

Exellent, merci ElastycmaN ca va m'etre vraiment utile
Messages postés
176
Date d'inscription
vendredi 29 octobre 2004
Statut
Membre
Dernière intervention
7 mars 2005

non, effectivement la méthode que tu t'utilises est la meilleure, mais si un proxy est configuré pour ne laisser passer aucune info ou les fausser (tu peux même faire croire que t'utilises IE à la place de Mozilla par exemple) il n'y aucun moyen pour le savoir !
D'un autre côté, souvent derrière un proxy c'est un réseau avec des adresses privées, non routables, et donc souvent inexploitables (pour une connexion winsock par ex)
@+
Messages postés
40
Date d'inscription
mardi 28 janvier 2003
Statut
Membre
Dernière intervention
3 octobre 2006

"Il est bien précisé que HTTP_X_FORWARDED_FOR n'est pas utilisé par tout les proxys" --> je l'ai précisé, cela ne marche pas a tous les coups mais je vois pas comment on pourrait faire plus sur. Si la personne est derriere un proxy, la seule alternative c'est HTTP_X_FORWARDED_FOR nan???
Mais a la base ce programme est en réponse d'un MP de jb212121 et c'était surtout pr téster si l'on est connecté...
Si vous connaissez un autre moyen en PHP de récupérer l'ip même derriere un proxy, dites le moi!
@+,
..::ElastycmaN::..
Messages postés
176
Date d'inscription
vendredi 29 octobre 2004
Statut
Membre
Dernière intervention
7 mars 2005

ah oui, j'ai mis 7/10, ça peut être utile si on connaît pas et vu que ça marche parfois...
Afficher les 7 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.