Отправляет email-рассылки с помощью сервиса Sendsay

RFpro.ru: Программирование на PHP

  Все выпуски  

RusFAQ.ru: Программирование на PHP


Информационный Канал Subscribe.Ru

РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / PHP

Выпуск № 120
от 14.08.2005, 18:14

Администратор:Калашников О.А.
В рассылке:Подписчиков: 149, Экспертов: 25
В номере:Вопросов: 1, Ответов: 2


Вопрос № 24669: Здравствуйте, ув. эксперты! Можно ли как-то определить, $_SERVER['REMOTE_ADDR'] содержит реальный ip, или соединился через прокси? Нужно, чтобы к авторизации допускались только машины из локальной сети, т.е. с адресами 192.168.0.*, причем ес...

Вопрос № 24.669
Здравствуйте, ув. эксперты!

Можно ли как-то определить, $_SERVER['REMOTE_ADDR'] содержит реальный ip, или соединился через прокси? Нужно, чтобы к авторизации допускались только машины из локальной сети, т.е. с адресами 192.168.0.*, причем если машина подключена через локальный прокси с адресом из этого диапазона, она тоже не должна допускаться к авторизации. Подскажите, пожалуйста, как это реализовать...

Заранее благодарен!

Приложение:

Отправлен: 09.08.2005, 18:09
Вопрос задал: Nexus (статус: 4-ый класс)
Всего ответов: 2
Мини-форум вопроса >>>

Отвечает: Ерёмин Андрей
Здравствуйте, Nexus!
Здравствуйте, Nexus!
Насколько мне известно, вы никак не отличите обычный IP-адрес от прокси... Зачем тогда они вообще были бы нужны (прокси), если легко ловятся? Наоборот - они созданы для защиты. Ну а определить по маске можно например так:
<?php

$is_user = false;
$ip = getenv("REMOTE_ADDR");
if (strpos($ip, "192.168.0.") == 0)
{
$is_user = true;
}
if ($is_user)
{
// Authorization...
}

?>


--
С уважением,
Андрей.

---------
Если б не было бы глюка, жизнь была б такая скyка...
Ответ отправил: Ерёмин Андрей (статус: Студент)
Отправлен: 09.08.2005, 19:51
Оценка за ответ: 3
Комментарий оценки:
Если прокси не "анонимный", то реальный ip лежит в поле хэдера HTTP_CLIENT_IP или HTTP_X_FORWARDED_FOR, если полу-анонимный то будет определено поле HTTP_X_FORWARDED. Вопрос в том как определить используется ли анонимный прокси...

Отвечает: Licvidator
Здравствуйте, Nexus!
1. Я думаю, в Вашей лоакалке не так много прокси-серверов, поэтому можно эти ИП сразу вбить в "черный список"
2. цитата:

Если proxy сервер не используется, то переменные окружения выглядят следующим образом:
REMOTE_ADDR = Ваш IP
HTTP_VIA = не определена
HTTP_X_FORWARDED_FOR = не определена

Будем надеятся, что локальный прокси не будут специально искажать или подделывать эти переменные окружения.
удачи!
Ответ отправил: Licvidator (статус: Профессор)
Отправлен: 09.08.2005, 20:50
Оценка за ответ: 5
Комментарий оценки:
Спасибо! Вот только как быть с анонимным прокси не понятно...


Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2005, RusFAQ.ru, Россия, Москва. Все права защищены.
Идея, дизайн, программирование, авторское право: Калашников О.А.

Яндекс


Subscribe.Ru
Поддержка подписчиков
Другие рассылки этой тематики
Другие рассылки этого автора
Подписан адрес:
Код этой рассылки: comp.soft.prog.phpplus
Отписаться
Вспомнить пароль

В избранное