SixOrNot

Introduction

SixOrNot is a Firefox extension which makes it easy for you to identify when the website you're connecting to supports the current generation Internet Protocol (version 6). It also allows you to see a list of all the servers contacted to load a page, along with the IP address your browser connected to to do so. DNS information about each server is also available so that you can see if a site could potentially be loaded via IPv6 if your local connection supported it (or to identify when connections were performed via IPv4 when they shouldn't have been). Also shown is information about any proxy used for the connection, and whether Trusted Recursive Resolver (TRR) was used to query DNS.

The SixOrNot icon can be displayed via an address bar icon or a button (which may be placed wherever you like in the Firefox UI). The icon indicates whether the main domain of the site you are viewing supports IPv6 and whether your browser used IPv6 to connect to it. SixOrNot looks at each connection Firefox makes and notes whether it was made using IPv4 or IPv6, the information is then displayed via a handy tooltip.


Interface

The SixOrNot interface consists of an icon displayed either in the address bar or as a button. By default the address bar icon is disabled and the button is placed onto the navigation bar. You can move the button anywhere you like by entering the Firefox UI customisation mode and dragging it to the desired location. Whether accessed through the button or address bar icon the functionality is identical. Upon clicking the button/icon a tooltip panel is displayed which shows information about the site you are connecting to.

The main icon permits you to see at-a-glance whether the current site supports IPv6 and whether you are connecting to it via IPv6. See below for an explanation of each icon.

For each domain contacted to load the current page a listing appears on the panel. The main domain of the site is displayed in bold text. The first line for each host entry tells you which hosts (by IP address) were used to load the page. This may include resources loaded from the local browser cache. The remaining addresses are those retrieved from DNS records for the domain.

Subsequent entries in the list are for domains which additional resources have been loaded from, e.g. images from content delivery networks. Again, the first address is the actual connection, the rest are from DNS. You can click on the [+XX] link to expand DNS information for the secondary connections, and then click on the [ - ] link to hide them again. The number to the left of the domain indicates the total number of connections made to that domain while loading this page.

Each entry has a count of requests made, and may include additional informational icons as described below.


Icon meanings


 
This icon indicates that a proxy was used for the most recent connection to this host. On mouseover the tooltip gives information about the type of proxy used, as well as a warning if DNS lookups were disabled (see proxy section below).
 

This icon indicates that DNS resolution for this host made use of the Trusted Recursive Resolver mechanism - see https://wiki.mozilla.org/Trusted_Recursive_Resolver for more details.
 

This icon indicates that Firefox connected to this domain using IPv4 and only A (IPv4) records were returned for the domain. Either your DNS is not capable of returning AAAA records or (more likely) the domain in question supports only the legacy version of the Internet Protocol suite. Why not ask why they haven't upgraded yet?
 

This icon indicates that Firefox connected to this domain using IPv6 and both AAAA (IPv6) and A (IPv4) records were found for the domain in DNS. You should only ever see this icon if you have IPv6 connectivity on your machine.
 

This icon indicates that Firefox connected to this domain using IPv4 and both AAAA (IPv6) and A (IPv4) records were found for the current domain. While the remote domain does support IPv6 your browser did not use it to connect. Typically this means you do not have IPv6 connectivity on your machine, but even if you do sometimes IPv4 is used instead for connections.
 

This icon indicates that Firefox connected to this domain using IPv6 and only AAAA (IPv6) records were found for the domain in DNS. This generally means that the domain in question only supports IPv6. You should only ever see this icon if you have IPv6 connectivity on your machine.
 

This icon indicates that Firefox retrieved all objects in the current page from this domain from local cache (no external connections were made). Only A (IPv4) records were found for this domain in DNS, indicating that the domain is probably available only via IPv4.
 

This icon indicates that Firefox retrieved all objects in the current page from this domain from local cache (no external connections were made). Both AAAA (IPv6) and A (IPv4) records were found for this domain in DNS, indicating that the domain is IPv6 capable.
 

This icon indicates that Firefox retrieved all objects in the current page from this domain from local cache (no external connections were made). Only AAAA (IPv6) records were found for this domain in DNS, indicating that the domain is probably available only via IPv6.
 

This icon indicates that an HTTP/HTTPS proxy was used for this connection. With these types of proxies no information is available about the connection made to the host (since Firefox connects to the proxy which then forwards the request). For these types of proxy DNS lookups are also disabled to avoid leaking information about sites visited.
 

This icon indicates an error occurred for the domain in question.
 

This icon can mean a variety of things, generally it indicates that no IP address information exists for the current location or that there was a failure obtaining it. Try navigating to a website and ensuring you are not using a Proxy and that Offline mode isn't enabled.

Example


This screenshot shows a typical display for the SixOrNot panel where you are browsing using an IPv4-only connection. The main domain is www.mozilla.org, which was loaded from the local browser cache (with a total of 11 requests), and has only A (IPv4) records in DNS. The main app icon is the same as the main domain icon in the panel. Two additional hosts were contacted to render this page, www.googletagmanager.com (loaded from Cache, DNS retrieved using TRR, the DNS records are currently hidden - you can view them by clicking the [+2] text - the icon indicates that the domain has both A (IPv4) and AAAA (IPv6) DNS records). www.google-analytics.com was loaded partly from cache, and partly from the host via IP address 216.58.206.78 - with a total of 3 requests made. DNS results include A and AAAA records, with the IP addresses listed.

Something important to note is that on an IPv4-only connection sometimes DNS won't give you AAAA records for hosts. This is sytem/configuration dependant.


Another example, here all connections are made over IPv6.


IP Address Concepts

IP addresses are fundamental to the operation of the Internet, billions of people use millions of them every day and yet they are invisible in day-to-day use. Usually we don't need to care about IP addresses and in most cases one only becomes aware of them when something is broken. This is due to a system called DNS - the Domain Name System. This masks the technical complexity of addressing behind easy-to-remember domain names. When you visit a website behind the scenes the domain name of that website (everything between the "http://" and the first "/") is looked up via a DNS query to produce an IP address. These addresses are then used to determine how to communicate with the server responsible for serving that website.

There are currently two flavours of IP address around because the Internet is going through a migration period from the old way of addressing things (known as Internet Protocol version 4, or IPv4) to a new addressing system (known as Internet Protocol version 6, or IPv6). The main difference is the number of addresses available, though this is far from the most important difference. IPv4 addresses are represented as 32-bit numbers, the largest number which can be represented in this way is 2^32 (2 to the power of 32) or 4,294,967,296. That sounds like a lot but we are rapidly running out of them (and in practice we can't even use all of those). IPv6 addresses are represented by 128-bit numbers, the largest number which can be represented in this way is 2^128 (2 to the power of 128) or 340,282,366,920,938,463,463,374,607,431,768,211,456 (that's approximately 340 billion billion billion billion, or 3.4x10^38).

So why is there a problem? Adoption of the current IP addressing standard (IPv6) has been slow. Most traffic on the Internet still uses the legacy addressing scheme. At the time of writing less than 1% of all Internet traffic uses IPv6. Given the impending exhaustion of IPv4 addresses (at the time of writing the Asia-Pacific regional registry, APNIC, has already run out) this is a major problem facing the Internet community. The transition from IPv4 to IPv6 isn't an easy one and involves a lot of work, this is typically work which goes unnoticed to the end user. This is as it should be and for the vast majority of people IP addressing will continue to remain an invisible part of their Internet-using experience. The flip side of this invisibility however is that it's easy to overlook the pioneers who are already using IPv6 and raise awareness among those that are not. I am hopeful that by exposing the IP version being used as part of your web browsing this extension will help make it just a little bit more visible

.


Download

Add SixOrNot to your Firefox browser from: https://addons.mozilla.org/en-GB/firefox/addon/sixornot/


SixOrNot Licence

A reproduction of the SixOrNot Licence, for your convenience. This document is covered by the same licence.

Copyright © 2008-2019 Ashley Baldock. All Rights Reserved.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.

2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.

3. The name of the author may not be used to endorse or promote products derived from this software without specific prior written permission from the author.

4. Products derived from this software may not be called "SixOrNot" nor may "SixOrNot" appear in their names without specific prior written permission from the author.

THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.


ą
ss1.png
(34k)
Ashley Baldock,
Aug 21, 2019, 3:18 AM
ą
ss2.png
(68k)
Ashley Baldock,
Aug 21, 2019, 3:18 AM
Comments