Для этого есть несколько вариантов.Я перейду от простого к более сложному.
Во-первых, вы можете использовать прокси-сервер и запросить его через HTTP-запрос сделано вашей программой или вашим браузером, чтобы получить ресурс для вас.Прокси-сервер возьмет на себя роль запроса ресурса на вашем месте к целевой службе.
Пример:
Вы хотите получить главную страницу домена stackoverflow.com
.Вы просите прокси-сервер попросить HTTP-сервер stackoverflow отправить ему главную страницу, и он перенаправит ее вам.
Для веб-сервера SO суперглобальная переменная $_SERVER['REMOTE_ADDR']
будет соответствовать IP-адресу прокси-сервера, а не вашему.Однако в протоколе HTTP реализованы некоторые поля, такие как HTTP_VIA
, HTTP_X_FORWARDED_FOR
или HTTP_FORWARDED
, которые можно использовать для определения текущего HTTPзапрос сделан по доверенности или нет.
A Прозрачный прокси не будет указывать эти поля и не будет изменять ваш запрос, тогда как непрозрачный прокси может показать исходный IP-адрес исходного запрашивающего.Вы должны использовать надежный прокси, который будет действовать так, как вы собираетесь.Еще одна вещь, которую следует учитывать, - это использование SSL tunnel
между вами и прокси-сервером, чтобы избежать перехвата.
Второе решение - использовать сервер VPN (виртуальная частная сеть).Было бы слишком сложно полностью объяснить, как это работает, но помните об этом, когда вы подключены к компьютеру с помощью службы VPN (например, l2tpd , pptpd ...), это похоже навы были в одной локальной сети с этим компьютером.Таким образом, вы можете прозрачно отправлять запросы веб-серверу, и он никогда не узнает, какой у вас реальный IP-адрес.
Третьим решением может быть использование сети на основе связанных узлов, такой как TOR
.Это бесплатная сеть, к которой вы можете подключиться, и вы будете полностью анонимны для обычных людей.Сила сети TOR состоит в том, чтобы обеспечить сеть из множества узлов, и каждый узел ничего не знает о других узлах, поэтому даже люди, подключенные к сети TOR, не могут ничего знать о вас.Я предлагаю вам прочитать об этом подробнее, если вам интересно.
Существуют и более сложные другие решения, такие как перехват TCP-сессии, который обычно используется для подделки IP-адресов и буквального кражи чужого компьютера. TCP-соединение , но это выходит за рамки этого ответа.