Maŝino kun pluraj lokaj adresoj eble bezonas unu el ili por sia konekto al antaŭa prokurilo. cURL povas fari ambaŭ elektojn eksplicite:

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

Ĉi tio estas ilustra agordo por ekzistanta cURL-tenilo. Anstataŭigu 192.0.2.20 per fonta adreso reale disponebla en la maŝino, kiu rulas PHP. Por permesita publika peto sen prokurila konto, la listo de HTTP-prokuriloj povas provizi la malproksiman aŭskultanton por la prokurila valoro.

CURLOPT_INTERFACE elektas la lokan flankon de la elira konekto. CURLOPT_PROXY elektas la peranton, kiu portas la peton antaŭen. Elekti lokan fonton ne igas la maŝinon malproksima prokurilo nek donas al ĝi arbitran publikan IP.

Sur ĉi tiu vojo, la loka elekto influas la konekton al la prokurilo. La retejo ĝenerale vidas la pluan fontan adreson de la prokurilo. NAT inter iu ajn el la du paroj povas plu traduki la adreson, kiun ĉiu ricevanto vidas.

Se la interfaca elekto estas preterlasita, libcurl lasas la TCP-stakon elekti taŭgan fonton. Tiu elekto sekvas la retan agordon de la maŝino; ĝi ne estas universala regulo, ke la unua adreso en agorda dosiero gajnas.

libcurl akceptas interfacajn nomojn sur subtenataj platformoj, sed ĝia dokumentaro ekskludas la elekton de Windows-interfacaj nomoj por ĉi tiu opcio. Uzi gastigan nomon ankaŭ povas ekigi blokantan serĉon. Konata loka adreso estas pli klara enigo, kiam tio estas la elekto, kiun la aplikaĵo intencas.

Rilataj artikoloj