У моего сервера несколько IP-интерфейсов. Я хочу выполнить сценарий, который извлекает содержимое веб-страницы, и мне было интересно, можно ли использовать другой IP-интерфейс, кроме стандартного. У скрипта нет аргумента интерфейса, такого как curl.
Спасибо
Это возможно .. Но это грязно.
http://www.ryde.net/code/bind.c.txt
1) Скомпилируйте его в общий объект:
cc -nostartfiles -fpic -shared bind.c -o bind.so -ldl -D_GNU_SOURCE
2) Задайте переменную BIND_ADDR и путь LD_PRELOAD и запустите ваше приложение, как показано ниже. BIND_ADDR="127.0.0.1" LD_PRELOAD=./bind.so /path/to/your/application
3) Ваше приложение теперь имеет интерфейс по умолчанию.
не касаясь вашего скрипта, вам нужно будет изменить интерфейс по умолчанию для всей системы - что, скорее всего, не очень хорошая идея!
Предлагаю обновить the script
и заставьте его использовать нужный интерфейс ... это можно сделать, например. указав --bind-address
если вы используете wget