如何使用会话ID查找IP地址?
问题描述:
其实这是一个简单的问题,但我不能问正确的问题谷歌也许。这是问题:
认为我有一个客户端连接的网站。我为每个连接的客户端存储会话ID(即sbf1qql1qikvr4vnsvbomr1d61),并且我想使用这些会话ID检索IP地址。我正在运行一个php代码如何使用会话ID查找IP地址?
[email protected]:~# php checkSessions.php
在服务器上。和有一个代码类同以下snipplet
//Enter an infinite loop
while(1)
{
//Get session ids and user ids from the database
$q1 = $db->getQ("SELECT user_id, session_id, FROM all_sessions");
foreach($q1 as $q)
{
if($q[0]==63)
{
// Now, I need to get IP adress. I only have a session id
}
}
// Wait 2 seconds and do the same procedure again
sleep(2);
}
所以,你能提供的任何方法,找出使用这个会话ID,客户端的IP地址。
答
会话不会存储IP地址或任何其他额外信息。启动时需要将它添加到会话中。即:
session_start();
$_SESSION['ip'] = $_SERVER['REMOTE_ADDR'];
会话与IP地址无关,并且不能用于确定IP地址。 (这就是会话修复攻击不要求你欺骗受害者的IP地址的原因。) – bdares
好吧,有一个问题是:我可以找出所有连接的IP地址,只是使用php控制台? –
你不能做这样的事情 –