Broken IPv6 clients Lorenzo Colitti [email protected]

What's the problem?

Lorenzo Colitti

June 2010

What's the problem? The canonical behaviour for dual-stack applications is itojun's "Implementing AF-independent application" Use getaddrinfo() to resolve all addresses Connect to them in order, taking the first that works getaddrinfo() usually returns IPv6 first Application tries IPv6, falls back to IPv4 AAAA records fail / timeout one by one, then try IPv4 How bad can it get?

Lorenzo Colitti

June 2010

Failure modes Host-local error No IPv6 address, no default route, ... Fast, no problem if application falls back (e.g., not Java) Network error Router replies to SYN packets with unreachables Network spoofs RST packets Blackholing Misbehaving router, packet loss in core MTU holes Misconfigured firewalls dropping ICMP

Lorenzo Colitti

June 2010

OS behaviour Local failure, RST: fast Unreachables: OS-dependent timeout Windows: 20 seconds Mac: 4 seconds Linux: instant Blackholing similar (but Linux timeout is ~3 minutes) MTU holes: only some TCP stacks recover (in seconds) Even if failure is fast applications may have other limits e.g., MSIE >= 7 gives up completely after 5 attempts

Lorenzo Colitti

June 2010

What's the impact? www.google.com can have up to 6 AAAA records Mac: 24 seconds Windows: 2 minutes Linux: either instant or > 18 minutes MSIE >= 7 won't work at all (gives up after 5 attempts) Needless to say, this is unacceptable Mitigate the damage by publishing only one AAAA Still a 20-second timeout on Windows Would you like to wait 20 seconds every time you want to do a Google search?

Lorenzo Colitti

June 2010

What's going wrong?

Lorenzo Colitti

June 2010

Home gateway behaviour Routers may turn on 6to4 and go through broken relays At best, it will cause a latency increase Relay may introduce packet loss or refuse to route packets not originating from 2002::/16 This will break things even if there is real IPv6 connectivity! Routers may turn on 6to4 with private addresses This will never work ... but some implementations do it anyway

Lorenzo Colitti

June 2010

Host behaviour Hosts may prefer 6to4 router over native IPv6 router e.g., if 6to4 router sends RAs more frequently Host may prefer 6to4 address over IPv4 address Not using RFC3484-compliant getaddrinfo() Using private addresses Known issue in RFC 3484 Similar considerations for Teredo High setup times, uncertain reliability Most implementations know better than this Firewalls may block or break IPv6 (e.g., blocking ICMPv6)

Lorenzo Colitti

June 2010

My favourite

Home gateway sending out an RA of ::/64 Host ignoring the unreachables 24-second timeout Lorenzo Colitti

June 2010

Measuring brokenness

Lorenzo Colitti

June 2010

Methodology Similar to what we and others have done before Ask browser to connect to IPv4 and dual-stack hosts using invisible element on web page A few tweaks: Use long-lived websites (e.g., YouTube, gmail) Use Javascript to make multiple requests in session Allows other measurements: MTU, glue, ... Have a sentinel request after a given time Good if user disconnects between two requests Use one-time hostnames Uniquely identifies / associates measurements Finds out if browser asked for AAAA, A and when Prevents browsers caching Javascript Lorenzo Colitti

June 2010

Data set Reasonable data set: Currently about 10M samples per day Web requests only, no DNS yet No statistical analysis yet, but daily numbers are stable IPv4 also has non-zero failure But difference between dual-stack and IPv4 is clearly visible Entire Internet: 0.09% breakage

Lorenzo Colitti

June 2010

Results per network and OS Large ISP A: 0.064% Large whitelisted ISP: 0.03% Spread with IPv4 is less significant than above Whitelisting masks brokenness Different OSes have different numbers. For large ISP A: All clients: 0.064% Excluding Mac: 0.014% Mac prefers 6to4 over IPv4

Lorenzo Colitti

June 2010

How do we fix this?

Lorenzo Colitti

June 2010

How do we fix this? Router problems Need router upgrade Users don't typically upgrade home gateways Firmware not upgradable Even if they did, hard to know what the problem is Host problems Workarounds in individual applications (e.g., Chrome) To fix all apps, need OS upgrade OS upgrade can also work around router problems

Lorenzo Colitti

June 2010

Host fixes draft-wing-http-new-tech-00 ("Happy eyeballs") More general, perhaps more complex solution Needs to be implemented in every application Simultaneous parallel connections Mac OS X plan of record Can't fix MTU holes Probing on attach Fetch > 1280-byte object over HTTP over IPv6 Warn users or even disable IPv6 OS-wide on failure Similar to what recent versions of Windows do to detect captive portals

Lorenzo Colitti

June 2010

Questions? Lorenzo Colitti [email protected]

Broken IPv6 clients

The canonical behaviour for dual-stack applications is ... Host may prefer 6to4 address over IPv4 address. Not using ... using invisible element on web page.

146KB Sizes 3 Downloads 204 Views

Recommend Documents

Measuring IPv6 usage at web clients and DNS resolvers
Robert Kisteleki. Measuring IPv6 usage at web clients and DNS resolvers. Messenger today: Róbert Kisteleki [email protected]. Actual work done by: Emile Aben.

Measuring IPv6 usage at web clients and DNS resolvers
Let's measure IPv6 connectivity of end-user combined with the ISP infrastructure .... providers of DNS services causing. clientAS != resolverAS. • At least 10% of ...

ipv6.PDF
IPv6 Operations and Deployment Scenarios over IEEE 802.16 Network โดย Myung-Ki ... งเดิมเป นโครงข ายไอพีในจังหวดภั ูเก็ต. Page 2 of 2. ipv6.PDF. ipv6.PDF.

IPv6.pdf
identificados por DNS (Domain Name Server) que traducen dominios a ... subred en IPv6 siempre es de 64bits. Page 3 of 5. IPv6.pdf. IPv6.pdf. Open. Extract.

IPv6 Security
Data = link-layer address of B. A and B can now exchange ..... Lance Spitzner http://www.securityfocus.com/archive/119/303782/2002-12-15/2002-12-21/0 ...

Hacking IPv6 Networks
Identifies the Internet Protocol version number (“6” for IPv6). ▫ It should match ... No additional “Quality of Service” (QoS) feature in IPv6, sorry. ▫ “Traffic ..... ping6 –s 1800 2004::1 ..... BSD-derived and Linux implementations

IPv6 Whitelist Operations
Receive a list of resolvers and/or prefixes. 2. Attempt to ... Convert to ASN(s), complete list of IPv4 and IPv6 prefixes. 4. Verify mutual ... impact analysis of proposed new whitelist entries ... Implementation (software and processes) may be a.

Filthy Rich Clients
Nov 17, 2008 - Copyright 2008 Adobe Systems Incorporated. All rights reserved. Why Flex? ▫ Filthy rich capabilities come built-in with Flex. ▫ Rich graphics.

www_swissre_com-clients-newsletters ...
Swiss Re's UK Life & Health Claims team arranged a web-based discussion group with Professor. Peter White to describe ... SHARE PRINT TO PDF EMAIL.

Filthy Rich Clients
Nov 17, 2008 - Page 1 ... They make the users actually enjoythe experience. Filthy Rich Clients: ..... My Flex blog: http://graphics-geek.blogspot.com. ▫ Demos ...

Multicast based fast handoff in Hierarchical Mobile IPv6 ...
Handoff-Aware Wireless Access Internet Infrastructure. (HAWAII) [15]. ... home agent by sending another BU that specifies the binding between its home address ...

Understanding Current IPv6 Performance: A ...
performance study based on both large scale TCP and. ICMP traffic ... characterize the performance of IPv6 Internet by data ... Then we perform large scale data ..... AEARU Workshop on Web Technology and Computer. Science, Oct 2003. 14.

IPV6 x IPV4.pdf
Orientadores: Prof. M. Sc. André Calazans. Barreira e M. Sc. Gustavo Fleury. Soares. Page 3 of 122. IPV6 x IPV4.pdf. IPV6 x IPV4.pdf. Open. Extract. Open with.

Are you ready for IPv6? - GitHub
Page 5 .... IPv6 Support in Boost.Asio. Resolver: ○ Obtain endpoints corresponding to host and service names. ○ Usually uses DNS ...

IPv6 Route Redstribution Considerations.pdf
IPv6 Route Redstribution Considerations.pdf. IPv6 Route Redstribution Considerations.pdf. Open. Extract. Open with. Sign In. Main menu. Displaying IPv6 Route ...

IPv6 Transition for VzW
Each device will have Two IP Addresses. – VoIP (v6 Always On). – Internet/ASP (v6 or v4) ... competence. • Training is critical. – Academic. – Web-based classes.