IPv6 Test Pod: Intro

IPv6 Test Pod

Learning about the Future

by Craig Miller

Last fall, James Harr from the Internet2, wanted to make IPv6 rollout and adoption easier. There are some recent RFCs and Transition Technologies which do make IPv6 rollout easier, however which one, or set of technologies should one use? Thus was born the IPv6 Test Pod, a router which is connected to the IPv6 internet (via wireguard), and has several transitions technologies built in. Just connect to one of the seven (7) wifi's enabled on the router (running OpenWrt) and test your application in that specific environment.

List of Transition Technologies

Below is a table of the technologies available on the Test Pod

SSID IPv6 Transition Tech
Dual-Stack Traditional IPv4 & IPv6
IPv6-Only None, IPv6 only
IPv6-Only-D64 DNS64
IPv6Only-DP64 DNS64 and PREF64
IPv6Only-P64 PREF64
IPv6Mostly-DP64 DNS64, PREF64 & DHCPv4 Option 108
IPv6Mostly-P64 PREF64 & DHCPv4 Option 108

DNS64

Typically DNS64 works in tandem with NAT64. NAT64 does the actual IP address translation from IPv6 to IPv4. This permits hosts without IPv4 to connect to the IPv4 internet.

DNS64 is a special DNS server which when a Domain Name lookup occurs, and there is no AAAA record (an IPv6 address record) the DNS64 synthesizes a AAAA record by encoding the IPv4 address in the last 32 bits of the IPv6 address (in the synthesized AAAA record).

DNS64 was standardized with RFC 6147

PREF64

PREF64 is in a Router Advertisement (RA) which tells the host the IPv6 address of the NAT64 service. There is a Well Known Address (WKA) of 64:ff9b::/96 but existing large organizations may want to use their own addressing block for this service. PREF64 is standardized in RFC 8781

DHCP Option 108

The IPv6 preferred option is provided by a IPv4 DHCP server, which tells the host to not use IPv4 for a duration of time (usually 1800 seconds). This is commonly referred to as IPv6 Mostly as it allows hosts which do not support IPv6, such as many IoT devices to continue to use IPv4, while most of the hosts (Windows, Mac, Linux) use IPv6-only.

The IPv6-Only Preferred Option for DHCPv4, or Option 108 was standardized in RFC 8925

A closer look at the IPv6 Test Pod SSIDs

Now armed with some of the transition technologies, let's look a bit deeper into what is being provided by the IPv6 Test Pod.

Backhaul IPv6

Each Test Pod has a unique Globally Routable Prefix, and connectivity back to the Internet2 host site, with Native IPv6 connectivity to the Internet. James Harr has to create a slice of IPv6 address space for each Test Pod.

Dual-Stack

Dual-Stack has been the transition standard for the past 10-15 years. One runs both IPv4 and IPv6 in their network. If an app needs one or the other protocol, it just works.

Of course, this means that the network administrator is managing two networks, so the work-load has just doubled.

IPv6-Only

Just that, there is no IPv4 on the network. There is no transition technology deployed. You hosts will only be able to connect to IPv6 servers. For major services such as Google, Facebook, Bing, and makiki.ca, there will be no problem, since those services are also offered over IPv6.

But, sadly, there are many services which are offered only over IPv4. The BC Government hasn't yet learned about IPv6. Even the Federal Government is supporting IPv6 with canada.ca

Why would this be attractive? For the IT staff it means back to just one network to have to support. But today, IPv6-only without transition technologies is not the answer.

IPv6-Only-D64

Similar to the previous, IPv6-only, only there is a NAT64/DNS64 service running. This allows IPv6-only hosts to connect to IPv4 services via NAT64.

The advantage of this scenario is that IT only has one network to maintain, and as more and more devices use IPv6, the DNS6/NAT64 utilization will decrease over time.

I have used this kind of network at my house for a few years, and it just works.

IPv6Only-DP64

Similar to IPv6-Only-D64, but with the addition of PREF64. By default the IPv6 Test POD sends out the Well Known Address (WKA or 64:ff9b::/96) in the PREF64 field of the RA. One would have to sniff with wireshark to see that the PREF64 address was in the RA.

By default the host will use a default router to send a packet to the Well-known address. But you could also use a Public DNS64/NAT64 service, and adjust your DNS/PREF64 info accordingly.

The IPv6 Test Pod uses an internal DNS64/NAT64 service in the OpenWrt router.

IPv6Only-P64

This is similar to IPv6-Only, but adds PREF64 in the RA

IPv6Mostly-DP64

Recently, this kind of network has become preferred over Dual-Stack. It is a Dual-Stack network with the DHCPv4 server sending out Option 108. This allows IPv4 devices on your network (think: security cameras, badge readers, ESP32s), but allows IPv6 capable hosts to use IPv6-only.

IPv6Mostly-P64

This network has PREF64 in the RA which can be used with an external NAT64 service, and Option 108, which disables IPv4 on hosts that support IPv6-only.

IPv6 Test Pod Requirements

Any OpenWrt router can be configured as an IPv6 Test Pod, given the following requirements:

  1. Have at least 16 MB of Flash storage. Examples are: TP-Link AX23, and GL-iNET GL-AR750
    1. More storage is always good
  2. Running either 23.05.x or 24.10.x OpenWrt software (it has been tested on both)
  3. If the Pod is in an IPv4-only network, a prefix, and wireguard config must be coordinated via the Internet2 organization.
    1. If the Pod is setup in a dual-stack network, then you can test the transition technologies with the Internet2

The IPv6 Test Pod

Because the expansion of the Internet can only be via IPv6 (we have run out of IPv4 addresses), it is time to start testing which IPv6 network technologies will work for you and your applications. The IPv6 Test Pod is a tool to quickly determine which IPv6 network transition technology is best for your network.


Notes:

19 July 2025