Показать сообщение отдельно

  #2  
Старый 11.05.2005, 01:02
Algol
Регистрация: 29.05.2002
Сообщений: 1,793
Провел на форуме:
2050916

Репутация: 0


По умолчанию

Один из способов - попробовать послать запрос самому себе через этот самй IP, который, как ты подозреваешь, является проксей. Если пакет получишь - значит действительно это прокся. Или же просто проверить открыты ли на хосте порты 8080, 3128, 8081 и т.п. Если открыты - то 99% что это прокся. Правда счас очень многие прокси имеют различный входной и выходной IP. В таком случае однозначно определить прокся это или нет -затруднительно.
Другой способ - анализ VIA и других полей. Изучи внимательно ответные пакеты различных проксей здесь http://antichat.ru/proxy Увидишь какие варианты бывают.
Однако скрывающие прокси не вводят никаких дополнительных полей в HTTP заголовки, поэтому и этот способ против них не годится.
А вообще-то стопроцентный способ такой - при прямом коннекте peer-to-peer, remote port для сокета сервера должен совпадать с local port на сокете браузера клиента. Если они не совпадают - значит используется внешний фаерволл или прокся. Однако проблема в том, что определить local port сокета браузера через javascript кажись нельзя.

Последний раз редактировалось Algol; 11.05.2005 в 01:08..