Mitme kohaliku aadressiga masinal võib olla vaja ühte neist oma ühenduseks edasisaatmise puhverserveriga. cURL saab mõlemad valikud selgesõnaliselt teha:

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

See on näidiskonfiguratsioon olemasolevale cURL-i käepidemele. Asendage 192.0.2.20 allikaaadressiga, mis on PHP-d käitaval masinal tegelikult saadaval. Lubatud avaliku päringu jaoks ilma puhverserveri kontota võib HTTP-puhverserverite loendist pakkuda puhverserveri väärtuse jaoks kaugvastuvõtjat.

CURLOPT_INTERFACE valib väljuva ühenduse kohaliku poole. CURLOPT_PROXY valib vahendaja, mis kannab päringu edasi. Kohaliku allika valimine ei muuda masinat kaugpuhverserveriks ega anna sellele suvalist avalikku IP-d.

Sellel teel mõjutab kohalik valik ühendust puhverserveri suunas. Veebisait näeb üldiselt puhverserveri edasist allikaaadressi. NAT kummagi paari vahel võib veelgi tõlkida aadressi, mida iga vastuvõtja näeb.

Kui liidese valik jäetakse välja, laseb libcurl TCP-pinul valida sobiva allika. See valik järgib masina võrgukonfiguratsiooni; pole üldine reegel, et konfiguratsioonifaili esimene aadress võidab.

libcurl aktsepteerib liidese nimesid toetatud platvormidel, kuid selle dokumentatsioon välistab selle valiku jaoks Windowsi liidesenimede valiku. Hostinime kasutamine võib samuti käivitada blokeeriva otsingu. Teadaolev kohalik aadress on selgem sisend, kui see on valik, mida rakendus kavatseb.

Seotud artiklid