To be certain that the IPv6 protocol is being used to access a website, substitute an IPv6 literal address surrounded by square brackets in the address bar in place of a domain name. For example:
http://ipv6.test-ipv6.com
becomes
http://[2001:470:1:18::115].
For additional information, refer to Request For Comments (RFC) 3986 “Uniform Resource Identifier (URI): Generic Syntax".
(Caution: This substitution can sometimes fail. Explanation of possible reasons for this are available. If you encounter problems, review the Broken User FAQ article found on that website for several possible explanations. For even more possible explanations, review this article on the ARIN IPv6 wiki.)
Most non-Apple browsers and IPv6 enabled applications attempt to use IPv6 before IPv4 if the local system and the remote server have v6 addresses. Here’s why debugging IPv6 web connectivity with Safari was historically difficult. It was only with the release of Safari 2.0 with MacOS 10.4 Tiger circa 2005 that Safari gained full IPv6 support; until that release it tried IPv6 first and then fell back to IPv4 if IPv6 didn’t work.
Prior to 0.8, Firefox did not support IPv6. Since then, IPv6 has been supported by default and is preferred over IPv4. Firefox also requests AAAA DNS records even when there is no IPv6 connectivity.
To be certain that the IPv6 protocol is being used to access a website, substitute an IPv6 literal address surrounded by square brackets in place of a domain name. For example.
http://ipv6.test-ipv6.com
becomes
http://[2001:470:1:18::115].
For additional information, refer to Request For Comments (RFC) 3986 “Uniform Resource Identifier (URI): Generic Syntax".
(Caution: This substitution can sometimes fail. Explanation of possible reasons for this are available. If you encounter problems, review the Broken User FAQ article found on that website for several possible explanations. For even more possible explanations, review this article on the ARIN IPv6 wiki.)
To disable IPv6 support in Firefox:
1. In the Location bar, enter about:config. Then press the Enter or Return key
2. If the "This might void your warranty!" warning page appears, click I'll be careful, I promise!
3. In the Search preference name field, type network.dns.disableIPv6
4. network.dns.disableIPv6 should now appear in the list of preferences. Click on the Toggle button to set its value to true
5. Close the preferences
To re-enable IPv6 support in Firefox after it has been disabled, repeat steps 1 through 3 above. Then:
4. Set the value of network.dns.disableIPv6 to false
5. Check the value of network.dns.ipv4OnlyDomains. If it contains any domain names, delete them.
6. Close the preferences
Extensions: IPvFoo is one of several extensions that are now available for FireFox. After you install iPvFoo, some combination of 4, 6 and/or "?" will appear at the top of the screen near the menu button (
). Clicking on it will cause the IP address(es) of the web page you are viewing to appear. To install iPvFoo, open the Extensions manager, enter "IPvFoo" (without the quotes) in the Find more add-ons box, and click on IPvFoo. FireFox has many other extensions that are specific to IPv6.
The Java development environment and language originally developed by Sun Microsystems, Inc. is inherently Internet Protocol (IP) agnostic, beginning with good support for Solaris and limited support for Linux in version 1.4.2, and limited support for Windows XP SP1 (or later versions of Microsoft operating systems) in version 1.5. Documentation for the Java Development Kit (JDK) 19 is available here. See Oracle's earlier Networking IPv6 User Guide for JDK 8 and their Networking Properties for JDK 19 for additional details.
Improved support for IPv6, including multicast, was added in JDK 7.
Packages supplied as part of Java, such as java.io and java.net, support both IP version 4 (IPv4) and IPv6 natively.
Because of the limited support provided by early versions of Java, a few developers “turned off” IPv6 support in their Java apps. To re-enable IPv6 support in such an older app, some java system properties need to be changed. First, make sure that the following properties are set to these values:
-Djava.net.preferIPv4Addresses=false
and
-Djava.net.preferIPv6Addresses=false
If this does not enable the desired IPv6 access, then set
-Djava.net.preferIPv6Stack=true
although this will “turn off” IPv4 support altogether!
To enable IPv4 (only) access, set
-Djava.net.preferIPv4Stack=true
Kerberos Version 5 (V5) (also known as Kerberos 5) documentation is available here from the Massachusetts Institute of Technology (MIT).
Kerberos 5 software since version 1.3.5 has had extensive (but not complete) support for Internet Protocol version 6 (IPv6). A summary of the status of IPv6 support in versions of Kerberos released prior to 2010 is available here.
Additional work has been done by various groups within the Department of Defense (DoD) High Performance Computing Modernization Program (HPCMP) to incorporate Public Key Infrastructure (PKI) support for DoD Common Access Cards (CAC). For additional information, please contact ipv6-team [at] dren.mil.
Major Kerberos 5 applications support IPv6 natively (kinit, kftp, kpasswd, ktelnet, pkinit, pkpasswd, et cetera). kadmin will only support IPv6 in Kerberos 5 version 1.9 or newer.
The following are additional notes on Kerberos 5 and IPv6:
- Each realm Key Distribution Center (KDC) server must have IPv6 addresses added to its keytab file to be accessible via IPv6 (just as IPv4 addresses are required to be accessible via IPv4).
- The application clients and servers as distributed by MIT all support IPv6. They all will try the IPv6 address for a server first; if they cannot connect, they will fall back to the IPv4 address.
(Note: As of June 15, 2022, the Internet Explorer (IE) 11 desktop application is no longer supported on certain versions of Windows 10, any version of Windows 11, or on later versions, as explained by this article. That article also describes ways to enable Internet Explorer mode in any version of Edge.)
To be certain that the IPv6 protocol will be used to access the website, substitute an IPv6 literal address surrounded by square brackets in the uniform resource identifier (URI) in place of a domain name.
For example,
http://ipv6.test-ipv6.com
becomes
http://[2001:470:1:18::115].
For additional information, refer to Request For Comments (RFC) 3986 "Uniform Resource Identifier (URI): Generic Syntax".
(Caution: This substitution can sometimes fail. Explanation of possible reasons for this are available. If you encounter problems, review the Broken User FAQ article found on that website for several possible explanations. For even more possible explanations, review this article on the ARIN IPv6 wiki.)
If it is necessary to specify a port number as part of the URL, it would follow the IPv6 literal address (as is the case with IPv4 addresses).
For example, http://ipv6.test-ipv6.com:443 becomes http://[2001:470:1:18::115]:443.
Extensions: IPvFoo is one of several extensions that are now available for Edge and Explorer on the Chrome Web Store. After you install (and then enable) the iPvFoo extension, some combination of 4, 6, and/or "?" will appear near the three dots (...) in the upper-right corner of your browser window. Clicking on it will cause the IP address(es) of the web page you are viewing to appear. Adding an extension to Microsoft Edge or Explorer from the Chrome Web Store is described in this article.
Note 1: Neither Edge nor IE can browse IPv6 websites if configured to use a proxy server that does not support IPv6. When Edge or IE is configured to use a proxy server, name resolution requests for websites are forwarded to the proxy server. Unless the proxy server is IPv6-enabled, proxy-based requests for local or remote IPv6 web pages will not work.
To disable use of a proxy server:
1a. Windows 11: Tap or click the Start icon at the bottom of the screen. Enter Internet Options in the Search Bar window at the top of the screen. Tap or click on the Internet Options icon that appears.
1b. Windows 10 and earlier versions: Enter Internet Options in the Search Bar window in the lower left-hand corner of the screen. Tap or click on the Internet Options icon that appears.
2. An Internet Properties dialog box will appear. Tap or click the Connections tab, then tap or click LAN Settings.
3. In the Local Area Network (LAN) Settings dialog box, clear the Use a proxy server for your LAN checkbox and tap or click OK.
4. Tap or click OK to save changes to Internet Properties dialog box and exit.
Note 2: If for some reason you need to use a Universal Naming Convention [UNC] path name that must include an IPv6 literal address to test access to a web page on a shared folder, be forewarned that the colon is an illegal character in a UNC path name. For just this reason, Microsoft has implemented a transcription algorithm that uses a second-level Internet domain, ipv6-literal.net. (The ipv6-literal.net domain is registered to Perfect Privacy, LLC, but don't let that hinder you.) IPv6 addresses may be transcribed by substituting a dash for each colon, substituting the letter “s” for each percent sign, appending a period and the ipv6-literal.net domain, as follows:
2001:0db8:85a3:08d3:1319:8a2e:0370:7348
would be written as
2001-db8-85a3-8d3-1319-8a2e-370-7348.ipv6-literal.net
and the resulting URI will then be directly resolved by Microsoft software without DNS queries to any nameservers. When a zone index is part of a link local IPv6 address, transcribe the address in a similar fashion as follows:
fe80::3%1
would be written as
fe80--3s1.ipv6-literal.net.
Note 3: Access to web pages on UNC path name-specified shared folders with an included IPv6 or IPv4 literal address is typically prohibited by Edge and most versions of IE unless the shared folder is explicitly added to the Trusted sites zone under the Security tab in the Internet Properties dialog box. (The Trusted sites zone will only be shown if you have administrator privileges.)
