获取用户IP地址与判断真实IP

获取用户IP地址与判断真实IP
function getIp() {
    if($_SERVER['HTTP_CLIENT_IP'])
    {
        return $_SERVER['HTTP_CLIENT_IP'];
    } elseif ($_SERVER['HTTP_X_FORWARDED_FOR']) {
        return $_SERVER['HTTP_X_FORWARDED_FOR'];
    } else {
        return $_SERVER['REMOTE_ADDR'];
    }
}

function get_real_ip()
{
        $ip=false;
        if(!empty($_SERVER["HTTP_CLIENT_IP"]))
        {
                $ip = $_SERVER["HTTP_CLIENT_IP"];
        }
        if (!empty($_SERVER['HTTP_X_FORWARDED_FOR']))
        {
                $ips = explode (", ", $_SERVER['HTTP_X_FORWARDED_FOR']);
                if ($ip)
                {
                        array_unshift($ips, $ip); $ip = FALSE;
                }
                for ($i = 0; $i < count($ips); $i++)
                {
                        if (!eregi ("^(10|172.16|192.168).", $ips[$i]))
                        {
                                $ip = $ips[$i];
                                break;
                        }
                }
        }
        return ($ip ? $ip : $_SERVER['REMOTE_ADDR']);
}

时间: 2024-10-26 20:16:52

获取用户IP地址与判断真实IP的相关文章

java-怎么获取企业内部保留IP地址对应的公网IP地址???

问题描述 怎么获取企业内部保留IP地址对应的公网IP地址??? 最近公司要做一个短信防刷功能,于是我根据每个发短信的客户端的IP地址和手机号码进行限制,每个手机号码和每个IP地址能发送的条数有限制,一旦超限则禁用一段时间,对于请求过于频繁的则拉入黑名单............ 这个构思是很好的,而且我也这么做了,的确有效果!可是问题也随之而来了. 问题是,很多企业或者组织.机构往往是申请了一个或几个公网IP地址,内容使用保留地址,类似100.97.14.12.由于这种保留地址可以被多个组织机构使

Java判断IP地址为内网IP还是公网IP的方法_java

本文实例讲述了Java判断IP地址为内网IP还是公网IP的方法.分享给大家供大家参考.具体分析如下: tcp/ip协议中,专门保留了三个IP地址区域作为私有地址,其地址范围如下: 10.0.0.0/8:10.0.0.0-10.255.255.255 172.16.0.0/12:172.16.0.0-172.31.255.255 192.168.0.0/16:192.168.0.0-192.168.255.255 那么,直接上代码吧: 复制代码 代码如下: public static boolea

web 项目 如何获取用户登陆地址

问题描述 web 项目 如何获取用户登陆地址 用户登 入 然后怎么获取用户的登入地址呢 例如爱奇艺的 登陆地判断 解决方案 WEB项目中如何获取ip地址和端口号 解决方案二: 1.登录时,获取登录用户的IP地址: 2.根据获取到的IP地址获取所在地理位置. jsp如何获得客户端的IP地址java根据IP获取用户所在地

查找ip地址、查找本地IP、网络IP和对方IP地址的方法

查找本地IP地址针对的是在使用路由器或者交换机等局域网内的用户,最常见的是多人通过路由器共享上网,对于这种情况查找本地IP地址非常简单,首先进入桌面,从左下角的开始里找到运行,在运行对话框中输入cmd命令,然后再CMD命令框中输入 ipconfig /all 再按回车键即可超找到本地IP地址; 网络IP地址是指我们连接上互联网中的IP地址,这个IP地址在全球都是唯一的,IP地址也是由地方与区域决定的,也是用户所无法修改的,由网络商提供,相当于一个家庭的住址,查看网络IP地址的方法很简单,详情如下

怎样查看自己的ip地址,我的IP地址是多少?

怎样查看自己的ip地址,我的电脑本机IP是什么? IP地址分内网的外网两种,如果你是在家里上网并没有使用路由器的话,则不存在内网IP的问题,如果是在单位或学校,有许多朋友一起上网,那么就会有内网IP和外网IP之说了,查询内网和外网IP的大概方法如下 1.打开你的网络连接,点"详细信息",下面就有"客户端ip地址"就是你的ip地址(一般为内网IP) 2.运行输入CMD回车打开命令提示符,再输入IPconfig回车,就能看到IP了,IPaddress后面就是IP地址了(

java-怎么校验ip地址是否属于某ip段范围里??

问题描述 怎么校验ip地址是否属于某ip段范围里?? 如图,"配置ip信息"那个框框里,要先配置好起始ip段和结束ip段,然后在新增设备哪里,要输入设备的ip地址 现在就困在一个验证问题,1,要验证配置的ip段是否属于同一个网段,图上那个肯定配错的,2,输入的ip地址是否输入配置的ip段的范围里 问题是没想好怎么验证能符合上面那两点 求大神指教....还有,这种情况,一半需要验证ip和掩码和网关之间的正确性么??? 解决方案 判断是否是同一个网段是根据子网掩码与运算得出的 解决方案二:

Java中如何获取用户mac地址?

问题描述 Java中如何获取用户mac地址? 在Java项目中如何用代码获取用户MAC地址,我用的是w7系统 解决方案 http://blog.163.com/09zzy@126/blog/static/71197665201001504753750/ 解决方案二: public static String getWindowsMACAddress() { String mac = null; BufferedReader bufferedReader = null; Process proce

怎么ping ip地址?怎么查看网站ip地址

一,网络IP地址(以xp系统为例) 1."开始"->"运行"中输入cmd命令(相关教程:windows系统进入cmd命令行窗口的方法 ) 2.然后在命令提示符窗口我们如输入ping 192.168.1.1,出现如下图(192.168.1.1是本地IP地址了) 3.如果要ping网络一个IP地址,我们同样可以ping 8.8.8.8 如下图,这个是google的dns 服务器 4.现在如果我要查看指定网站的IP地址,也可以直接ping 域名,如我ping百度的I

Shell脚本实现IP地址合法性判断_linux shell

做unix/linux下的开发,脚本编写的功力是少不了的,作为shell编程,也是博大精深的一个技术领域,这里为了学习,就写一个简单的判断IP地址是否合法的微型脚本程序,这个小程序也是非常有用的. IP地址是32位的,可以由4个十进制数值表示,每个数值的范围都是0~255. 复制代码 代码如下: #!/bin/bash # Test an IP address for validity: # Usage: #      valid_ip IP_ADDRESS #      if [[ $? -e