Dns.GetHostEntry Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Menyelesaikan nama host atau alamat IP ke IPHostEntry instans.
Overload
GetHostEntry(IPAddress) |
Menyelesaikan alamat IP ke IPHostEntry instans. |
GetHostEntry(String) |
Menyelesaikan nama host atau alamat IP ke IPHostEntry instans. |
GetHostEntry(String, AddressFamily) |
Menyelesaikan nama host atau alamat IP ke IPHostEntry instans. |
GetHostEntry(IPAddress)
- Sumber:
- Dns.cs
- Sumber:
- Dns.cs
- Sumber:
- Dns.cs
Menyelesaikan alamat IP ke IPHostEntry instans.
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
Parameter
- address
- IPAddress
Alamat IP.
Mengembalikan
Instans IPHostEntry yang berisi informasi alamat tentang host yang ditentukan dalam address
.
Pengecualian
address
adalah null
.
Terjadi kesalahan saat menyelesaikan address
.
address
adalah alamat IP yang tidak valid.
Contoh
Contoh kode berikut menggunakan GetHostEntry metode untuk menyelesaikan alamat IP ke IPHostEntry instans.
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
Keterangan
Metode ini GetHostEntry meminta server DNS untuk alamat IP dan alias yang terkait dengan alamat IP.
Alamat IPv6 difilter dari hasil GetHostEntry metode jika komputer lokal tidak menginstal IPv6. Akibatnya, dimungkinkan untuk mendapatkan kembali instans kosong IPHostEntry jika hanya hasil IPv6 yang tersedia untuk address
parameter .
Properti Aliases instans yang IPHostEntry dikembalikan tidak diisi oleh metode ini dan akan selalu kosong.
Catatan
Anggota ini memancarkan informasi pelacakan saat Anda mengaktifkan pelacakan jaringan di aplikasi Anda. Untuk informasi selengkapnya, lihat Pelacakan Jaringan di .NET Framework.
Berlaku untuk
GetHostEntry(String)
- Sumber:
- Dns.cs
- Sumber:
- Dns.cs
- Sumber:
- Dns.cs
Menyelesaikan nama host atau alamat IP ke IPHostEntry instans.
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
Parameter
- hostNameOrAddress
- String
Nama host atau alamat IP untuk diselesaikan.
Mengembalikan
Instans IPHostEntry yang berisi informasi alamat tentang host yang ditentukan dalam hostNameOrAddress
.
Pengecualian
Parameternya hostNameOrAddress
adalah null
.
Panjang hostNameOrAddress
parameter lebih besar dari 255 karakter.
Terjadi kesalahan saat menyelesaikan hostNameOrAddress
parameter.
Parameter hostNameOrAddress
adalah alamat IP yang tidak valid.
Contoh
Contoh berikut menggunakan GetHostEntry metode untuk menyelesaikan alamat IP ke IPHostEntry instans.
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
Keterangan
Metode ini GetHostEntry meminta server DNS untuk alamat IP yang terkait dengan nama host atau alamat IP.
Jika string kosong diteruskan sebagai hostNameOrAddress
argumen, maka metode ini mengembalikan alamat IPv4 dan IPv6 dari host lokal.
Jika nama host tidak dapat ditemukan, SocketException pengecualian dikembalikan dengan nilai 11001 (kesalahan Windows Sockets WSAHOST_NOT_FOUND). Pengecualian ini dapat dikembalikan jika server DNS tidak merespons. Pengecualian ini juga dapat dikembalikan jika namanya bukan nama host atau alias resmi, atau tidak dapat ditemukan dalam database yang sedang dikueri.
Pengecualian ArgumentException juga dikembalikan jika hostNameOrAddress
parameter berisi Any atau IPv6Any.
Metode ini GetHostEntry mengasumsikan bahwa jika string literal IP diteruskan dalam hostNameOrAddress
parameter yang diinginkan aplikasi instans IPHostEntry yang dikembalikan dengan semua properti yang ditetapkan. Properti ini termasuk AddressList, Aliases, dan HostName. Akibatnya, implementasi GetHostEntry metode menunjukkan perilaku berikut ketika string IP literal diteruskan:
Metode mencoba mengurai alamat.
hostNameOrAddress
Jika parameter berisi string IP legal literal, maka fase pertama berhasil.Pencarian terbalik menggunakan alamat IP string IP literal dicoba untuk mendapatkan nama host. Hasil ini ditetapkan sebagai HostName properti .
Nama host dari pencarian terbalik ini digunakan lagi untuk mendapatkan semua kemungkinan alamat IP yang terkait dengan nama dan ditetapkan sebagai AddressList properti .
Untuk literal string IPv4, ketiga langkah di atas dapat berhasil. Tetapi dimungkinkan untuk catatan DNS kedaluarsa untuk alamat IPv4 yang benar-benar milik host yang berbeda untuk dikembalikan. Ini dapat menyebabkan langkah #3 gagal dan melempar pengecualian (ada catatan PTR DNS untuk alamat IPv4, tetapi tidak ada catatan DNS A untuk alamat IPv4).
Untuk IPv6, langkah #2 di atas mungkin gagal, karena sebagian besar penyebaran IPv6 tidak mendaftarkan catatan terbalik (PTR) untuk alamat IPv6. Jadi metode ini dapat mengembalikan string IPv6 literal sebagai nama host domain yang sepenuhnya memenuhi syarat (FQDN) di HostName properti .
Metode ini GetHostAddresses memiliki perilaku yang berbeda sehubungan dengan literal IP. Jika langkah #1 di atas berhasil (berhasil diurai sebagai alamat IP), alamat tersebut segera dikembalikan sebagai hasilnya. Tidak ada upaya untuk pencarian terbalik.
Alamat IPv6 difilter dari hasil GetHostEntry metode jika komputer lokal tidak menginstal IPv6. Akibatnya, dimungkinkan untuk mendapatkan kembali instans kosong IPHostEntry jika hanya hasil IPv6 jika tersedia untuk hostNameOrAddress
.parameter.
Properti Aliases instans yang IPHostEntry dikembalikan tidak diisi oleh metode ini dan akan selalu kosong.
Catatan
Anggota ini memancarkan informasi pelacakan saat Anda mengaktifkan pelacakan jaringan di aplikasi Anda. Untuk informasi selengkapnya, lihat Pelacakan Jaringan di .NET Framework.
Berlaku untuk
GetHostEntry(String, AddressFamily)
- Sumber:
- Dns.cs
- Sumber:
- Dns.cs
- Sumber:
- Dns.cs
Menyelesaikan nama host atau alamat IP ke IPHostEntry instans.
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
Parameter
- hostNameOrAddress
- String
Nama host atau alamat IP untuk diselesaikan.
- family
- AddressFamily
Keluarga alamat tempat IP harus diambil. Jika Unspecified, ambil semua IP terlepas dari keluarga alamat.
Mengembalikan
Instans IPHostEntry yang berisi informasi alamat tentang host yang ditentukan dalam hostNameOrAddress
.