Windows Server 2008 IPv6 — The Future of Internet Protocol

The Future Is … Well, Yesterday … But Now We’re Ready!

A long time ago, in a galaxy not so far away, there was the Internet.

The Internet was a network that allowed information to be shared between computers regardless of their location. It was pretty cool.

Of course, you had to know Unix in order to do anything useful, and getting a file meant using the command-line FTP command (and hopefully remembering to set your type to binary when necessary).

Frankly, there were only a few people capable of doing such things, but nevertheless, the designers of this revolutionary Internet-thingy built an addressing scheme with TONS of room for computers to be added.

They called it IPv4.

Bill Gates once famously said that 64K was more memory than anyone would ever need. It’s hilarious today considering you can’t even run Notepad in 64K and Windows Server 2008 requires a minimum of 1GB of RAM.

Still, it can be hard to see the demands of the future. A similar fate befell those intrepid pioneers of the Internet, who in a slightly wiser move, created a way to address computers using the now very familiar dotted notation.

Theoretically, the IPv4 specification could support up to 4.2 billion different machines. Considering that less than 10,000 computers were connected to the Internet in 1995, this probably seemed like plenty of space. Times change.

Having just one computer used to be a big deal for the average family. Now, most people in America have at least one, and plenty of people have two, three, or more. Not to mention, all the other countries and their multitudes of users. And, that doesn’t even include the vast number of servers out there, plus all those newer must-have gadgets that need a way to connect to the Internet.

In the end, like Bill Gate’s 64K of memory, the IPv4 address space has proved to be too small.

Welcome to IPv6

None of this is a surprise to the engineers that help set the standards for the Internet. However, considering that IPv4 has been widely adopted across virtually every company, product line, hardware vendor, and country in the world, changing the standard is not small matter, and certainly not something anyone wants to have to do again in this lifetime.

Which brings us to the IPv6 standard and Windows Server 2008.

None of this is a surprise to you either. As a competent systems administrator, you know all about IP addressing and the difficulties involved in getting fixed IP addresses for your external facing servers.

You’ve seen the forms and the ridiculous third-degree you get from your ISP when you want another address. You know that IPv6 actually came on Windows Server 2003, but chances are you haven’t implemented it yet. After all, it didn’t really seem all that necessary and why make extra work for your team?

With Windows Server 2008, things are different. For starters, unlike in Server 2003, in Server 2008, IPv6 comes installed and enabled by default.

In Server 2003, IPv6 was a separate protocol. In Server 2008, IPv6 is part of the standard TCP/IP stack in compliance with current standards. (In order to help with the transition to IPv6, IP stacks handle both IPv4 and IPv6 packets.) So, you couldn’t even uninstall IPv6 if you wanted to. Not that you would want to because the stack will work perfectly fine with either IPv4 or IPv6.

Actually, as Microsoft prepares for the future, many of its core server features are already starting to support IPv6 and using them on your current IPv4 network actually involves backwards compatibility mechanisms instead of the other way with Server 2003 using compatibility mechanisms to handle IPv6.

You’ve probably read elsewhere about IPv6, but here is a quick refresher.

  • IPv6 addresses are 128 bits written as eight sets of four 16-bit hex digits
    • Looks like this: 2001:db8:bc92:0000:0000:1293:91c2:0012
  • The IPv6 header is always exactly 40 bits.
    • This is huge for that overburdened network hardware that spends a lot of computing power detecting where the IPv4 header ends.
  • IPv6 supports up to 3.4 x 1038 addresses and the addresses will be hierarchical, meaning that the start of an address will give some indication of its location.

See Your Introduction to IPv6 for a more detailed overview.

IPv6 in Windows Server 2008

So, how exactly does IPv6 figure into a Windows Server 2008 environment?

For starters, the days of memorizing IP addresses is pretty much over. Right now, one of your goto moves in troubleshooting is to try and connect via IP address. You’ll need a list if you want to do that in IPv6, so you need to make sure your name resolution is rock solid. Which brings us to WINS.

Since the days when Microsoft was only fit for tiny networks, WINS has been around as a way to resolve simple names on small networks. Though WINS was better than the old computer browser, it was still a bit of a kludge on an otherwise solid platform. That dinosaur is finally going away, replaced by the GlobalName Zone or GNZ.

The good news is that most of your same tricks for IPv4 will work seamlessly with IPv6.

Need to PING a computer? No problem. Same command, same results, actually, better results. To PING by address, no change is needed. To PING by name, you’ll need to throw in the ipv6 switch. But, you also get additional switches enabled by the new header including the ability to do a round-trip traceroute to see not only how the traffic gets there, but also how it gets back.

Of course, any transition this big won’t be a no-brainer. In order to use IPv6, your routers will have to support it. If they aren’t ancient, this won’t be too much of a problem since the router companies have been building in IPv6 longer than anyone else.

Also, your firewalls and intrusion detection systems will need to support the new protocol. This is where things get interesting.

Because of the new header, the entire protocol stack can be filtered against, so you can get even more granular with your rules and block out some of the current tricks. You’ll also have to get a pool of IPv6 addresses and configure your DNS and DHCP servers to handle those.

Fortunately, the designers of IPv6 included several migration standards as well, all fully supported in Server 2008.

For example, a tunneling protocol allows for IPv6 packets to be encapsulated inside IPv4 packets so that when they hit an IPv4 network, they sail along as planned.

In short, there is a lot of work ahead, but it seems that Windows Server 2008 will be fully up to the task. That is, whenever you are.

Comments