I recently set up a tunnel from my AirPort Extreme to Hurricane Electric so I can access hosts using IPv6. I had done this previously using m0n0wall and documented it so others could follow in my footsteps. This post does the same but for AirPort Extreme.
The first step is to create an account with Hurricane Electric's Tunnel Broker service. From there select Create A Regular Tunnel. Enter your IP address and then submit the form. Once the tunnel is created click Tunnel Details. The page should look something like this.
Now open AirPort Utility and go to Advanced ➔ IPv6. For IPv6 Mode select Tunnel. From there you want to change Configure IPv6 to Manually. This will give you a couple of text fields which you can fill out using values from the tunnel detail page. Here is my configuration.
In other words, here is the mapping from Tunnel Broker to AirPort Utility.Server IPv4 address ➔ Remote IPv4 Address
Client IPv6 address ➔ WAN IPv6 Address
Server IPv6 address ➔ IPv6 Default Route
Routed /64 ➔ LAN IPv6 Address
To make this even more useful, Hurricane Electric runs a nameserver that supports Google over IPv6. If you set this as your nameserver you will receive AAAA records for certain Google properties. To enable this, in AirPort Utility go to Internet ➔ TCP/IP and under DNS Server enter the address found in Tunnel Broker's Anycasted IPv4 Caching Nameserver field.
To test that everything worked you can try pinging Google.$ ping6 google.com
PING6(56=40+8+8 bytes) 2001:470:e822::21f:5bff:fe32:7fc9 --> 2001:4860:8005::63
16 bytes from 2001:4860:8005::63, icmp_seq=0 hlim=55 time=8.619 ms
16 bytes from 2001:4860:8005::63, icmp_seq=1 hlim=55 time=9.442 ms
16 bytes from 2001:4860:8005::63, icmp_seq=2 hlim=55 time=9.336 ms
16 bytes from 2001:4860:8005::63, icmp_seq=3 hlim=55 time=8.963 ms