获取VB.Net中没有DNS条目的远程客户端的IP地址

获取VB.Net中没有DNS条目的远程客户端的IP地址,vb.net,dns,ip-address,remote-client,Vb.net,Dns,Ip Address,Remote Client,我有一个Windows窗体应用程序在终端服务器上运行。我需要确定每个客户机的IP地址 我找到了一种方法来检索具有DNS条目的计算机的IP地址(下面的示例),但我的一些瘦客户端是使用静态IP设置的,没有DNS名称。有没有办法在没有DNS名称的情况下确定远程客户端的IP地址 Dim clientName As String = My.Computer.Network.ClientName Dim IPHost As Net.IPHostEntry = Net.Dns.Resolve(clientN

我有一个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()

要获取主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

此代码返回服务器的IP地址。我需要远程客户端的IP地址。你会怎么做呢?你能查询它的MAC地址吗?