如何在vb.net中获取IP地址.我使用下面的代码来获取本地IP地址,但它没有声明显示dns.任何人都能告诉我守则中的Dns是什么
VB代码
Imports System.Environment
Imports System.Net
Public Class Tester
Public Shared Sub Main
Dim hostname As String = Dns.GetHostName()
Dim ipaddress As String = CType(Dns.GetHostByName(hostname).AddressList.GetValue(0), IPAddr
ess).ToString
Console.WriteLine("Computer Name: " & hostname & " IP Address: " & ipaddress)
End Sub
End Class
Run Code Online (Sandbox Code Playgroud)
因为我觉得,问题(在标题中)还没有完全回答......
Dim hostName = System.Net.Dns.GetHostName()
For Each hostAdr In System.Net.Dns.GetHostEntry(hostName).AddressList()
' If you just want to write every IP
Console.WriteLine("Name: " & hostName & " IP Address: " & hostAdr.ToString()
' If you want to look if the device is member of a specific network
If hostAdr.ToString().StartsWith("192.168.1.") Then DoSomething() : Exit For
' I think you get the idea ^^
' ...
Next
Run Code Online (Sandbox Code Playgroud)
...显然这不完全是 OP 所要求的,但仅从标题和谷歌链接来看,这应该可以回答来这里的人正在寻找的内容。
顺便说一句,GetHostByName()似乎已被弃用,GetHostEntry()就像这样以相同的方式工作,而不会发出警告。
Dns是命名空间中的一个类System.Net,它提供有关“域名系统”的功能(因此名称Dns) - 请参阅http://msdn.microsoft.com/en-us/library/system.net.dns.gethostname.aspx