Connaître son ip en deux lignes

Soyez le premier à donner votre avis sur cette source.

Snippet vu 11 945 fois - Téléchargée 36 fois

Contenu du snippet

Heu ... simplement...

Source / Exemple :


Dim h As System.Net.IPHostEntry = System.Net.Dns.GetHostByName(System.Net.Dns.GetHostName)
strMonIp = CType(h.AddressList.GetValue(0), System.Net.IPAddress).ToString

Conclusion :


Votre IP est dans la variable 'strMonIp'

A voir également

Ajouter un commentaire

Commentaires

pickatshou
Messages postés
4
Date d'inscription
vendredi 6 juin 2008
Statut
Membre
Dernière intervention
16 novembre 2012
-
Le code de bizmoute Marche à merveille.
bizmoute
Messages postés
29
Date d'inscription
vendredi 21 mars 2003
Statut
Membre
Dernière intervention
21 novembre 2008
-
Source trouvée sur le web (http://www.experts-exchange.com/Web/Q_20997692.html)
Merci à _Millsy
Testée et fonctionne avec .NET 2.0

Permet de savoir son adresse IP publique
Reste plus qu'à mettre ca dans un joli thread

Appellez get_ip() pour avoir le résultat

[vbnet]
'Takes in website HTML, looks for a valid IP address (if a website is put in the list that displays
'some other IP address first, it WILL NOT know the difference)
Private Function get_ip() As String
Dim url As String
Try
'This is the responce from another function
url = GetSource()
Catch ex As Exception
MsgBox("There was a problem getting IP address, check URL list file, or your connection")
Return ""
End Try

'Regular expression to check for valid IP
Dim r As New System.Text.RegularExpressions.Regex("\b(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\b")
Dim m As System.Text.RegularExpressions.Match = r.Match(url)
Dim ma As System.Text.RegularExpressions.Match
'Extracts just the matching string
ma = r.Match(url)

Return ma.Value.ToString
End Function

Private Function GetSource() As String
'This just downloads the contents of a webpage. I have an array of the websites that I load in from an XML file, you can make your own list
'The previous code will work on the ones already posted above.
Dim HtmlCode As String
Dim list As New WebClient
Dim temp As Byte()
temp = list.DownloadData("http://checkip.dyndns.org/")
HtmlCode = System.Text.Encoding.ASCII.GetString(temp)
Return HtmlCode
End Function
/vbnet
bizmoute
Messages postés
29
Date d'inscription
vendredi 21 mars 2003
Statut
Membre
Dernière intervention
21 novembre 2008
-
strMonIp = System.Net.Dns.GetHostEntry(System.Net.Dns.GetHostName).AddressList(0).ToString

1 ligne?

mais si tu es sur un "router" (comme IOULOS), je ne suis pas sur que le résultat va te plaire...
à moins d'initialiser une connection externe au réseau local, je ne crois pas qu'il soit possible de déterminer l'adresse do coté WAN car c'est le router qui détient cette information.

Réponse trouvé ici pour toi IOULOS :
http://www.experts-exchange.com/Web/Q_20997692.html
Comment from ChristianRocher
Date: 05/21/2004 08:18AM PDT
Comment


You can't get the public IP address of your router because you are not in the good side because only another computer out of your lan can see the router IP Address. There is two common solutions :

1/ By Program : Use a site lik http://www.whatismyip.com/ (ther are several sites like this one) to get an html file and parse it with a regular expression parser to get the IP Address

2/ By Program : if you can get the status page of your router, then get this html file and parse it with a regular expression parser to get the IP Address


Et si tu ne t'y retrouve pas trop en anglais, en bref ca dit que la solution est logicielle... Exemple : utiliser une page comme http://www.whatismyip.com et "parser" le contenu recu afin de ne récupérer que l'adresse. ou encore accéder à la page html de configuration de ton router par programmation.
ronanry
Messages postés
191
Date d'inscription
lundi 25 novembre 2002
Statut
Membre
Dernière intervention
22 décembre 2009
-
sauf erreur tu n'a pas le type wan partout.....en particulier en 56Ko....enfin je pense;......
cs_ioulos
Messages postés
1
Date d'inscription
jeudi 9 janvier 2003
Statut
Membre
Dernière intervention
13 octobre 2003
-
Oui ca marche sauf que c'est l'ip LOCAL (puisque j'ai un réseaux chez moi ) ,et moi j'aimerai avoir l'ip INTERNET.
Donc je pense qu'il faudrait acceder aux informations des cartes réseaux pour connaitre leurs ip et ainsi selectionné celui qui est du type WAN.
Non?
Je pense que c'est avec l'espace de nom "system.management" qu'on peut faire çà!

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.