Как использовать внешние IP на Windows Server

[Удален]
584

Ситуация:

Есть сервер на Win2k3, у него 10 айпи. Меня заверили, что можно привязываться к любому из них для исходящих запросов, каким то образом через сокеты.

Вопрос: Подскажите в какую сторону рыть, какой механизм, мм? Примеры реализации не обязательны.

karukite
На сайте с 07.12.2008
Offline
8
#1

Если Вас интересует php, то я недавно отвечал на такой же вопрос тут:

/ru/forum/306955

Вот копия ответа:


Почитайте о сокетах в php тут: http://ru.php.net/manual/ru/ref.sockets.php

Если я Вас правильно понял, то Вам нужно создать сокет, прилпить его к определенному ip и после этого работать. Выглядеть это должно примерно так:


<?php
// создаем сокет
$sock = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);

// связываем сокет с определенным IP
socket_bind($sock, '127.0.0.2');

// открываем соедиенение от этого сокета
socket_connect($sock, '127.0.0.1', 80); // здесь 127.0.0.1 - это то КУДА нужно подключиться

// делаем запрос
$request = 'GET / HTTP/1.1' . "\r\n" .
'Host: example.com' . "\r\n\r\n";
socket_write($sock, $request);

// закрываем сокет
socket_close($sock);

?>

Between two evils always pick the one never tried before...
[Удален]
#2

Спасибо, а вы не знаете случаем, в cURLе такие возможности не предусмотрены? Ну т.е. я знаю что там есть возможность использовать прокси, это тот же самый механизм?

karukite
На сайте с 07.12.2008
Offline
8
#3
neolord:
Спасибо, а вы не знаете случаем, в cURLе такие возможности не предусмотрены? Ну т.е. я знаю что там есть возможность использовать прокси, это тот же самый механизм?

Предусмотрены конечно.

Если я не ошибаюсь, то через CURL это делается так:

curl_setopt($ch  , CURLOPT_INTERFACE, '127.0.0.1');

В данном случае:

$ch - хендлер курла

ну а '127.0.0.1' заменяете нужным IP

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий