Oh IPv6, Where Art Thou
Nov 1, 2015Per Knytt

Summary
This post details the technical challenges and solutions involved in enabling IPv6 support for the Spotify Android client. Key technical contributions include extending the client's internal IP-address type to support IPv6, fixing assumptions about IP address size, rebasing and updating existing IPv6 patches, and modifying the hostname resolution strategy to rely on the OS's default address selection (RFC3484) rather than random selection to avoid unstable CLAT connections. A simple IP address blacklist was also implemented for failed connections. The post also announces the upcoming rollout of IPv6 support for the iOS client.