History log of /external/android-clat/dns64.c
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
0ec5dfa1da6a97532dc8cca825bae4edfb7d3dce 22-Sep-2014 Erik Kline <ek@google.com> Simplify and always retry DNS64 prefix discovery.

- Only request AAAAs for the IPv4-only hostname, since that's
all the information being used. Perhaps at some point in the
future when _validation_ of the IPv4 address(es)'s presence
within the IPv6 address(es) is being done this should be
revisited.

- Only use the first AAAA returned to find the DNS64 prefix.
It's not clear how to properly resolve any potential DNS64
prefix conflicts anyway.

- Re-try DNS64 prefix discovery on any type of error.
If clatd was started (presumably an IPv6-only network), retry
DNS64 prefix discovery with exponential backoff. Some
"permanent" errors can be indistinguishable from transient
errors (e.g. receiving an erroneous SERVFAIL from a DNS
resolver, ...).

- Fix-up back-off logic to not sleep 128 then 120, 120, ...
:-)

Bug: 17569702
Change-Id: I226ea7772cd7c88d2b60153ef76e5435400e11aa
/external/android-clat/dns64.c
a1c871c8efad6c0b69e27d3b85e82a27e282b8be 30-May-2014 Paul Jensen <pauljensen@google.com> Make DNS request for plat prefix detection network specific.

When plat prefix detection is done on a non-default network it
must use the network specific version of getaddrinfo() so the
plat prefix corresponds to the particular network. The network
is specified to clatd via a NetID command line argument.

Change-Id: I77a47b24e68c7786f790974f05787a40a4934af5
/external/android-clat/dns64.c
baf62997b598ac38a99fd30419ccf7c109ffb3bc 01-Mar-2013 Lorenzo Colitti <lorenzo@google.com> Make clatd a bit more robust when started by netd.

1. When started from netd, DNS lookups (used to detect the NAT64
prefix) fail because ANDROID_DNS_MODE=local. Unset it.
2. Only add the SIGTERM handler just before starting the event
loop. Otherwise, if clatd hangs before the event loop is
started (e.g., when #1 happens), it can't be stopped.

While I'm at it, add a couple of logging statements.

Change-Id: Ie24b37e34b729ce6cd3769b5d64348f2c1b9627d
/external/android-clat/dns64.c
a45056e35c1af2a0f0a6eed258fd5fdf4846a79f 23-Mar-2012 Daniel Drown <dan-android@drown.org> android clat service

This software provides the nat 4->6 translation needed for the "clat" part of
the 464xlat standard. It is needed for better IPv4 application support while
on an IPv6-only mobile network connection using 464xlat's nat64 (such as
T-Mobile's IPv6 trial).

A general diagram of how 464xlat works:
http://dan.drown.org/android/clat/Clat-Plat.png

Depends-on: I2392f8127dcd90d16b0f20ff31bcc5aa096db464
Change-Id: If2bc6916fc66fd4bca7cc241c83cfae839b82e15
Signed-off-by: Daniel Drown <dan-android@drown.org>
/external/android-clat/dns64.c