Машини са више локалних адреса може бити потребна једна од њих за везу са надређеним проксијем. cURL може експлицитно да направи оба избора:

curl_setopt_array($handle, [
    CURLOPT_URL => 'https://example.com/',
    CURLOPT_INTERFACE => '192.0.2.20',
    CURLOPT_PROXY => 'http://proxy.example:8080',
]);

Ово је илустративна конфигурација за постојећи cURL handle. Замените 192.0.2.20 изворном адресом која је заиста доступна на машини која извршава PHP. За дозвољени јавни захтев без прокси налога, листа HTTP проксија може да обезбеди удаљени слушалац за вредност проксија.

CURLOPT_INTERFACE бира локалну страну одлазне везе. CURLOPT_PROXY бира посредника који носи захтев даље. Избор локалног извора не претвара ту машину у удаљени прокси нити јој даје произвољну јавну IP адресу.

На овом путу локални избор утиче на везу према проксију. Сајт обично види даљу изворну адресу проксија. NAT између било ког пара може додатно да преведе адресу коју види сваки прималац.

Ако је избор интерфејса изостављен, libcurl пушта TCP стек да изабере одговарајући извор. Тај избор прати мрежну конфигурацију машине; није универзално правило да побеђује прва адреса у конфигурационој датотеци.

libcurl прихвата имена интерфејса на подржаним платформама, али његова документација искључује избор имена Windows интерфејса за ову опцију. Коришћење hostname-а такође може да покрене блокирајућу претрагу. Позната локална адреса је јаснији унос када је то избор који апликација намерава.

Повезани чланци