Модераторы: skyboy, MoLeX, Aliance, ksnk

Поиск:

Закрытая темаСоздание новой темы Создание опроса
> Как 100% определить IP посетителя? Как-то же блокируют нас в чатах? 
:(
    Опции темы
mike_prog
Дата 3.4.2004, 18:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 88
Регистрация: 27.9.2003

Репутация: 1
Всего: 1



Как можно определить IP адрес посетителя. Знаю: PROXY, всякий там бред. Но теоретически же можно определить адрес как-то. Если даже прокся генерирует каждый раз новый адрес, то можно хотя-бы узнать адрес этого сеанса?
PM MAIL ICQ   Вверх
mike_prog
Дата 3.4.2004, 18:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 88
Регистрация: 27.9.2003

Репутация: 1
Всего: 1



А как это сделать, на 79,3%?
PM MAIL ICQ   Вверх
Secandr
Дата 3.4.2004, 18:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Связист
****


Профиль
Группа: Экс. модератор
Сообщений: 4043
Регистрация: 3.8.2003
Где: Russia, Volgograd

Репутация: 5
Всего: 39



на 100% опредилить нельзя, вообще ничего 100% не бывает!


--------------------
Мышки плакали, кололись, но продолжали жрать кактусы (с) cisco
PM ICQ AOL   Вверх
Mal Hack
Дата 3.4.2004, 19:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 122
Всего: 261



Код
function get_ip()
{
  if ($ip = getenv("HTTP_CLIENT_IP")) return $ip;

  if ($ip = getenv("HTTP_X_FORWARDED_FOR"))
  {
     if ($ip == '' || $ip == "unknown")
     {
         $ip = getenv("REMOTE_ADDR");
     }
     return $ip;
  }

  if ($ip = getenv("REMOTE_ADDR")) return $ip;
}

А вот тут детально описавается что и как: http://phpclub.ru/talk/showthread.php?threadid=42766
Правда, все-таки вариант того, что это обойдкт - есть, но он очень мал.
PM ICQ   Вверх
Master
Дата 3.4.2004, 22:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1530
Регистрация: 13.5.2003
Где: Mother Russia

Репутация: 8
Всего: 10



анонимный прокси обойдет все.
если кому-то надо не замеченым пройти на сайт, то он пройдет... если конечно не перебанить все анонимные прокси сервера )


--------------------
Вавилон, Вавилон
Что ты построил, что разрушил?
Вавилон, Вавилон
Плавятся души дьявольским огнем.
PM WWW ICQ   Вверх
pascal
Дата 4.4.2004, 00:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 180
Регистрация: 16.7.2003
Где: Россия - Уфа

Репутация: нет
Всего: 1



Цитата
если конечно не перебанить все анонимные прокси сервера

Некоторые анонимные прокси косят под обычного клиента, как их ты банить предлагаешь?
А как насчёт каскадных прокси? я например в фирме через каскадный прокси по HTTP лазил, причём сервер не мог определить даже адрес моего ближайшего прокси... Иногда ещё похлеще приходиться извращаться чтобы за трафик не платить...
PM MAIL WWW ICQ   Вверх
-=::BlackCat::=-
Дата 4.4.2004, 03:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1456
Регистрация: 12.7.2003
Где: растёт анаша?

Репутация: нет
Всего: 6





--------------------
-=::BlackCat::=-user posted image

такой дуратцкий аватар потому как мой 100х100, а такие подгрузить нелзя, движок форума чо сам не может его переделать??  гррр, админ, форум косячит  
PM MAIL ICQ   Вверх
arial
Дата 14.11.2004, 22:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник Клуба
Сообщений: 772
Регистрация: 11.3.2003
Где: Архангельская обл .

Репутация: 6
Всего: 7



Код
function get_ip()
{
   if (!empty($_SERVER) && isset($_SERVER['REMOTE_ADDR'])) {
       $remote_addr = $_SERVER['REMOTE_ADDR'];
   } elseif (!empty($_ENV) && isset($_ENV['REMOTE_ADDR'])) {
       $remote_addr = $_ENV['REMOTE_ADDR'];
   } elseif (@getenv('REMOTE_ADDR')) {
       $remote_addr = getenv('REMOTE_ADDR');
   }

   if (!empty($_SERVER) && isset($_SERVER['HTTP_X_FORWARDED_FOR'])) {
       $http_x_forwarded_for = $_SERVER['HTTP_X_FORWARDED_FOR'];
   } elseif (!empty($_ENV) && isset($_ENV['HTTP_X_FORWARDED_FOR'])) {
       $http_x_forwarded_for = $_ENV['HTTP_X_FORWARDED_FOR'];
   } elseif (@getenv('HTTP_X_FORWARDED_FOR')) {
       $http_x_forwarded_for = getenv('HTTP_X_FORWARDED_FOR');
   }

   if (!empty($_SERVER) && isset($_SERVER['HTTP_X_FORWARDED'])) {
       $http_x_forwarded = $_SERVER['HTTP_X_FORWARDED'];
   } elseif (!empty($_ENV) && isset($_ENV['HTTP_X_FORWARDED'])) {
       $http_x_forwarded = $_ENV['HTTP_X_FORWARDED'];
   } elseif (@getenv('HTTP_X_FORWARDED')) {
       $http_x_forwarded = getenv('HTTP_X_FORWARDED');
   }

   if (!empty($_SERVER) && isset($_SERVER['HTTP_FORWARDED_FOR'])) {
       $http_forwarded_for = $_SERVER['HTTP_FORWARDED_FOR'];
   } elseif (!empty($_ENV) && isset($_ENV['HTTP_FORWARDED_FOR'])) {
       $http_forwarded_for = $_ENV['HTTP_FORWARDED_FOR'];
   } elseif (@getenv('HTTP_FORWARDED_FOR')) {
       $http_forwarded_for = getenv('HTTP_FORWARDED_FOR');
   }

   if (!empty($_SERVER) && isset($_SERVER['HTTP_FORWARDED'])) {
       $http_forwarded = $_SERVER['HTTP_FORWARDED'];
   } elseif (!empty($_ENV) && isset($_ENV['HTTP_FORWARDED'])) {
       $http_forwarded = $_ENV['HTTP_FORWARDED'];
   } elseif (@getenv('HTTP_FORWARDED')) {
       $http_forwarded = getenv('HTTP_FORWARDED');
   }

   if (!empty($_SERVER) && isset($_SERVER['HTTP_VIA'])) {
       $http_via = $_SERVER['HTTP_VIA'];
   } elseif (!empty($_ENV) && isset($_ENV['HTTP_VIA'])) {
       $http_via = $_ENV['HTTP_VIA'];
   } elseif (@getenv('HTTP_VIA')) {
       $http_via = getenv('HTTP_VIA');
   }

   if (!empty($_SERVER) && isset($_SERVER['HTTP_X_COMING_FROM'])) {
       $http_x_coming_from = $_SERVER['HTTP_X_COMING_FROM'];
   } elseif (!empty($_ENV) && isset($_ENV['HTTP_X_COMING_FROM'])) {
       $http_x_coming_from = $_ENV['HTTP_X_COMING_FROM'];
   } elseif (@getenv('HTTP_X_COMING_FROM')) {
       $http_x_coming_from = getenv('HTTP_X_COMING_FROM');
   }

   if (!empty($_SERVER) && isset($_SERVER['HTTP_COMING_FROM'])) {
       $http_coming_from = $_SERVER['HTTP_COMING_FROM'];
   } elseif (!empty($_ENV) && isset($_ENV['HTTP_COMING_FROM'])) {
       $http_coming_from = $_ENV['HTTP_COMING_FROM'];
   } elseif (@getenv('HTTP_COMING_FROM')) {
       $http_coming_from = getenv('HTTP_COMING_FROM');
   }

   if (!empty($remote_addr)) {
       $direct_ip = $remote_addr;
   }

   $proxy_ip     = '';
   if (!empty($http_x_forwarded_for)) {
       $proxy_ip = $http_x_forwarded_for;
   } elseif (!empty($http_x_forwarded)) {
       $proxy_ip = $http_x_forwarded;
   } elseif (!empty($http_forwarded_for)) {
       $proxy_ip = $http_forwarded_for;
   } elseif (!empty($http_forwarded)) {
       $proxy_ip = $http_forwarded;
   } elseif (!empty($http_via)) {
       $proxy_ip = $http_via;
   } elseif (!empty($http_x_coming_from)) {
       $proxy_ip = $http_x_coming_from;
   } elseif (!empty($http_coming_from)) {
       $proxy_ip = $http_coming_from;
   }

   if (empty($proxy_ip)) {
       // True IP without proxy
       return $direct_ip;
   } else {
       $is_ip = preg_match('|^([0-9]{1,3}\.){3,3}[0-9]{1,3}|', $proxy_ip, $regs);
       if ($is_ip && (count($regs) > 0)) {
           return $regs[0];
       } else {
           return 0;
       }
   }
}
Спёр из phpmyadmin.


--------------------
Есть люди, в которых живет Бог. Есть люди, в которых живет дьявол. А есть люди, в которых живут только глисты. (Ф. Раневская)
PM ICQ   Вверх
IZ@TOP
Дата 15.11.2004, 09:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Панда-бир!
****


Профиль
Группа: Участник
Сообщений: 4795
Регистрация: 3.2.2003
Где: Бамбуковый лес

Репутация: 44
Всего: 73



arial, мощьные навароты... только толку?


--------------------
Один из розовых плюшевых-всадников апокалипсиса... очень злой...

Семь кругов ада для новых элементов языка
Мои разрозненные мысли
PM MAIL WWW ICQ Skype GTalk   Вверх
arial
Дата 15.11.2004, 17:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник Клуба
Сообщений: 772
Регистрация: 11.3.2003
Где: Архангельская обл .

Репутация: 6
Всего: 7



Цитата(IZ @ 15.11.2004, 10:41)
arial, мощьные навароты... только толку?

Навороты позволяют поднять процент определения реального IP с 34,5% до 79,3%. ;)


--------------------
Есть люди, в которых живет Бог. Есть люди, в которых живет дьявол. А есть люди, в которых живут только глисты. (Ф. Раневская)
PM ICQ   Вверх
IZ@TOP
Дата 15.11.2004, 17:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Панда-бир!
****


Профиль
Группа: Участник
Сообщений: 4795
Регистрация: 3.2.2003
Где: Бамбуковый лес

Репутация: 44
Всего: 73



arial, откуда цифры?


--------------------
Один из розовых плюшевых-всадников апокалипсиса... очень злой...

Семь кругов ада для новых элементов языка
Мои разрозненные мысли
PM MAIL WWW ICQ Skype GTalk   Вверх
arial
Дата 16.11.2004, 17:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник Клуба
Сообщений: 772
Регистрация: 11.3.2003
Где: Архангельская обл .

Репутация: 6
Всего: 7



От балды.


--------------------
Есть люди, в которых живет Бог. Есть люди, в которых живет дьявол. А есть люди, в которых живут только глисты. (Ф. Раневская)
PM ICQ   Вверх
Goganchic
Дата 30.4.2007, 09:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 678
Регистрация: 18.6.2004

Репутация: нет
Всего: 5



Цитата(IZ@TOP @  15.11.2004,  17:52 Найти цитируемый пост)
arial, откуда цифры? 


Цитата(arial @  16.11.2004,  17:49 Найти цитируемый пост)
От балды.

Офигенная статистика smile
PM Jabber   Вверх
GZep
Дата 30.4.2007, 09:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


участник Винграда
***


Профиль
Группа: Завсегдатай
Сообщений: 1528
Регистрация: 7.7.2006
Где: Москва

Репутация: 8
Всего: 32



хороший скрипт, только размер просто очень большой... можно уменьшить его, оптимизировав, в разы...


--------------------
user posted imageuser posted image
PM MAIL WWW ICQ Skype GTalk   Вверх
GZep
Дата 30.4.2007, 10:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


участник Винграда
***


Профиль
Группа: Завсегдатай
Сообщений: 1528
Регистрация: 7.7.2006
Где: Москва

Репутация: 8
Всего: 32



вот, сделал!
Код

function IPDetect() {
        $serverVars = array(
            "HTTP_X_FORWARDED_FOR",
            "HTTP_X_FORWARDED",
            "HTTP_FORWARDED_FOR",
            "HTTP_FORWARDED",
            "HTTP_VIA",
            "HTTP_X_COMING_FROM",
            "HTTP_COMING_FROM",
            "HTTP_CLIENT_IP"
        );
        foreach ($serverVars as $serverVar)
            if (!empty($_SERVER[$serverVar]))
                $proxyIP = $_SERVER[$serverVar];
        if (!empty($proxyIP)) {
            $isIP = preg_match('|^([0-9]{1,3}\.){3,3}[0-9]{1,3}|', $proxyIP, $regs);
            if ($isIP && (sizeof($regs) > 0))
                return $regs[0];
        }
        return $_SERVER['REMOTE_ADDR'];
}

в функцию добавил:
  • теперь и "HTTP_CLIENT_IP" проверяется...
  • размер стал гораздо меньше...
  • теперь функция не возвращает "0", если проксик анонимный...



--------------------
user posted imageuser posted image
PM MAIL WWW ICQ Skype GTalk   Вверх
Страницы: (3) Все [1] 2 3 
Закрытая темаСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1084 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.