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'
8 mars 2013 à 12:47
6 août 2006 à 23:28
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
6 août 2006 à 22:58
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.
20 nov. 2003 à 18:44
13 oct. 2003 à 17:26
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.