[VB.Net] Comment capturer son IP internet ?
Le
Stéphane
Bonjour,
Je cherche à obtenir mon IP internet.
La connexion internet peut être obtenue directement par modem 56k ou ADSL,
ou via 1 connexion partagée par 1 autre PC en réseau, ou via 1 proxy, ou via
1 modem routeur ou via 1 passerelle internet
Actuellement, j'utilise une fonction trouvée sur internet qui la récupère
sur le site whatismyip.com.
Elle fonctionne mais je trouve que c'est plus de la bidouille qu'1 véritable
fonction.
Il me semble qu'il faille utiliser les classes system.net.dns et
iphostentry, mais il me manque quelque chose, c'est sur
Merci d'avance pour votre aide,
Stéphane.
Je cherche à obtenir mon IP internet.
La connexion internet peut être obtenue directement par modem 56k ou ADSL,
ou via 1 connexion partagée par 1 autre PC en réseau, ou via 1 proxy, ou via
1 modem routeur ou via 1 passerelle internet
Actuellement, j'utilise une fonction trouvée sur internet qui la récupère
sur le site whatismyip.com.
Elle fonctionne mais je trouve que c'est plus de la bidouille qu'1 véritable
fonction.
Il me semble qu'il faille utiliser les classes system.net.dns et
iphostentry, mais il me manque quelque chose, c'est sur
Merci d'avance pour votre aide,
Stéphane.

Poser une question


Le truc, c'est que ton addresse publique n'est visible que de l'exterieur.
Tu peux parfaitement avoir 50 serveurs proxy entre toi et l'exterieur qui
relaient ta requete en mettant leur addresse IP. Sur tu interoge le serveur
DNS de ton réseau en lui donnant le nom de ta machine, tu va récupérer
l'addresse IP locale. A ma connaissance, la seule maniere réelement fiable
de récupérer ton addresse IP publique est de faire ce que tu fait déja:
demander a un serveur a l'exterieur de te dire sous quelle addresse IP il
te voit.
Par contre, si la connexion est derrière 1 modem routeur qui fait donc
office de passerelle internet,
sachant que l'on sait que le routeur connait l'adresse IP internet,
et que l'on connait l'adresse ip locale du routeur,
est-ce qu'il y a 1 moyen d'obtenir l'adresse ip internet ?
Stéphane.
"Mehdi" 1xoda1bh1u4rh$.b9svn27rt5oo$
récupère ton IP dans la page Web affichée avec une expression régulière du
type "([0-9]+.[0-9]+.[0-9]+.[0-9]+)".
"Stéphane" a écrit :
Non. Enfin, en bidouillant, tout est possible bien sur. Certains routeurs
(les modem/routeurs wifi ADSL par exemple) ont une interface web ou autre
qui permet a l'utilisateur de les configurer. Tu pourrai toujours te
connecter a leur interface de configuration et récupérer leur addresse IP
la dedans (souvent cachée dans les logs). Mais cette solution ne
fonctionnera qu'au cas par cas bien sur. Une autre solution serai de
connaitre le nom du routeur puis de faire une requete DNS pour trouver son
addresse IP. Probleme: si le routeur est un modem/routeur ADSL, leur nom et
IP sont en général attribués automatiquement par l'ISP. Pour trouver leur
nom, il faudrai d'abord faire un reverse lookup. Et pour ca, il te faudrai
connaitre leur addresse IP publique...
Qu'est ce qui te gene vraiment avec la solution que tu utilise actuellement
? Si tu a peur que le site que tu utilise ne change son interface ou ne
soit pas toujours disponible, tu peux toujours avoir une liste de sites web
qui affichent ton addresse IP et les essayer les uns apres les autre dans
ton appli dans le cas ou certains sont indisponibles. Il est fortement
improbable que tous les sites tombent ou décident de changer leur interface
au meme moment.
C'est que je fais, par contre... il existe 1 fonction pour vérifier ca ? :
Je faisais comme ca :
For Each caractère In ligne
If (Asc(caractère) >= Asc("0") And Asc(caractère) <= Asc("9")) Or caractère
= "." Then
ip &= caractère
Else
nombres = ip.Split(".")
If UBound(nombres) = "3" Then
site.Close()
web.Dispose()
Return ip
End If
ip = ""
End If
Next
Stéphane.
"mdes"