0

我有一个在终端服务器上运行的 Windows 窗体应用程序。我需要确定每台客户端机器的 IP 地址。

我找到了一种方法来检索具有 DNS 条目的计算机的 IP 地址(下面的示例),但是我的几个瘦客户端设置为静态 IP 并且没有 DNS 名称。有没有办法在没有 DNS 名称的情况下确定远程客户端的 IP 地址?

Dim clientName As String = My.Computer.Network.ClientName 
Dim IPHost As Net.IPHostEntry = Net.Dns.Resolve(clientName & "domain.com") 
Dim addresses As Net.IPAddress() = IPHost.AddressList
fullIP = addresses(0).ToString()
4

1 回答 1

1

要获取主 IP 地址,您可以使用:

System.Net.Dns.GetHostEntry("").AddressList(0).ToString

这可能会返回 IP6 地址,在这种情况下,您可以尝试使用以下方法查找 IP4:

Dim ipentry As System.Net.IPHostEntry = System.Net.Dns.GetHostEntry("")

For i As Integer = 0 To ipentry.AddressList.Count - 1
    MsgBox(System.Net.Dns.GetHostEntry("").AddressList(i).ToString)
Next
于 2008-11-11T19:27:24.000 回答