C#实时解析域名绑定的服务器IP

虽然这个方法在平常用到的场景比较少,但是在动态域名解析的时候就可以实现一些定制化的需求了。具体怎么用就随意发挥了,例如找同ip网站,或者一些其他的骚操作。

        /// <summary>
        /// 解析域名绑定的服务器IP地址
        /// </summary>
        /// <param name="url">网址</param>
        /// <returns>域名绑定的服务器IP地址</returns>
        private static string GetUrlIp(string url)
        {
            string url_ip = string.Empty;
            string p = @"(http|https)://(?<domain>[^(:|/]*)";
            Regex reg = new Regex(p, RegexOptions.IgnoreCase);
            string ipAddress = url;
            if (!ipAddress.Contains("http"))
            {
                ipAddress = "http://" + ipAddress;
            }

            Match m = reg.Match(ipAddress);
            string Result = m.Groups["domain"].Value;

            try
            {
                IPHostEntry host = Dns.GetHostByName(Result);
                IPAddress ip = host.AddressList[0];
                url_ip = ip.ToString();
            }
            catch
            {
                url_ip = "请输入正确的域名,或者您的电脑没有联互联网";
            }
            return url_ip;
        }
THE END