存储我网站访问者的唯一IP地址的问题

时间:2014-11-19 07:11:43

标签: php networking ip

在将我的问题标记为重复之前,请仔细阅读此说明。

以下是我用来获取访问者IP地址的功能

function get_client_ip() {
    $ipaddress = '';
    if (getenv('HTTP_CLIENT_IP'))
        $ipaddress = getenv('HTTP_CLIENT_IP');
    else if(getenv('HTTP_X_FORWARDED_FOR'))
        $ipaddress = getenv('HTTP_X_FORWARDED_FOR');
    else if(getenv('HTTP_X_FORWARDED'))
        $ipaddress = getenv('HTTP_X_FORWARDED');
    else if(getenv('HTTP_FORWARDED_FOR'))
        $ipaddress = getenv('HTTP_FORWARDED_FOR');
    else if(getenv('HTTP_FORWARDED'))
       $ipaddress = getenv('HTTP_FORWARDED');
    else if(getenv('REMOTE_ADDR'))
        $ipaddress = getenv('REMOTE_ADDR');
    else
        $ipaddress = 'UNKNOWN';
    return $ipaddress;
}

我知道使用此功能,我将在同一网络下获得两个设备的相同IP地址。但是,我的问题是,这个函数每天都在相同的地址下为同一个设备提取新的IP地址。例如。当我周一使用笔记本电脑时,显示的IP地址为117.196.22.134,每次检查时都显示的是相同的IP。第二天,即周二,当我使用相同的笔记本电脑检查时,显示了不同的IP。那么任何建议如何每天从访客那里获得一个独特的IP?如果您可以告诉我如何区分同一网络中的每个设备,这将非常有用。

1 个答案:

答案 0 :(得分:1)

您的路由器可能配置了DHCP,以便您每天都获得不同的IP。

解决方案:要求提供商在您的互联网连接上提供静态IP。并将该IP配置到您的笔记本电脑适配器设置中。