Dns.GetHostByName Method (String)


The .NET API Reference documentation has a new home. Visit the .NET API Browser on docs.microsoft.com to see the new experience.

Note: This API is now obsolete.

Gets the DNS information for the specified DNS host name.

Namespace:   System.Net
Assembly:  System (in System.dll)

<ObsoleteAttribute("GetHostByName is obsoleted for this type, please use GetHostEntry instead. http://go.microsoft.com/fwlink/?linkid=14202")>
Public Shared Function GetHostByName (
	hostName As String
) As IPHostEntry


Type: System.String

The DNS name of the host.

Return Value

Type: System.Net.IPHostEntry

An IPHostEntry object that contains host information for the address specified in hostName.

Exception Condition

hostName is null.


The length of hostName is greater than 255 characters.


An error is encountered when resolving hostName.

The GetHostByName method queries the Internet DNS server for host information. If you pass an empty string as the host name, this method retrieves the standard host name for the local computer.

For asynchronous access to DNS information, use the BeginGetHostByName and EndGetHostByName methods.

If the Ipv6Element.Enabled property is set to true, the Aliases property of the IPHostEntry instance returned is not populated by this method and will always be empty.


This member emits trace information when you enable network tracing in your application. For more information, see Network Tracing in the .NET Framework.

The following example uses the GetHostByName method to get the DNS information for the specified DNS host name.

Public Sub DisplayHostName(hostName As [String])
        ' Call the GetHostByName method, passing a DNS style host name(for example,
        ' "www.contoso.com") as an argument to obtain an IPHostEntry instance, that 
        ' contains information for the specified host.

        Dim hostInfo As IPHostEntry = Dns.GetHostByName(hostName)
        ' Get the IP address list that resolves to the host names contained in 
        ' the Alias property.
        Dim address As IPAddress() = hostInfo.AddressList
        ' Get the alias names of the the addresses in the IP address list.
        Dim [alias] As [String]() = hostInfo.Aliases

        Console.WriteLine(("Host name : " + hostInfo.HostName))
        Console.WriteLine(ControlChars.Cr + "Aliases : ")
        Dim index As Integer
        For index = 0 To [alias].Length - 1
        Next index
        Console.WriteLine(ControlChars.Cr + "IP address list : ")

        For index = 0 To address.Length - 1
        Next index
    Catch e As SocketException
        Console.WriteLine("SocketException caught!!!")
        Console.WriteLine(("Source : " + e.Source))
        Console.WriteLine(("Message : " + e.Message))
    Catch e As ArgumentNullException
        Console.WriteLine("ArgumentNullException caught!!!")
        Console.WriteLine(("Source : " + e.Source))
        Console.WriteLine(("Message : " + e.Message))
    Catch e As Exception
        Console.WriteLine("Exception caught!!!")
        Console.WriteLine(("Source : " + e.Source))
        Console.WriteLine(("Message : " + e.Message))
    End Try


for accessing DNS information. Associated enumeration: PermissionState.Unrestricted

.NET Framework
Available since 1.1
Return to top