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 に答える