I like to run a game server periodically, and to help ensure that the address is predictable for other players, I have created a DNS (A) entry to map a well-known DNS name to my public IPv4 address, which doesn't change too often. I have also configured my LAN to route all traffic for that game's TCP & UDP port numbers to my internal IPv4 address. And I have configured my router to associate my internal IPv4 address with my MAC address so that it doesn't change. My computer continues to use DHCP to get an internal IPv4 address, and the router hands out the same address every time. All this works well for IPv4.

I'm a little confused about how something similar should be accomplished with IPv6. I added an "AAAA" DNS record for the same DNS name to point (I think) directly to my computer's IPv6 address (yay IPv6!). But my IPv6 address is changing frequently, I think. There doesn't appear to be a way on my TP-LINK router to associate my MAC address to a static IPv6 address (although I know it supports IPv6 because Google told me my IPv6 address, and all the IPv6 tests pass at test-ipv6.com).

So I figure I'm stuck in my old IPv4 ways and need to understand something new about IPv6 that I'm missing. Should I simply go to my IPv6 network settings on my desktop and change IPv6 from DHCP to a static address? Is there another way to make my IPv6 address not change while leaving my computer set to DHCP for IPv6?


There's a good chance you already have a 'fixed' IPv6 address. If you examine your running configuration, with, eg:

c:\> ipconfig
Windows IP Configuration
Ethernet adapter Local Area Connection:
Connection-specific DNS Suffix . : lab
IPv6 Address. . . . . . . . . . . : 2001:db8:21da:7:713e:a426:d167:37ab
Temporary IPv6 Address. . . . . . : 2001:db8:21da:7:5099:ba54:9881:2e54
Link-local IPv6 Address . . . . . : fe80::713e:a426:d167:37ab%6
IPv4 Address. . . . . . . . . . . :
Subnet Mask . . . . . . . . . . . :
Default Gateway . . . . . . . . . : fe80::20a:42ff:feb0:5400%6
IPv4 Default Gateway  . . . . . . :

I don't have an example for linux/Mac OSX in front of me, but I believe the line to look for is "global temporary dynamic" vs "global dynamic".

Now, the short answer, is that the address you see on windows as "IPv6 Address", and on linux/OSX as "global dynamic", is for your purposes, a fixed address - it won't change unless you change your network device (well, MAC address), or change network.

To explain what you're seeing when you connect to test-ipv6.com, you should see the same address listed as "Temporary IPv6 Address" in Windows, and "global temporary dynamic" in linux/OSX. This is "IPv6 privacy extensions" - an attempt to preserve your anonymity by using temporary, random addresses for outbound connections. So while you're always reachable at your permanent address, the temporary address you expose by making outbound connections, won't last long.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.