Как определить анонимность прокси по заголовкам скрипта Azenv?
Делаю запрос к скрипту azenv через прокси, в ответ получаю набор заголовков. По каким признакам можно вычислить анонимность proxy имея заголовки, приходящие из скрипта azenv и зная свой ip?
По сути нужна логика: если .... то тип прокси = 'anonymous', иначе... типы которые требуется вычислить: 'transparent','anonymous','elite'
Пример того, что приходит из скрипта:
'HTTP_ACCEPT' => '*/*'
'HTTP_USER_AGENT' => 'Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.1) Gecko/2008070208'
'HTTP_HOST' => 'test.ru'
'REMOTE_PORT' => '49569'
'REMOTE_ADDR' => '120.41.248.218'
'HTTPS' => 'on'
'REQUEST_SCHEME' => 'https'
'REQUEST_URI' => '/azenv.php'
'REQUEST_METHOD' => 'GET'
'REQUEST_TIME_FLOAT' => 1645008976.453
'REQUEST_TIME' => 1645008976
Ответы (2 шт):
Чисто технически по ip адресу
'REMOTE_ADDR' => '120.41.248.218'
Если ип адрес не совпадает с твоим значит прокси уже не передаёт твой ip адрес.
Так-же если ip адрес отличается от ip прокси.
Вот так надо делать:
- Если прокси не используется то заголовки будут выглядеть так:
REMOTE_ADDR = Ваш IP
HTTP_VIA = не определён
HTTP_X_FORWARDED_FOR = не определён
- При использовании прозрачного (transparent) прокси эти заголовки будут выглядеть так:
REMOTE_ADDR = IP proxy
HTTP_VIA = IP или имя прокси сервера
HTTP_X_FORWARDED_FOR = Ваш IP
- При использовании анонимного (anonymous) прокси эти заголовки будут выглядеть так:
REMOTE_ADDR = IP proxy
HTTP_VIA = IP или имя прокси сервера
HTTP_X_FORWARDED_FOR = IP адрес прокси
- При использовании искажающего (distorting) прокси эти заголовки будут выглядеть так:
REMOTE_ADDR = IP proxy
HTTP_VIA = не определён
HTTP_X_FORWARDED_FOR = случайный IP
- При использовании анонимного (anonymous) прокси эти заголовки будут выглядеть так:
REMOTE_ADDR = IP proxy
HTTP_VIA = не определён
HTTP_X_FORWARDED_FOR = не определён