IPv6 failover?

David Shaw dshaw at jabberwocky.com
Thu Aug 4 02:44:18 CEST 2005


On Wed, Aug 03, 2005 at 08:18:35PM -0400, Jason Harris wrote:
> On Wed, Aug 03, 2005 at 07:25:41PM -0400, David Shaw wrote:
> 
> > The thing is, if you have a --with-libcurl build, this failover would
> > need to happen within curl itself.  What happens if you do:
> >   curl http://keyserver.linux.it:11371/pks/add
> > 
> > on the command line.  Obviously it won't do anything keyserver-wise,
> > but does it manage to connect?
> 
> It does:
> 
>   %curl -v http://keyserver.linux.it:11371/pks/add
>   * About to connect() to keyserver.linux.it port 11371
>   *   Trying 2001:1418:13:10::1... Failed to connect to 2001:1418:13:10::1: No route to host
>   * Undefined error: 0
>   *   Trying 62.94.26.10... connected
>   * Connected to keyserver.linux.it (62.94.26.10) port 11371
>   [snip]
> 
> Looking at http://curl.haxx.se/libcurl/c/curl_easy_setopt.html ,
> this might do the trick:
> 
>   curl_easy_setopt (..., CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4); 
> 
> if any connection, which always seems to prefer IPv6, doesn't
> at first succeed.

I'm not sure.  CURL_IPRESOLVE_V4 is documented to force the connection
to IPv4.  That is, it'll ignore IPv6 addresses altogether, rather than
try to connect and then fail over within curl.  What happens if you
add a "-4" to the command line above?  That sets CURL_IPRESOLVE_V4.

Also, going back to the original problem, can you send me the output
when you try fetching a key with "--keyserver-options debug" set?

David



More information about the Gnupg-users mailing list