Корректная функция определения IP

nick4

Guest
Корректная функция определения IP

В phpmyadmin (phpmyadmin/libraries/ip_allow_deny.lib.php) лежит большая функция которая проверяет прокси из всех этих переменных:

['HTTP_X_FORWARDED_FOR', 'HTTP_X_FORWARDED', 'HTTP_FORWARDED_FOR', 'HTTP_FORWARDED', 'HTTP_VIA', 'HTTP_X_COMING_FROM', 'HTTP_COMING_FROM']

и возвращает IP прокси если такой найден.
я бы хотел найти оптимальный вариант который наиболее четко и корректно определит IP используя все эти переменные.

1. Стоит ли использовать эту функцию?
2. Можно ли надеятся на то что она вернет нормальный результат а не какой-нибудь 127.0.0.1?
3. Если нет - на какие переменные из этих все-же стоит обратить внимание?
4. Какие значения они могут вернуть?
5. Могут ли они вернуть какой-нибудь локальный IP адрес - на прокси-сервере?

Или вообще не стоит заморачиваться с этими переменными и использовать только REMOTE_ADDR и HTTP_X_FORWARDED_FOR ?
..хотя опять-же надежность второго у меня вызывает сомнения..

растолкуйте кто знает
 

Фанат

oncle terrible
Команда форума
А че тут знать-то?
тут простая логика нужна а не какие-то особые знания.
доверять можно только REMOTE_ADDR - значит, его и пишем.
мало? пишите В ДОБАВОК к нему результат функции.
и всё. чё тут думать-то?
 

Кром

Новичок
>Стоит ли использовать эту функцию?

Алгоритм этой функции использовать можно. Но не саму функцию. Написана она на редкость криво.
 
Сверху