dwww Home | Manual pages | Find package

CURLOPT_DNS_SHUFFLE_ADDRESScurl)easy_setopt opCURLOPT_DNS_SHUFFLE_ADDRESSES(3)

NAME
       CURLOPT_DNS_SHUFFLE_ADDRESSES - shuffle IP addresses for hostname

SYNOPSIS
       #include <curl/curl.h>

       CURLcode curl_easy_setopt(CURL *handle, CURLOPT_DNS_SHUFFLE_ADDRESSES, long onoff);

DESCRIPTION
       When a name is resolved and more than one IP address is returned, shuf-
       fle the order of all returned addresses so that they will be used in  a
       random  order.   This is similar to the ordering behavior of gethostby-
       name which is no longer used on most platforms.

       Addresses will not be reshuffled if a name resolution is completed  us-
       ing  the  DNS  cache. CURLOPT_DNS_CACHE_TIMEOUT(3) can be used together
       with this option to reduce DNS cache timeout  or  disable  caching  en-
       tirely if frequent reshuffling is needed.

       Since  the  addresses  returned will be reordered randomly, their order
       will not be in accordance with RFC 3484 or any other deterministic  or-
       der  that  may be generated by the system's name resolution implementa-
       tion. This may have performance impacts and may cause IPv4 to  be  used
       before IPv6 or vice versa.

DEFAULT
       0 (disabled)

PROTOCOLS
       All

EXAMPLE
       CURL *curl = curl_easy_init();
       if(curl) {
         curl_easy_setopt(curl, CURLOPT_URL, "https://example.com");
         curl_easy_setopt(curl, CURLOPT_DNS_SHUFFLE_ADDRESSES, 1L);

         curl_easy_perform(curl);

         /* always cleanup */
         curl_easy_cleanup(curl);
       }

AVAILABILITY
       Added in 7.60.0

RETURN VALUE
       CURLE_OK or an error such as CURLE_UNKNOWN_OPTION.

SEE ALSO
       CURLOPT_DNS_CACHE_TIMEOUT(3), CURLOPT_IPRESOLVE(3),

libcurl 7.81.0                September 08, 20CURLOPT_DNS_SHUFFLE_ADDRESSES(3)

Generated by dwww version 1.14 on Thu Jan 23 06:15:25 CET 2025.