这个问题在这里已经有一个答案:>
Cant parse domain into IP in C#?6
我正在尝试一个TCP套接字连接到一个IP地址.我可以通过直接解析IP地址来做到这一点:
我正在尝试一个TCP套接字连接到一个IP地址.我可以通过直接解析IP地址来做到这一点:
IPAddress ipAddress = IPAddress.Parse("192.168.1.123"); IPEndPoint remoteEP = new IPEndPoint(ipAddress,80); // Create a TCP/IP socket. Socket sender = new Socket(AddressFamily.InterNetwork,SocketType.Stream,ProtocolType.Tcp); // This works!
但是,我无法弄清楚如何将这个IP地址从DNS字符串中去除.我尝试过以下各种组合:
IPAddress ipAddress = Dns.Resolve("www.mydns.org"); // No dice IPAddress ipAddress = Dns.GetHostEntry("www.mydns.org"); // Nada IPAddress ipAddress = IPAddress.Parse(Dns.Resolve("www.mydns.org")); // So many errors... IPAddress ipAddress = IPAddress.Parse(Dns.Resolve("www.mydns.org").toString()); // WTh is this attempt anyway?
你们中的任何一个善良的人都有一个提示来帮助我从DNS中挤出一个IPAddress?
解决方法
foreach (IPAddress ip in Dns.GetHostAddresses("www.mydns.org")) { Console.WriteLine(ip.ToString()); }
或者只是IPAddress address = Dns.GetHostAddresses(“www.mydns.org”)[0];如果你只想要第一个.