Master-X
Регистрация
|
Вход
Форум
|
Новости
|
Статьи
Главная
»
Форум
»
Программинг, Скрипты, Софт, Сервисы
»
Тема:
"Выход в мир" через PHP с разных IP :-) Как?...
Новая тема
Ответить
цитата
15/09/07 в 18:02
Dantist
Гуглю замучил... ))) Может бредовая идея.. )))
На сервер прикручено полтора десятка IPшников...
Как скриптом на PHP, при обращении к какому-нить сайту, типа:
Код:
$St = file_get_contents("http://url.com/"); //или тоже самое через сокеты
сделать так, чтоб он на выходе юзал разные IPшники..
Т.е. грубо говоря в логах url.com будет видно, что его запрашивали не с одного IP, а с многих разных... )
Надеюсь понятно объяснил...
P.S. Получить список доступных на сервере IPшников - не представляется сложным.. Также разметстиь какие-то доп "модули", повесив их на разные IP сревера, и запрашивая с них - тоже можно... Но геморно ))
Как всегда, всех, кто постит по теме "обливаю" рейтингом.. )))
цитата
15/09/07 в 18:07
Kn
может просто прокси сделать?
цитата
15/09/07 в 18:09
Adulter
Ответа на твой вопрос не знаю, но лично я делаю так.
$proxy = "localhost:8080"; //<-optional proxy IP
if($proxy){
curl_setopt($ch, CURLOPT_PROXY, "$proxy");
}
Вместо localhost вставь проксю с портом. Ну и всё, что нужно для работы curl.
з.ы. У меня локалхост, т.к. я запускаю с локальной машины, localhost:8080 бросает запрос на удобную прогу - Proxomitron. Она мне помогает заголовки исследовать + проксю в ней врубать можно.
цитата
15/09/07 в 18:17
Dantist
Kn писал:
может просто прокси сделать?
Я об этом думал, но написать забыл....
Дык это squid надо поднимать на машине?... И на каждый IP Вешать?...
Ухх.
цитата
15/09/07 в 18:19
Dantist
Adulter, +3, но забыл написать - у меня под FreeBSD всё...
Прокси - это да.. Выход...
Но может все таки средствами PHP все это можно организовать?...
** Хотя вероятность то, что это реально - крайне невелика ((
цитата
15/09/07 в 18:58
xreload
Средствами php это сделать нельзя.
цитата
15/09/07 в 22:50
pelmen
чииво? =)
это конечно самый простой ответ но и самый ограниченный =)
Все возможно, работа через сокеты, более подробно
тут
цитата
15/09/07 в 22:55
Xen
Ну либо повесить апач на несколько интерфейсов с разными айпишниками, тогда скрипты не придется переписывать.
цитата
15/09/07 в 23:25
xreload
pelmen писал:
чииво? =)
это конечно самый простой ответ но и самый ограниченный =)
Все возможно, работа через сокеты, более подробно
тут
Ограниченый это в данном случае ты, если ты не знаешь что модуль php и интерпритатор работают не через сокеты, то я лишь могу тебе посочувствовать.
цитата
15/09/07 в 23:52
onn
всё намного проще:
curl_setopt($ch, CURLOPT_INTERFACE,'один_из_айпих_сервака');
и коннект пойдёт с этого айпи
цитата
16/09/07 в 00:07
bgporno
Все просто, прикручиваеш к скприту сокс клас, благо есть хорошие в паблике или же, если удобнее, HTTP/s клас
подобные классы можеш найти на пхп класес точка орг
Удачи!
цитата
16/09/07 в 00:41
Dantist
onn писал:
curl_setopt($ch, CURLOPT_INTERFACE,'один_из_айпих_сервака');
+4! ))))
Все генитальное - просто!
цитата
25/09/07 в 18:14
idk2045
Или через CURL, как написали,
или при ручной работе с сокетами командой socket_bind.
А узнать список можно просто, если знаешь хотя бы подсетку.
Просто в цикле биндишься на все ипы подсетки и запоминаешь успешные бинды.
цитата
03/10/07 в 11:44
Codemaster
Код:
<?
$host = "google.com";
$outgoingIp = "10.12.12.61"; // вот тут пишем IP с которого выходим
$socket = socket_create (AF_INET, SOCK_STREAM, getprotobyname("TCP"));
socket_bind ($socket, $outgoingIp);
socket_connect ($socket, gethostbyname($host), 80);
$request = "GET / HTTP/1.1\r\n"
. "Host: $host\r\n"
. "Connection: Close\r\n".
"\r\n";
socket_write ($socket, $request);
$rcvd = socket_read ($socket, 100000);
die ($rcvd);
?>
Новая тема
Ответить
Эта страница в полной версии