Obtenir la “vraie” adresse IP avec VB.NET?
Je suis à la recherche d'une fonction qui va me donner mon IP réelle, pas mon IP locale. la fonction que j'ai actuellement, les rendements de la propriété intellectuelle dans le centre réseau et partage, qui est 192.168.2.100
Mais si je vais à whatismyip, cela donne mon IP réelle.
Comment pourrais-je obtenir ce à l'aide de VB.NET?
grâce
OriginalL'auteur jmasterx | 2009-08-07
Vous devez vous connecter pour publier un commentaire.
Il n'y a aucun moyen de le faire juste avec VB.Net. Vous avez besoin de trouver un site qui va vous dire (peut-être un de vos propres?) ou vous avez besoin de faire l'interface avec votre routeur.
Si vous avez un site web qui est capable d'exécuter n'importe quelle sorte de page web, des applications, vous pouvez créer une page web qui simplement les sorties du client (comme dans l'ordinateur de la connexion à la page) adresse IP.
J'ai un de mes propre:
http://etoys.netortech.com/devpages/ip.asp
Bien que je ne peux pas garantir qu'il sera toujours là, qui est pourquoi vous devriez faire votre propre.
À partir de là, c'est une simple question de l'utilisation d'un HttpWebRequest pour télécharger le contenu de la page.
OriginalL'auteur Spencer Ruport
De Combiner les réponses ci-dessus"
Créer un fichier php et collez ceci:
de l'enregistrer comme curip.php et de le transférer sur votre serveur.
Dans votre VB.net projet de création d'un module.
Déclarer les importations de l'article tout en haut
Et créer votre fonction:
Maintenant n'importe où dans votre code, vous pouvez émettre des
que l'utilisation de la valeur à partir de là que vous le souhaitez.
C'est un bon point. Toutefois, la seule façon de le faire que je pense depuis le vb.net app est d'appeler le fichier php est l'utilisateur devra utiliser un serveur proxy. Mais oui, le cas particulier où il est utilisé doit être pris en compte.
OriginalL'auteur shaiss
Je suis probablement juste d'être grognon ici, mais je ne peux pas aider mais penser que votre "véritable" adresse IP est celle retournée par la commande ifconfig (ipconfig) sur votre machine locale. 192.168.2.100 dans votre cas. Quel que soit le NAT de la traduction ou de tunneling qui se passe entre vous et le point de terminaison distant ne compte pas, et si elle le fait, il ya une bonne chance que vous êtes en train de faire quelque chose qui pourrait faire votre demande de travail dans votre environnement actuel.
OriginalL'auteur user47559
Je voudrais utiliser et de publier un site qui vous retourne votre adresse IP publique en réponse.
Les facteurs clés sont ici:
En gardant à l'esprit ces deux facteurs que je recommande cette URL: http://wtfismyip.com/text Il a l'avantage de renvoyer seulement l'adresse IP sous forme de texte. Il existe également des versions pour:
De choisir le format qui est plus facile à analyser.
OriginalL'auteur andr
Vous N'avez PAS besoin d'utiliser un fichier php, il suffit d'utiliser un site qui affiche votre ip comme ip-adress.com et ensuite obtenir l'adresse ip à partir de là avec webrequest et ensuite utiliser GetBetween fonction.
amusez-vous 🙂
OriginalL'auteur AX5
À l'aide de PHP, il peut être fait simplement:
"Shaiss" partagé le code PHP, c'est le VB.net code:
C'est juste un exemple avec:
1 - Forme
1 - zone de texte
1 - Bouton(s)
Espérons que cette aide!
OriginalL'auteur ThatOneGuy
J'ai eu la même question, et cherché un peu, souvenez-vous seulement que je peux le faire avec WebBrowser!
Cette sous-routine seulement est déclenché lorsque vous accédez à une page web à l'aide de
WebBrowser.Navigate()
.La
gotIP
booléen n'existe que parce que j'en ai une autre sous-routine qui s'active sur tout document d'achèvement. Je ne veux pas qu'il soit déclenché plus d'une fois. Si vous n'êtes pas familier avecWebBrowser
, vous assurez-vous que la page web est assez chargé avecReadyState
. Si vous ne le faites pas, vous obtiendrez une exception (parce que le contenu n'est pas chargé).Vous pouvez utiliser n'importe quel site que vous aimez. Ce site est bien car il met votre adresse IP dans le titre. C'est bien parce que il va y avoir un
title
tag. Dans le cas où vous ne pouvez pas utiliser ce site (ou celui qui a une étiquette unique avec votre contenu à l'intérieur), l'utilisation d'unFor Each
boucle.OriginalL'auteur Tyler Montney