To “use” an IPv6 address, you’ll want to connect to IPv6-enabled services. When connecting to IPv4 addresses, your IPv4 address will be used. (There are some exception like IPv4/6 transition techniques, but those aren’t relevant for end-users.)
To connect to IPv6 services like google.com
, you’ll need the following:
- An IPv6 address
- A DNS server that returns AAAA records (IPv6 addresses)
- IPv6-enabled software (all major browsers today)
If you have an IPv6 address, ipconfig
will print something likes this:
Wireless LAN adapter Wi-Fi:
Connection-specific DNS Suffix . : w23.lan
IPv6 Address. . . . . . . . . . . : 2a02:8071:xxxx:xxxx::247
IPv6 Address. . . . . . . . . . . : 2a02:8071:xxxx:xxxx:87a:c859:d45e:10b6
Temporary IPv6 Address. . . . . . : 2a02:8071:xxxx:xxxx:cc9b:117e:ddd6:faa4
Link-local IPv6 Address . . . . . : fe80::87a:c859:d45e:10b6%24
IPv4 Address. . . . . . . . . . . : 192.168.2.114
Subnet Mask . . . . . . . . . . . : 255.255.255.0
Default Gateway . . . . . . . . . : fe80::e091:f5ff:fe08:129d%24
192.168.2.1
If you don’t have an IPv6 address or only link-local addresses, you won’t be able to access IPv6 hosts on the Internet.
It may be caused by your ISP not supporting IPv6, your router not supporting IPv6 or a misconfiguration where the router itself gets an IPv6 address but does not receive a prefix to distribute in the local network.
If you have an IPv6 address, you can already connect to IPv6 hosts! However, most of the time, you’ll use addresses like https://www.google.com
to browse the Internet, not something like https://[2a00:1450:4001:821::200e]
. So you’ll also need a DNS server that provides IPv6 addresses for host names.
If you have an appropriate server, nslookup
’s output will look like this:
> google.com
Server: vpn-router.w23.lan
Address: 192.168.2.1
Non-authoritative answer:
Name: google.com
Addresses: 2a00:1450:4001:810::200e
216.58.214.46
If not, you could try Google DNS (8.8.8.8
/8.8.4.4
) or OpenDNS or any of the other public DNS services. Just be careful not to use any shady services.
If you’re using an up-to-date version of Firefox, Chrome, Internet Explorer, Edge, Vivaldi or whatever, you’re good to go. Go to ipv6.whatismyv6.com to verify connectivity.
Either way, you won’t gain anything special from IPv6, except for non-NAT connectivity, which isn’t important to most.
Based on the information provided we can see that there is some compatibility problem between your Ubuntu 16.04 machine and your router. That somehow breaks IPv4 connectivity.
However given that you appear to have working IPv6 connectivity you can use that and NAT64 to access IPv4-only sites as well.
The steps to achieve that setup are as follows:
- Click on the WiFi icon.
- Click on
Edit Connections...
- Choose your SSID from the list.
- Click on
Edit...
- Choose the
IPv4 Settings
tab
- Change
Method
from Automatic
to Disabled
- Choose the
IPv6 Settings
tab
- Change
Method
from Automatic
to Automatic, addresses only
- Fill in the
DNS servers
field with 2-3 DNS64 addresses
The above changes will only apply to the chosen SSID, which is the desired behavior as you likely only have the problem when connected to that specific router.
You will get the best latency if you find DNS64 addresses provided by your own ISP. But otherwise these two sites TREX and go6 Lab have 6 different public DNS64 addresses that you can use.
Best Answer
Assuming you connect to the internet to some sort of Router/Gateway, the public IP you get points to this device and not to your computer. Most Routers provide settings to forward ports to an IP address within the internal network. So if your Mac has the IP 192.168.1.2, you have to configure the portforwarding to forward port 8888 to that IP.