ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > PHP, PERL, MySQL, JavaScript
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

Определение IP отправителя
  #1  
Старый 19.12.2008, 17:55
Аватар для Qwazar
Qwazar
Leaders of Antichat - Level 4
Регистрация: 02.06.2005
Сообщений: 1,411
Провел на форуме:
10605912

Репутация: 4693


По умолчанию Определение IP отправителя

Иногда натыкаюсь на подобные фугкции определения IP:
Код:
	if ($cip = getenv("HTTP_CLIENT_IP"))
		$ip = $cip;
	elseif ($cip = getenv("HTTP_X_FORWARDED_FOR"))
		$ip = $cip;
	elseif ($cip = getenv("REMOTE_ADDR"))
		$ip = $cip;
	else	$ip = "UNKNOWN";
Вопрос: Зачем делать именно так? В каких случаях HTTP_CLIENT_IP может быть неустановлен?
__________________
Я отдал бы немало за пару крыльев,
Я отдал бы немало за третий глаз
За руку на которой четырнадцать пальцев
Мне нужен для дыхания другой газ..

Мой блог:http://qwazar.ru/.
 
Ответить с цитированием

  #2  
Старый 19.12.2008, 17:59
Аватар для b3
b3
Постоянный
Регистрация: 05.12.2004
Сообщений: 647
Провел на форуме:
1698585

Репутация: 818


Отправить сообщение для b3 с помощью ICQ
По умолчанию

исправь
$_SERVER['REMOTE_ADDR']
и тд.
 
Ответить с цитированием

  #3  
Старый 19.12.2008, 18:01
Аватар для groundhog
groundhog
Познавший АНТИЧАТ
Регистрация: 12.05.2007
Сообщений: 1,235
Провел на форуме:
2238549

Репутация: 1318


Отправить сообщение для groundhog с помощью ICQ
По умолчанию

Каждая переменная как может быть установлена, так может быть и не установлена. Устанавливать её или нет определяет ПО на базе которого работает прокси-сервер, через который идёт запрос. Анонимные прокси не устанавливают значения других переменных, устанавливают только значение REMOTE_ADDR в свой адрес. Не анонимные проксики могут устанавливать все переменные, что свидетельствует о том, что запрос был послан через промежуточные прокси-сервера.
 
Ответить с цитированием

  #4  
Старый 19.12.2008, 18:02
Аватар для Qwazar
Qwazar
Leaders of Antichat - Level 4
Регистрация: 02.06.2005
Сообщений: 1,411
Провел на форуме:
10605912

Репутация: 4693


По умолчанию

Это всё ясно, меня конкретно инетерсует, в каких случаях (на каких конкретно серверах\системах), переменная окружения "HTTP_CLIENT_IP" будет неустановленной.
__________________
Я отдал бы немало за пару крыльев,
Я отдал бы немало за третий глаз
За руку на которой четырнадцать пальцев
Мне нужен для дыхания другой газ..

Мой блог:http://qwazar.ru/.
 
Ответить с цитированием

  #5  
Старый 19.12.2008, 18:04
Аватар для groundhog
groundhog
Познавший АНТИЧАТ
Регистрация: 12.05.2007
Сообщений: 1,235
Провел на форуме:
2238549

Репутация: 1318


Отправить сообщение для groundhog с помощью ICQ
По умолчанию

Qwazar, ну пойми - это определяется настройками, где будет "настроено" устанавливать эту переменную там и будет она установлена. Просто полагаться всецело на значение этой переменной нельзя, что и делает скрипт - проверяет задана эта переменная или нет и использует её значение или нет.
 
Ответить с цитированием

  #6  
Старый 19.12.2008, 18:07
Аватар для Qwazar
Qwazar
Leaders of Antichat - Level 4
Регистрация: 02.06.2005
Сообщений: 1,411
Провел на форуме:
10605912

Репутация: 4693


По умолчанию

Ок, ясно, в принципе на всех основных серверах она установлена по дефолту, но в принципе её можно и отключить. Как я понял.
__________________
Я отдал бы немало за пару крыльев,
Я отдал бы немало за третий глаз
За руку на которой четырнадцать пальцев
Мне нужен для дыхания другой газ..

Мой блог:http://qwazar.ru/.
 
Ответить с цитированием

  #7  
Старый 19.12.2008, 23:31
Аватар для Gifts
Gifts
Reservists Of Antichat - Level 6
Регистрация: 25.04.2008
Сообщений: 827
Провел на форуме:
2769640

Репутация: 1304


По умолчанию

Qwazar Как раз наоборот, заголовок HTTP_CLIENT_IP обычно не устанавливается. И следует помнить, что все заголовки HTTP_* можно подделать и использовать их для попытки найти реальный IP не следует.
 
Ответить с цитированием

  #8  
Старый 20.12.2008, 00:01
Аватар для .:EnoT:.
.:EnoT:.
Постоянный
Регистрация: 29.05.2007
Сообщений: 852
Провел на форуме:
4832771

Репутация: 1916


По умолчанию

Немного не в тему, но скажу что такие функции нужны, не знаю сколько на данный момент таких хостингов, но я 2 года назад сидел на одном хосте, где IP пользователя лежал в HTTP_X_FORWARDED_FOR, а REMOTE_ADDR был пуст...вот такие кривые настройки порой бывают)
 
Ответить с цитированием

  #9  
Старый 20.12.2008, 08:10
Аватар для ntldr
ntldr
Постоянный
Регистрация: 04.12.2007
Сообщений: 424
Провел на форуме:
2364957

Репутация: 479
По умолчанию

настоящий ip адрес находится в переменной $_SERVER['REMOTE_ADDR'] а все остальные вариации можно подделать отправкой левых заголовков. Читал в какой-то статье.
 
Ответить с цитированием

  #10  
Старый 20.12.2008, 11:54
Аватар для .:EnoT:.
.:EnoT:.
Постоянный
Регистрация: 29.05.2007
Сообщений: 852
Провел на форуме:
4832771

Репутация: 1916


По умолчанию

Всё зависит от настроек сервера
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
PHP: Определение расширения картинки kdk PHP, PERL, MySQL, JavaScript 6 12.11.2006 21:36
Определение Ip D=P=CH= MOD= Болталка 4 15.10.2006 15:56
Как на perl в сокетах, ip Отправителя Подменить faust45 PHP, PERL, MySQL, JavaScript 6 08.03.2006 02:20
Определение установленных форумов... Xex Болталка 2 24.01.2006 00:51



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ