Dns.GetHostEntry 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
호스트 이름 또는 IP 주소를 IPHostEntry 인스턴스로 확인합니다.
오버로드
GetHostEntry(IPAddress) |
IP 주소를 IPHostEntry 인스턴스로 확인합니다. |
GetHostEntry(String) |
호스트 이름 또는 IP 주소를 IPHostEntry 인스턴스로 확인합니다. |
GetHostEntry(String, AddressFamily) |
호스트 이름 또는 IP 주소를 IPHostEntry 인스턴스로 확인합니다. |
GetHostEntry(IPAddress)
- Source:
- Dns.cs
- Source:
- Dns.cs
- Source:
- Dns.cs
IP 주소를 IPHostEntry 인스턴스로 확인합니다.
public:
static System::Net::IPHostEntry ^ GetHostEntry(System::Net::IPAddress ^ address);
public static System.Net.IPHostEntry GetHostEntry (System.Net.IPAddress address);
static member GetHostEntry : System.Net.IPAddress -> System.Net.IPHostEntry
Public Shared Function GetHostEntry (address As IPAddress) As IPHostEntry
매개 변수
- address
- IPAddress
IP 주소.
반환
address
에 지정된 호스트의 주소 정보를 포함하는 IPHostEntry 인스턴스입니다.
예외
address
이(가) null
인 경우
address
을 확인할 때 오류가 발생한 경우
address
가 잘못된 IP 주소인 경우
예제
다음 코드 예제에서는 메서드를 GetHostEntry 사용하여 인스턴스에 대한 IP 주소를 확인합니다 IPHostEntry .
public:
static void DoGetHostEntry(IPAddress^ address)
{
IPHostEntry^ host = Dns::GetHostEntry(address);
Console::WriteLine("GetHostEntry({0}) returns HostName: {1}", address->ToString(), host->HostName);
}
public static void DoGetHostEntry(IPAddress address)
{
IPHostEntry host = Dns.GetHostEntry(address);
Console.WriteLine($"GetHostEntry({address}) returns HostName: {host.HostName}");
}
Public Sub DoGetHostEntry(address As IPAddress)
Dim host as IPHostEntry = Dns.GetHostEntry(address)
Console.WriteLine($"GetHostEntry({address}) returns HostName: {host.HostName}")
End Sub
설명
메서드는 GetHostEntry IP 주소와 연결된 IP 주소 및 별칭에 대해 DNS 서버를 쿼리합니다.
로컬 컴퓨터에 IPv6이 설치되어 있지 않은 경우 IPv6 주소는 메서드의 GetHostEntry 결과에서 필터링됩니다. 따라서 매개 변수에 IPv6 결과만 사용할 수 있는 경우 빈 IPHostEntry 인스턴스를 address
다시 가져올 수 있습니다.
Aliases 반환된 인스턴스의 IPHostEntry 속성은 이 메서드로 채워지지 않으며 항상 비어 있습니다.
참고
이 멤버는 애플리케이션에서 네트워크 추적을 사용 하도록 설정 하면 추적 정보를 내보냅니다. 자세한 내용은 .NET Framework의 네트워크 추적을 참조하세요.
적용 대상
GetHostEntry(String)
- Source:
- Dns.cs
- Source:
- Dns.cs
- Source:
- Dns.cs
호스트 이름 또는 IP 주소를 IPHostEntry 인스턴스로 확인합니다.
public:
static System::Net::IPHostEntry ^ GetHostEntry(System::String ^ hostNameOrAddress);
public static System.Net.IPHostEntry GetHostEntry (string hostNameOrAddress);
static member GetHostEntry : string -> System.Net.IPHostEntry
Public Shared Function GetHostEntry (hostNameOrAddress As String) As IPHostEntry
매개 변수
- hostNameOrAddress
- String
확인할 호스트 이름 또는 IP 주소입니다.
반환
hostNameOrAddress
에 지정된 호스트의 주소 정보를 포함하는 IPHostEntry 인스턴스입니다.
예외
hostNameOrAddress
매개 변수가 null
인 경우
hostNameOrAddress
매개 변수의 길이가 255자를 초과하는 경우
hostNameOrAddress
매개 변수를 확인할 때 오류가 발생한 경우
hostNameOrAddress
매개 변수가 잘못된 IP 주소인 경우
예제
다음 예제에서는 메서드를 GetHostEntry 사용하여 인스턴스에 대한 IP 주소를 확인합니다 IPHostEntry .
public:
static void DoGetHostEntry(String^ hostname)
{
IPHostEntry^ host = Dns::GetHostEntry(hostname);
Console::WriteLine("GetHostEntry({0}) returns:", host->HostName);
for (int i = 0; i < host->AddressList->Length; i++)
{
Console::WriteLine(" {0}", host->AddressList[i]->ToString());
}
}
public static void DoGetHostEntry(string hostname)
{
IPHostEntry host = Dns.GetHostEntry(hostname);
Console.WriteLine($"GetHostEntry({hostname}) returns:");
foreach (IPAddress address in host.AddressList)
{
Console.WriteLine($" {address}");
}
}
Public Sub DoGetHostEntry(hostName As String)
Dim host as IPHostEntry = Dns.GetHostEntry(hostname)
Console.WriteLine($"GetHostEntry({hostname}) returns:")
Dim addresses As IPAddress() = host.AddressList
Dim index As Integer
For index = 0 To addresses.Length - 1
Console.WriteLine($" {addresses(index)}")
Next index
End Sub
설명
메서드는 GetHostEntry DNS 서버에서 호스트 이름 또는 IP 주소와 연결된 IP 주소를 쿼리합니다.
빈 문자열이 인수로 hostNameOrAddress
전달되면 이 메서드는 로컬 호스트의 IPv4 및 IPv6 주소를 반환합니다.
호스트 이름을 찾을 SocketException 수 없는 경우 11001(Windows 소켓 오류 WSAHOST_NOT_FOUND) 값으로 예외가 반환됩니다. DNS 서버가 응답하지 않는 경우 이 예외를 반환할 수 있습니다. 이름이 공식 호스트 이름이나 별칭이 아니거나 쿼리 중인 데이터베이스에서 찾을 수 없는 경우에도 이 예외를 반환할 수 있습니다.
매개 변수에 또는 가 ArgumentException 포함된 경우에도 hostNameOrAddress
예외가 반환됩니다Any.IPv6Any
GetHostEntry 메서드 가정 IP 리터럴 문자열을 전달 하는 경우는 hostNameOrAddress
애플리케이션에서 필요로 하는 매개 변수는 IPHostEntry 속성 집합의 모든 인스턴스를 반환 합니다. 이러한 속성에는 , Aliases및 HostName가 포함됩니다AddressList. 따라서 메서드의 GetHostEntry 구현은 IP 문자열 리터럴이 전달될 때 다음과 같은 동작을 나타냅니다.
메서드는 주소를 구문 분석하려고 합니다. 매개 변수에
hostNameOrAddress
법적 IP 문자열 리터럴이 포함되어 있으면 첫 번째 단계가 성공합니다.IP 문자열 리터럴의 IP 주소를 사용하여 역방향 조회를 시도하여 호스트 이름을 가져오려고 시도합니다. 이 결과는 속성으로 설정됩니다 HostName .
이 역방향 조회의 호스트 이름은 이름과 연결된 가능한 모든 IP 주소를 가져오고 속성으로 AddressList 설정하는 데 다시 사용됩니다.
IPv4 문자열 리터럴의 경우 위의 세 단계가 모두 성공할 수 있습니다. 그러나 실제로 다른 호스트에 속하는 IPv4 주소에 대한 부실 DNS 레코드가 반환될 수 있습니다. 이로 인해 3단계가 실패하고 예외가 발생할 수 있습니다(IPv4 주소에 대한 DNS PTR 레코드가 있지만 IPv4 주소에 대한 DNS A 레코드는 없음).
대부분의 IPv6 배포는 IPv6 주소에 대한 역방향(PTR) 레코드를 등록하지 않으므로 IPv6의 경우 위의 2단계가 실패할 수 있습니다. 따라서 이 메서드는 문자열 IPv6 리터럴을 속성의 FQDN(정규화된 도메인) 호스트 이름으로 반환할 HostName 수 있습니다.
메서드는 GetHostAddresses IP 리터럴과 관련하여 다른 동작을 가합니다. 위의 1단계가 성공하면(성공적으로 IP 주소로 구문 분석) 해당 주소가 결과로 즉시 반환됩니다. 역방향 조회를 시도할 수 없습니다.
로컬 컴퓨터에 IPv6이 설치되어 있지 않은 경우 IPv6 주소는 메서드의 GetHostEntry 결과에서 필터링됩니다. 따라서 IPv6만 .parameter에 사용할 수 있는 경우 빈 IPHostEntry 인스턴스를 hostNameOrAddress
다시 가져올 수 있습니다.
Aliases 반환된 인스턴스의 IPHostEntry 속성은 이 메서드로 채워지지 않으며 항상 비어 있습니다.
참고
이 멤버는 애플리케이션에서 네트워크 추적을 사용 하도록 설정 하면 추적 정보를 내보냅니다. 자세한 내용은 .NET Framework의 네트워크 추적을 참조하세요.
적용 대상
GetHostEntry(String, AddressFamily)
- Source:
- Dns.cs
- Source:
- Dns.cs
- Source:
- Dns.cs
호스트 이름 또는 IP 주소를 IPHostEntry 인스턴스로 확인합니다.
public:
static System::Net::IPHostEntry ^ GetHostEntry(System::String ^ hostNameOrAddress, System::Net::Sockets::AddressFamily family);
public static System.Net.IPHostEntry GetHostEntry (string hostNameOrAddress, System.Net.Sockets.AddressFamily family);
static member GetHostEntry : string * System.Net.Sockets.AddressFamily -> System.Net.IPHostEntry
Public Shared Function GetHostEntry (hostNameOrAddress As String, family As AddressFamily) As IPHostEntry
매개 변수
- hostNameOrAddress
- String
확인할 호스트 이름 또는 IP 주소입니다.
- family
- AddressFamily
IP를 검색해야 하는 주소 패밀리입니다. 이면 Unspecified주소 패밀리에 관계없이 모든 IP를 검색합니다.
반환
IPHostEntry 에 지정된 호스트에 대한 주소 정보를 포함하는 인스턴스입니다hostNameOrAddress
.
적용 대상
.NET