Tôi có một chuỗi có thể đại diện cho tên máy chủ (myip.noip.org, v.v.) hoặc nó có thể đại diện cho một địa chỉ thực ("127.0.0.1"). Cách tốt nhất để giải quyết này để một System.Net.IPAddress là gì?Phân tích địa chỉ IP trong .NET
Xin cảm ơn trước.
Tôi có một chuỗi có thể đại diện cho tên máy chủ (myip.noip.org, v.v.) hoặc nó có thể đại diện cho một địa chỉ thực ("127.0.0.1"). Cách tốt nhất để giải quyết này để một System.Net.IPAddress là gì?Phân tích địa chỉ IP trong .NET
Xin cảm ơn trước.
Sử dụng phương pháp Dns.GetHostAddresses
. Điều này sẽ xử lý cả tên miền và giá trị địa chỉ IP thô
IPAddress[] array = DNs.GetHostAddresses(theString);
Sử dụng phương thức IPAddress.Parse
cho địa chỉ IP.
IPAddress address = IPAddress.Parse("127.0.0.1");
Như đã đề cập bởi những người khác, để giải quyết tất cả các địa chỉ IP và tên máy chủ, sử dụng Dns.GetHostEntry
đó:
Giải quyết một tên máy chủ hoặc địa chỉ IP để một thể hiện IPHostEntry.
IPHostEntry
lưu một tập hợp địa chỉ IP trong thuộc tính AddressList
.
Bạn có thể gọi Dns.GetHostEntry
trên địa chỉ IP hoặc tên máy chủ.
Nó thậm chí còn đảo ngược tra cứu cho bạn.
Nếu bạn không cần tra cứu ngược lại, bạn có thể gọi Dns.GetHostAddresses
để thay thế.
Điều đó có giải quyết được tên máy chủ không? – dko
Không, nó sẽ không. Sử dụng lớp 'Dns'. – SLaks
OP đã yêu cầu giải quyết địa chỉ IP * hoặc * tên máy chủ. Điều này chỉ xử lý các địa chỉ ip – JaredPar