Uber recently announced it’s deploying IPv6. The company has made the decision to deploy IPv6 to support the company’s growing infrastructure, as explained in the engineering team’s announcement where they detail three major areas of infrastructure they need to update – network architecture, software support, and vendor support.
From the post:
“Three key factors made it clear to us that deploying IPv6 across our networks was going to be critical for maintaining our architecture’s stability at scale:
- Generous IP allocation: The size of our network has grown rapidly over the past few years, supporting thousands of server racks in our data centers. Each rack is allocated a /24 IPv4 subnet out of our Request for Comment (RFC) 1918 IP space, which includes 256 IPv4 addresses per rack. In most of our rack deployments, we host no more than 48 servers.
- Resource limitation: At this stage in our growth, we have used more than 50 percent of our 10.0.0.0/8 IPv4 subnet for internal usage. If we do not transition to IPv6, it is possible that our RFC1918 (the Internet Engineering Task Force (IETF) memorandum on methods of assigning of private IP addresses) space could be exhausted in the foreseeable future.
- Overlapping IP addresses: Traditionally, Uber’s networks defined their own IP addresses for their resources. When Uber began merging with other companies, some IPv4 addresses overlapped between two internal networks of different organizations.”
The post explains in some detail how they’re working to update their network architecture including hardware, automation, and network design; updating vast amounts of code through collaborative teamwork; and working with vendors to ensure IPv6 support across the board.
Kudos to Uber for managing this transition and sharing their experiences with others!
Also, in case you missed it yesterday, there’s a new State of IPv6 Deployment report out with tons of statistics, insights, and recommendations. It might be the perfect tool to help you make the case for IPv6 if you’ve been struggling to get the go-ahead.