Как определить анонимность прокси по заголовкам скрипта 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 шт):

Автор решения: Tawero King

Чисто технически по ip адресу

'REMOTE_ADDR' => '120.41.248.218'

Если ип адрес не совпадает с твоим значит прокси уже не передаёт твой ip адрес.

Так-же если ip адрес отличается от ip прокси.

→ Ссылка
Автор решения: Monitorkin

Вот так надо делать:

  1. Если прокси не используется то заголовки будут выглядеть так:

REMOTE_ADDR = Ваш IP

HTTP_VIA = не определён

HTTP_X_FORWARDED_FOR = не определён

  1. При использовании прозрачного (transparent) прокси эти заголовки будут выглядеть так:

REMOTE_ADDR = IP proxy

HTTP_VIA = IP или имя прокси сервера

HTTP_X_FORWARDED_FOR = Ваш IP

  1. При использовании анонимного (anonymous) прокси эти заголовки будут выглядеть так:

REMOTE_ADDR = IP proxy

HTTP_VIA = IP или имя прокси сервера

HTTP_X_FORWARDED_FOR = IP адрес прокси

  1. При использовании искажающего (distorting) прокси эти заголовки будут выглядеть так:

REMOTE_ADDR = IP proxy

HTTP_VIA = не определён

HTTP_X_FORWARDED_FOR = случайный IP

  1. При использовании анонимного (anonymous) прокси эти заголовки будут выглядеть так:

REMOTE_ADDR = IP proxy

HTTP_VIA = не определён

HTTP_X_FORWARDED_FOR = не определён

→ Ссылка