9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
From: geoff@plan9.bell-labs.com (geoff at plan9.bell-labs.com)
Subject: [9fans] new dial, cs and dns for ipv6
Date: Thu, 17 Mar 2011 15:42:28 -0400	[thread overview]
Message-ID: <caf0ae77134347578b474ba718d15169@plan9.bell-labs.com> (raw)

Now that the world at large is waking up to IPv6, one problem I kept
tripping over is that dial(2) tries addresses serially, and since it's
not unusual for IPv6 connectivity to be broken, and since DNS servers
randomise the order of IP addresses they return, it's quite possible
to hang for a long time trying to connect to a v6 (or, with
multi-homing, v4) address before getting to one that works.

I've just pushed out to sources a new dial implementation and changes
to ndb/cs and ndb/dns to cope better in this new world, including
updated manual pages.

The new dial dials multiple addresses concurrently and uses the first
connection that completes.  The dial change will cause dozens of
programs to be recompiled on sources later today.

ndb/cs will now return IPv6 addresses obtained from DNS AAAA records
when queried for IP addresses.  This behaviour can be disabled by
invoking cs with -4 and can be toggled by writing "ipv6" to /net/cs.

ndb/dns now has shorter time-outs and fewer UDP retransmissions, and
uses millisecond (rather than second) resolution internally for most
time-outs.  If this is a problem for you, you may want to adjust the
enum constants at the top of ndb/dnresolve.c, but beware that they can
multiply connection delays.



             reply	other threads:[~2011-03-17 19:42 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-03-17 19:42 geoff at plan9.bell-labs.com [this message]
2011-03-17 20:04 ` erik quanstrom
2011-03-17 20:23 ` cinap_lenrek at gmx.de
2011-03-17 20:57   ` cinap_lenrek at gmx.de
2011-03-17 20:59   ` geoff at plan9.bell-labs.com
2011-03-17 21:12     ` cinap_lenrek at gmx.de
2011-03-17 21:38     ` erik quanstrom
2011-03-17 22:11       ` cinap_lenrek at gmx.de
2011-03-18 23:20         ` cinap_lenrek at gmx.de
2011-03-18 23:39           ` erik quanstrom

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=caf0ae77134347578b474ba718d15169@plan9.bell-labs.com \
    --to=geoff@plan9.bell-labs.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).