Тот же сервер, та же программа, но запущена однажды с использованием одной сетевой карты, а затем с другой - PullRequest
0 голосов
/ 22 декабря 2008

У меня есть сервер Linux с несколькими ips (так, несколько eth0, eth0: 0, eth0: 1 и т. Д.). Сценарий, который я пытаюсь запустить, представляет собой php CLI-скрипт, который загружает данные из API другого сервера, и я хотел бы изменить IP-адрес в зависимости от других параметров. Как только скрипт запущен, мне больше не нужно менять скрипт ip OF THEC SPECIFIC до конца.

Есть ли у вас какие-либо подсказки, можно ли этого добиться? Мое другое решение было установить Xen или OpenVZ и создать N разных VPS для каждого IP, но, как вы можете видеть, это определенно PITA: -)

Ответы [ 2 ]

2 голосов
/ 22 декабря 2008

Вы не указываете, как подключаться к другому серверу, но с сокетами вы можете попробовать socket_bind .

EDIT: С curl вы можете попробовать curl_setopt . CURLOPT_INTERFACE Имя используемого исходящего сетевого интерфейса. Это может быть имя интерфейса, IP-адрес или имя хоста.

0 голосов
/ 22 декабря 2008

Я знаю, как это сделать в C - вы используете bind () в своем сокете, прежде чем вызывать connect (), и вы привязываетесь к IP-адресу, назначенному нужному интерфейсу, передавая 0 для порта. Я не знаю, как это сделать в PHP.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...