Comment retrouver façilement l'adresse ip publique de votre pc v2

Soyez le premier à donner votre avis sur cette source.

Snippet vu 19 613 fois - Téléchargée 40 fois

Contenu du snippet

Si vous voulez récupérer l'adresse publique de votre PC pour par exemple rediriger automatiquement une page de votre domaine WWW.VOTRENOM.EXT vers votre machine.

Source / Exemple :


Private Function getClientIP() As String
        ' Return Public IP Adresse from Local Machine
        Dim IpAddress As String
        Dim Service As String
        Dim query As New System.Management.ManagementObjectSearcher("SELECT * FROM Win32_NetworkAdapterConfiguration")
        Dim queryCollection As System.Management.ManagementObjectCollection = query.Get()
        Dim mo As System.Management.ManagementObject
        For Each mo In queryCollection
            If mo("IpEnabled") Then
                IpAddress = mo("IpAddress")(0)
                Service = mo("ServiceName")
                ' Test si il sagit du service WAN
                If UCase(Service) = "NDISWAN" Then
                    Return IpAddress
                End If
                'If IpAddress <> "" And Left(IpAddress, 3) <> "192" And Left(IpAddress, 3) <> "127" Then
                '    Return IpAddress
                'End If
            End If
        Next mo
        Return ""
    End Function

Conclusion :


J'ai modifier la source pour quelle tienne compte du nom de service ServiceName de Win32_NetworkAdapterConfiguration.

Si il trouve une connexion réseau avec comme nom de service "NDisWan" il prend l'adresse associée qu'il considère comme l'adresse publique du PC.

Ca fonctionne bien chez moi, mais si vous pouvez tester chez vous et me faire un feedBack.
Merci.

A voir également

Ajouter un commentaire

Commentaires

Messages postés
1447
Date d'inscription
jeudi 2 novembre 2000
Statut
Membre
Dernière intervention
23 septembre 2007
1
System.Management n'existe pas !
Messages postés
564
Date d'inscription
jeudi 21 février 2002
Statut
Membre
Dernière intervention
7 novembre 2008

et pour recup ladresse MAC de chaque carte reseau via vb.net 2002 svp ?!
impossible de trouver qqc autrement que via le management ://// ou des APIs
Messages postés
6
Date d'inscription
mercredi 20 mars 2002
Statut
Membre
Dernière intervention
30 mars 2011

Y'a plus simple :
Dim h As System.Net.IPHostEntry = System.Net.Dns.GetHostByName(System.Net.Dns.GetHostName)
strMonIp = CType(h.AddressList.GetValue(0), System.Net.IPAddress).ToString

Amicalement, softeur.
Messages postés
1
Date d'inscription
vendredi 24 janvier 2003
Statut
Membre
Dernière intervention
5 mars 2003

Cela fonctionne très bien pour moi, et je l'ai essayé sur plusieurs PCs avec des moyens de connexion différents et ca a fonctionné impec. Maintenant je cherche un moyen pour attraper l'adresse IP d'un routeur soft et/ou hardware sans passer par le querying d'un site web.
Messages postés
78
Date d'inscription
dimanche 21 avril 2002
Statut
Membre
Dernière intervention
7 juillet 2003

Moi je note que l'IP publique externe n'est pas disponible à partir d'un client d'un partage de connexion sous XP au moins ... Comment on chope l'IP du routeur ???
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.