根据域名批量查ip的一些方法

这几天因为需要批量查下ip,网上又找不到类似的程序,所以简单整理了一下如下,这是大致的后台代码。
protected void Page_Load(object sender, EventArgs e)
    {
        GetIp("www.0460.com");
        Response.Write("您的局域网IP:" + Dns.Resolve(Dns.GetHostName()).AddressList[0]);
        //Response.Write("您的局域网IP:" + Dns.GetHostByName(Dns.GetHostName()).AddressList[0]);
        Response.Write((Request.UserHostAddress));
        Response.Write("您的IP地址是:" + Request.ServerVariables["REMOTE_ADDR"]);
    }


    protected string GetIp(string sHost)
    {
        try
        {
            IPHostEntry oIPHost = new IPHostEntry();
            oIPHost = Dns.Resolve(sHost);
            //for (int i = 0; i < oIPHost.AddressList.Length; i++)
            //{
            return oIPHost.AddressList[0].ToString();
        }
        catch(Exception ex)    //System.Net.Sockets.SocketException ex
        {
            /*
            if (ex.ToString().IndexOf("。") != -1)
            {
                return ex.ToString().Substring(0, ex.ToString().IndexOf("。") + 1);
            }
            else { return "找不到相关数据."; }
            * */
            return "找不到相关数据,请检查输入.";
        }
            //说明:Addresslist只能是你本机的IP,如果一台电脑有多个网卡的话会有多个IP 所以是个数组
    }
    protected void Button1_Click(object sender, EventArgs e)
    {
        string sIps = tbIps.Text;
        string[] arrIps = sIps.Split('\n');
        string sIp = "";
        foreach (string item in arrIps)
        {
            if (!string.IsNullOrEmpty(item) )
            {
                sIp = item.Trim();
                Response.Write("<br>" + sIp + ":" + GetIp(sIp));
            }
        }
    }
最后编辑admin2008 最后编辑于 2009-07-27 11:46:11