首页 > .net获取ip地址

.net获取ip地址

/// 获得客户端IP

    ///

    ///

    private string getIp()

    {

        // 穿过代理服务器取远程用户真实IP地址

        string Ip = string.Empty;

        if (Request.ServerVariables["HTTP_VIA"] != null)

        {

            if (Request.ServerVariables["HTTP_X_FORWARDED_FOR"] == null)

            {

                if (Request.ServerVariables["HTTP_CLIENT_IP"] != null)

                    Ip = Request.ServerVariables["HTTP_CLIENT_IP"].ToString();

                else

                    if (Request.ServerVariables["REMOTE_ADDR"] != null)

                        Ip = Request.ServerVariables["REMOTE_ADDR"].ToString();

                    else

                        Ip = "202.96.134.133";

            }

            else

                Ip = Request.ServerVariables["HTTP_X_FORWARDED_FOR"].ToString();

        }

        else if (Request.ServerVariables["REMOTE_ADDR"] != null)

        {

            Ip = Request.ServerVariables["REMOTE_ADDR"].ToString();

        }

        else

        {

            Ip = "202.96.134.133";

        }

        return Ip;

    }

 

 

 

 

 

//控制台应用程序

using System;

using System.Collections.Generic;

using System.Text;

using System.Net;

namespace ConsoleApplication1

{

    class Program

    {

        static void Main(string[] args)

        {

            string hostName = Dns.GetHostName(); //获取本机主机名

            Console.WriteLine("Local hostname: {0}", hostName);

            IPHostEntry myself = Dns.GetHostEntry(hostName);//获取本机ip地址信息

            foreach (IPAddress address in myself.AddressList)

            {

                Console.WriteLine("IP Address: {0}", address.ToString());

            }

        }

    }

}

转载于:https://www.cnblogs.com/lksa/archive/2010/03/01/1675812.html

更多相关:

  • 客户端ip:  Request.ServerVariables.Get("Remote_Addr").ToString();  客户端主机名: Request.ServerVariables.Get("Remote_Host").ToString();  客户端浏览器IE: Request.Browser.Browser;  客户端...

  • Request.ServerVariables("Url") 返回服务器地址 Request.ServerVariables("Path_Info") 客户端提供的路径信息 Request.ServerVariables("Appl_Physical_Path") 与应用程序元数据库路径相应的物理路径 Request.Serve...

  • 下面的源码给出了使用boost::asio进行域名解析的方法. //g++ -g resolver_demo.cpp -o resolver_demo -lboost_system -lpthread //#include #include #include

  • pc 端配置 点击pc端无线链接图标编辑链接以太网编辑IPv4设置方法:与其他计算机共享根据putty获取的动态ip使用ssh登录 解决 ip 无法登录问题 设置 pc 端 ip 和开发板 ip 在同一个网段 比如开发板 ip 是 10.42.0.123 可以设置自己机器的 ip 为 10.42.0.11 sudo ifcon...

  • 原文:TCP/IP 简介     第一节:TCP/IP 简介 第二节:TCP/IP 寻址 第三节:TCP/IP 协议 第四节:TCP/IP 邮件     TCP/IP 是用于因特网 (Internet) 的通信协议。     计算机通信协议 计算机通信协议是对那些计算机必须遵守以便彼此通信的规则的描述。     什么是 TC...

  • #保存一万条命令记录 sed -i 's/^HISTSIZE=1000/HISTSIZE=10000/g' /etc/profile#在/etc/profile的文件尾部添加如下行数配置信息 ######jiagu history xianshi######### USER_IP=`who -u am i 2>/dev/null |...

  • TCP/IP基础概念及通信过程举例   出现 上个世纪60年代,由于中央集中式网络的容灾性较弱,以美国国防部为中心的一家组织研究出分组交换网络。后来为了验证分组交换技术的实用性,ARPANET出现了,并且在3年内逐渐发展,由4个节点发展至34个节点。20世纪70年代前半叶,ARPANET一个机构研制出了TCP/IP,1982年具体规范...

  • #include #include #include #include #include #include #include

  • 题目:表示数值的字符串 请实现一个函数用来判断字符串是否表示数值(包括整数和小数)。例如,字符串"+100"、"5e2"、"-123"、"3.1416"、"0123"及"-1E-16"都表示数值,但"12e"、"1a3.14"、"1.2.3"、"+-5"及"12e+5.4"都不是。 解题: 数值错误的形式有多种多样,但是正确的...

  • 加法伺候  //超过20位数值相加---------------------------------------- function bigNumAdd(a, b) {if (!(typeof a === "string" && typeof b === "string")) return console.log("传入参数必...

  • 业务场景: 从中文字句中匹配出指定的中文子字符串 .这样的情况我在工作中遇到非常多, 特梳理总结如下. 难点: 处理GBK和utf8之类的字符编码, 同时正则匹配Pattern中包含汉字,要汉字正常发挥作用,必须非常谨慎.推荐最好统一为utf8编码,如果不是这种最优情况,也有酌情处理. 往往一个具有普适性的正则表达式会简化程...

  • 简单record 一下 #include // 'struct sockaddr_in' #include #include // 'struct ifreq' and 'struct if_nameindex' #include #inc...