curl / Mailing Lists / curl-library / Single Mail

curl-library

Re: [PATCH] curl: Support CURLOPT_LOCALADDR to bind to local address.

From: Ben Greear <greearb_at_candelatech.com>
Date: Mon, 19 Mar 2018 13:24:17 -0700

On 01/31/2018 07:25 AM, Ben Greear wrote:
>
>
> On 01/31/2018 05:24 AM, Christian H├Ągele wrote:
>> Am 09.11.2017, 16:17 Uhr, schrieb <greearb_at_candelatech.com>:
>>
>>> This allows a user to bind to both an interface (with CURLOPT_INTERFACE)
>>> and a local IP address. In doing so, it allows the user to work-around
>>> some serious performance issues on machines with lots of virtual interfaces
>>> because curl no longer has to scan all interfaces each time it makes
>>> a connection.
>>
>> I'm very interested in this feature.
>> However, I think you missed one important topic. When you are using
>> DNS-Names you cannot know if it resolves to IPv4 or IPv6 or both. So if
>> you bind to a local IPv6 and the host only supports IPv4 connection will
>> fail. Same is true vice versa.
>> The only way I can think of solving this problem is by providing a local
>> IPv4 and a local IPv6 at the same time and let Curl choose after
>> DNS-Resolution which to use or maybe use both (for Happy-Eyeballs).
>>
>> Any comments on this? (Disclaimer: I did not look at the code, only at the
>> documentation of the option)
>
> There are already ways to bind to local IPs, my patch is adding a feature to bind
> explicitly to an interface. This saves a large amount of time from the current feature,
> which tries to figure out if a particular string is a device name or IP address.

Hello,

Looks like it is the start of a release again...maybe a good time to revisit this
patch for inclusion?

My curl tree with the most recent version of my patch is here:

https://github.com/greearb/curl

Thanks,
Ben

-- 
Ben Greear <greearb_at_candelatech.com>
Candela Technologies Inc  http://www.candelatech.com
-------------------------------------------------------------------
Unsubscribe: https://cool.haxx.se/list/listinfo/curl-library
Etiquette:   https://curl.haxx.se/mail/etiquette.html
Received on 2018-03-19