как определить IP посетителя?

Статус
В этой теме нельзя размещать новые ответы.

SystemDoctor

Постоялец
Регистрация
11 Апр 2008
Сообщения
138
Реакции
65
какой оператор для этого используется или код?
 
Если пишешь какой то скрипт то приготовься к тому что у некоторых пользователей ип повторяться может т.к. через прокси серверы сейчас очень много народу лазит в инете
 
Мой вариант (в аргументах возвращает прокси, если есть).

PHP:
    function GetRemoteIP(&$par_Proxy) {

       if (isset($_SERVER["HTTP_X_FORWARDED_FOR"])) {

          if (isset($_SERVER["HTTP_CLIENT_IP"])) {

             $par_Proxy = $_SERVER["HTTP_CLIENT_IP"];

          } else {

             $par_Proxy = $_SERVER["REMOTE_ADDR"];

          }

          $l_IP = $_SERVER["HTTP_X_FORWARDED_FOR"];

       } else {

          $par_Proxy = 0; 
          if (isset($_SERVER["HTTP_CLIENT_IP"])) {

             $l_IP = $_SERVER["HTTP_CLIENT_IP"];

          } else {

             $l_IP = $_SERVER["REMOTE_ADDR"];
          }

       }

       return $l_IP;

    }
 
Определение аноанимных прокси штука сложная. Вышепоказанный вариант уже не пройдет потому как самые ленивые прокси сервисы и те не оставляют header запросов с перенаправлением. Когда юзается проксик у юзера IP адрес часто меняется, бывает что при каждом обновлении страницы он будет то из Японии то из Германии.
С этими сменами вообщем-то легко бороться.
Надо при заходе пользователя
1) проверять поддерживает ли брацзер кукис cookies
- если нет грубо просить его включить эти кукисы
- если да, записать даные о нем в БД
2) при следующем заходе взять с кукиса IP и сравнить с предыдущими - при сильном различии (как правило первых 2х секци IP адреса) банить юзера **х с криком - прокси гауно. И то это не решит всю проблему. Сервисы по поределению проксей- платные :( поэтому зопа.

Но это уже не для начинающего сайта :)
Защита от прокси манов нужна если ты
а. не хочешь чтобы все подряд лазили по твоему детищу
б. не хочешь чтобы тебя хакнул школьник
в. просто хочешь выпендренуться
 
а как лучше после идентификации конкретного пользователя по IP пометить его, что бы после смены IP вновь его идентифицировать?
 
а как лучше после идентификации конкретного пользователя по IP пометить его, что бы после смены IP вновь его идентифицировать?

Допустим что переменная $ip содержит айпишник юзверя(уже определенный).
PHP:
<?php
if(isset($_COOKIE['user_last_ip']))
{
if($_COOKIE['user_last_ip'] != $ip)
{
//Кука есть, но айпи не совпадает
}
else
{
//И кука есть, и айпи совпадает
}
}
else
{
//Нет куки
}
?>
 
при следующем заходе взять с кукиса IP и сравнить с предыдущими - при сильном различии (как правило первых 2х секци IP адреса) банить юзера **х с криком - прокси гауно.

Хочу предупредить, что не стоит это воспринимать с фанатизмом. Существуют еще такие вещи, как ADSL с динамическим IP и модемы (как ни странно)
 
Хочу предупредить, что не стоит это воспринимать с фанатизмом. Существуют еще такие вещи, как ADSL с динамическим IP и модемы (как ни странно)

ADSL и dialup меняют последние 2 секции, первые две влияют на страну и город, условно

197.23.34.132 - корея

198.23.34.132 -судан

Один провадер так не делает, а последние цифры в рассчет не берутся.
 
Один провадер так не делает, а последние цифры в рассчет не берутся.
Ты хотел сказать, ни один провайдер? Естественно не делает - RIPE раздает компаниям IP только из сегмента их страны.
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху