vb.net - 用 VB.NET 获取 "real"IP 地址?

标签 vb.net ip

我正在寻找一个功能,它将给我我的真实 IP,而不是我的本地 IP。我目前拥有的功能,返回网络和共享中心的IP,即192.168.2.100
但是如果我去 whatismyip,那么它会给出我的真实 IP。

我怎么能用 VB.NET 得到这个?
谢谢

最佳答案

结合上面的答案”
创建一个 php 文件并将其粘贴到其中:

<?php
echo $_SERVER['REMOTE_ADDR'];
?>

将其保存为 curip.php 并将其上传到您的服务器。

在您的 VB.net 项目中创建一个模块。
在最顶部声明​​导入部分
Imports System.Net
Imports System.IO

并创建您的功能:
    Public Function GetIP() As String

    Dim uri_val As New Uri("http://yourdomain.com/curip.php")
    Dim request As HttpWebRequest = HttpWebRequest.Create(uri_val)

    request.Method = WebRequestMethods.Http.Get

    Dim response As HttpWebResponse = request.GetResponse()
    Dim reader As New StreamReader(response.GetResponseStream())
    Dim myIP As String = reader.ReadToEnd()

    response.Close()

    Return myIP
End Function

现在您可以在代码中的任何位置发出
Dim myIP = GetIP()

随心所欲地使用那里的值(value)。

关于vb.net - 用 VB.NET 获取 "real"IP 地址?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1242484/

相关文章:

sockets - 有一个多ip接口(interface)。如何选择其中一个来建立传出连接?

PHP IP 过滤

vb.net - IsNot Nothing 没有失败

.net - Office 2003 互操作问题,未找到接口(interface)、方法

javascript - google map API 在 vb.net 中的网络浏览器中的 html 中

vb.net - If 语句中的内存效率

sql-server - 如何将具有现有键的 DataTable 插入 SQL Server 表

networking - TCP/IP 建立连接/什么建立连接

C# 屏蔽文本框

linux - 从通过WiFi连接到同一路由器的ESP32查找通过LAN连接到路由器的设备的IP地址